public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/hardened-dev:uclibc commit in: app-arch/tar/files/, app-arch/tar/
@ 2013-11-28 19:27 Anthony G. Basile
  0 siblings, 0 replies; 2+ messages in thread
From: Anthony G. Basile @ 2013-11-28 19:27 UTC (permalink / raw
  To: gentoo-commits

commit:     bab4d804668603d12366ee3d0d5e295dbebf39b8
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 28 19:28:12 2013 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Thu Nov 28 19:28:12 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/hardened-dev.git;a=commit;h=bab4d804

app-arch/tar: use <sys/xattr.h> if available, fixex bug #489170

---
 app-arch/tar/files/rmt                       |   8 +
 app-arch/tar/files/tar-1.27.1-sys-attr.patch | 126 +++++++++
 app-arch/tar/files/tar.1-1.27                | 388 +++++++++++++++++++++++++++
 app-arch/tar/metadata.xml                    |  11 +
 app-arch/tar/tar-1.27.1-r99.ebuild           |  79 ++++++
 5 files changed, 612 insertions(+)

diff --git a/app-arch/tar/files/rmt b/app-arch/tar/files/rmt
new file mode 100644
index 0000000..15ed6aa
--- /dev/null
+++ b/app-arch/tar/files/rmt
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+# This is not a mistake.  This shell script (/etc/rmt) has been provided
+# for compatibility with other Unix-like systems, some of which have
+# utilities that expect to find (and execute) rmt in the /etc directory
+# on remote systems.
+#
+exec rmt "$@"

diff --git a/app-arch/tar/files/tar-1.27.1-sys-attr.patch b/app-arch/tar/files/tar-1.27.1-sys-attr.patch
new file mode 100644
index 0000000..d999fd9
--- /dev/null
+++ b/app-arch/tar/files/tar-1.27.1-sys-attr.patch
@@ -0,0 +1,126 @@
+From: Anthony G. Basile <blueness@gentoo.org>
+
+The build system searches for <attr/xattr.h> and doesn't bother
+looking to see if setxattr(), getxattr() and friends are provided
+by the system libc.  Worse, on successfully finding <attr/xattr.h>
+it then proceeds to include it but then links against libc for
+the *xattr() functions.
+
+This patch has the build system look for <sys/xattr.h> first and
+if it success, links against libc.  On failing to find <sys/xattr.h>,
+it then search for <attr/xattr.h> and links against libattr.so.  This
+can happen, for instance, on a uClibc system where UCLIBC_HAS_XATTR
+is not set, but libattr.so is present.  Then the *xattr() functions
+must be provided by libattr.so.
+
+X-Gentoo-Bug: 489170
+X-Gentoo-Bug-URL: https://bugs.gentoo.org/489170
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index d48c881..18cfd49 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -37,18 +37,40 @@ AC_DEFUN([TAR_HEADERS_ATTR_XATTR_H],
+     [], [with_xattrs=maybe]
+   )
+ 
+-  AC_CHECK_HEADERS([attr/xattr.h])
+-  AM_CONDITIONAL([TAR_COND_XATTR_H],[test "$ac_cv_header_attr_xattr_h" = yes])
+-  if test "$ac_cv_header_attr_xattr_h" = yes; then
++  # First check for <sys/xattr.h>
++  AC_CHECK_HEADERS([sys/xattr.h])
++  AM_CONDITIONAL([TAR_COND_XATTR_H],[test "$ac_cv_header_sys_xattr_h" = yes])
++  AM_CONDITIONAL([TAR_LIB_ATTR],[false])
++  if test "$ac_cv_header_sys_xattr_h" = yes; then
+     AC_CHECK_FUNCS(getxattr  fgetxattr  lgetxattr \
+                    setxattr  fsetxattr  lsetxattr \
+                    listxattr flistxattr llistxattr,
+         # only when functions are present
+-        AC_DEFINE([HAVE_ATTR_XATTR_H], [1],
+-                    [define to 1 if we have <attr/xattr.h> header])
++        AC_DEFINE([HAVE_SYS_XATTR_H], [1],
++                    [define to 1 if we have <sys/xattr.h> header])
+         if test "$with_xattrs" != no; then
+           AC_DEFINE([HAVE_XATTRS],,[Define when we have working linux xattrs.])
+         fi
+     )
+   fi
++
++  # If <sys/xattr.h> is not found, then check for <attr/xattr.h>
++  if test "$ac_cv_header_sys_xattr_h" != yes; then
++    AC_CHECK_HEADERS([attr/xattr.h])
++    AM_CONDITIONAL([TAR_COND_XATTR_H],[test "$ac_cv_header_attr_xattr_h" = yes])
++    AC_CHECK_LIB([attr],[fgetxattr])
++    AM_CONDITIONAL([TAR_LIB_ATTR],[test "$ac_cv_lib_attr_fgetxattr" = yes])
++    if test "$ac_cv_header_attr_xattr_h" = yes; then
++      AC_CHECK_FUNCS(getxattr  fgetxattr  lgetxattr \
++                     setxattr  fsetxattr  lsetxattr \
++                     listxattr flistxattr llistxattr,
++          # only when functions are present
++          AC_DEFINE([HAVE_ATTR_XATTR_H], [1],
++                      [define to 1 if we have <attr/xattr.h> header])
++          if test "$with_xattrs" != no; then
++            AC_DEFINE([HAVE_XATTRS],,[Define when we have working linux xattrs.])
++          fi
++      )
++    fi
++  fi
+ ])
+diff --git a/config.h.in b/config.h.in
+index 62023cf..c8d7c33 100644
+--- a/config.h.in
++++ b/config.h.in
+@@ -973,6 +973,9 @@
+ /* Define to 1 if you have the `lgetxattr' function. */
+ #undef HAVE_LGETXATTR
+ 
++/* Define to 1 if you have the `attr' library (-lattr). */
++#undef HAVE_LIBATTR
++
+ /* Define to 1 if you have the <libintl.h> header file. */
+ #undef HAVE_LIBINTL_H
+ 
+@@ -1977,6 +1980,9 @@
+ /* Define to 1 if you have the <sys/wait.h> header file. */
+ #undef HAVE_SYS_WAIT_H
+ 
++/* define to 1 if we have <sys/xattr.h> header */
++#undef HAVE_SYS_XATTR_H
++
+ /* Define if struct tm has the tm_gmtoff member. */
+ #undef HAVE_TM_GMTOFF
+ 
+diff --git a/lib/xattr-at.h b/lib/xattr-at.h
+index 2981771..1f517d0 100644
+--- a/lib/xattr-at.h
++++ b/lib/xattr-at.h
+@@ -20,7 +20,15 @@
+ #define XATTRS_AT_H
+ 
+ #include <sys/types.h>
+-#include <attr/xattr.h>
++#if defined(HAVE_SYS_XATTR_H)
++# include <sys/xattr.h>
++#elif defined(HAVE_ATTR_XATTR_H)
++# include <attr/xattr.h>
++#endif
++
++#ifndef ENOATTR
++# define ENOATTR ENODATA        /* No such attribute */
++#endif
+ 
+ /* These are the dir-fd-relative variants of the functions without the
+    "at" suffix.  For example, setxattrat (AT_FDCWD, path, name, value, size,
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 07c117d..d871256 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -50,4 +50,8 @@ AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
+ 
+ LDADD = ../lib/libtar.a ../gnu/libgnu.a $(LIBINTL) $(LIBICONV)
+ 
++if TAR_LIB_ATTR
++LIBADD = -lattr
++endif
++
+ tar_LDADD = $(LIBS) $(LDADD) $(LIB_CLOCK_GETTIME) $(LIB_EACCESS) $(LIB_SELINUX)

diff --git a/app-arch/tar/files/tar.1-1.27 b/app-arch/tar/files/tar.1-1.27
new file mode 100644
index 0000000..700b569
--- /dev/null
+++ b/app-arch/tar/files/tar.1-1.27
@@ -0,0 +1,388 @@
+.\" generated by script on Mon Oct 21 08:29:21 2013
+.Dd Oct 21, 2013
+.Dt TAR 1
+.Sh NAME
+.Nm tar
+.Nd The GNU version of the tar archiving utility
+.Sh SYNOPSIS
+.Nm tar
+.Oo Fl Oc Cm A Fl \-catenate \-concatenate Cm \||\| c Fl \-create Cm \||\| d Fl \-diff \-compare Cm \||\| Fl \-delete Cm \||\| r Fl \-append Cm \||\| t Fl \-list Cm \||\| Fl \-test\-label Cm \||\| u Fl \-update Cm \||\| x Fl \-extract \-get
+.Op Ar options
+.Op Ar pathname ...
+.Sh DESCRIPTION
+.Nm Tar
+stores and extracts files from a tape or disk archive.
+.Pp
+The first argument to
+tar
+should be a function; either one of the letters
+.Cm Acdrtux ,
+or one of the long function names.
+A function letter need not be prefixed with ``\-'', and may be combined
+with other single-letter options.
+A long function name must be prefixed with
+.Cm \\-\\- .
+Some options take a parameter; with the single-letter form
+these must be given as separate arguments.
+With the long form, they may be given by appending
+.Cm = Ns Ar value
+to the option.
+.Sh FUNCTION LETTERS
+Main operation mode:
+.Bl -tag -width flag
+.It Fl A , Fl \-catenate , Fl \-concatenate
+append tar files to an archive
+.It Fl c , Fl \-create
+create a new archive
+.It Fl d , Fl \-diff , Fl \-compare
+find differences between archive and file system
+.It Fl \-delete
+delete from the archive (not on mag tapes!)
+.It Fl r , Fl \-append
+append files to the end of an archive
+.It Fl t , Fl \-list
+list the contents of an archive
+.It Fl \-test\-label
+test the archive volume label and exit
+.It Fl u , Fl \-update
+only append files newer than copy in archive
+.It Fl x , Fl \-extract , Fl \-get
+extract files from an archive
+.El
+.Sh OTHER OPTIONS
+Operation modifiers:
+.Bl -tag -width flag
+.It \-[0\-7][lmh]
+specify drive and density
+.It Fl a , Fl \-auto\-compress
+use archive suffix to determine the compression program
+.It Fl \-acls
+Enable the POSIX ACLs support
+.It Fl \-no\-acls
+Disable the POSIX ACLs support
+.It Fl \-add\-file Ns \= Ns Ar FILE
+add given FILE to the archive (useful if its name starts with a dash)
+.It Fl \-anchored
+patterns match file name start
+.It Fl \-no\-anchored
+patterns match after any '/' (default for exclusion)
+.It Fl \-atime\-preserve
+preserve access times on dumped files, either by restoring the times
+.It Fl \-no\-auto\-compress
+do not use archive suffix to determine the compression program
+.It Fl b , Fl \-blocking\-factor Ar BLOCKS
+BLOCKS x 512 bytes per record
+.It Fl B , Fl \-read\-full\-records
+reblock as we read (for 4.2BSD pipes)
+.It Fl \-backup
+backup before removal, choose version CONTROL
+.It Fl C , Fl \-directory Ar DIR
+change to directory DIR
+.It Fl \-check\-device
+check device numbers when creating incremental archives (default)
+.It Fl \-no\-check\-device
+do not check device numbers when creating incremental archives
+.It Fl \-checkpoint
+display progress messages every NUMBERth record (default 10)
+.It Fl \-checkpoint\-action Ns \= Ns Ar ACTION
+execute ACTION on each checkpoint
+.It Fl \-delay\-directory\-restore
+delay setting modification times and permissions of extracted
+.It Fl \-no\-delay\-directory\-restore
+cancel the effect of --delay-directory-restore option
+.It Fl \-exclude Ns \= Ns Ar PATTERN
+exclude files, given as a PATTERN
+.It Fl \-exclude\-backups
+exclude backup and lock files
+.It Fl \-exclude\-caches
+exclude contents of directories containing CACHEDIR.TAG, 
+.It Fl \-exclude\-caches\-all
+exclude directories containing CACHEDIR.TAG
+.It Fl \-exclude\-caches\-under
+exclude everything under directories containing CACHEDIR.TAG
+.It Fl \-exclude\-tag Ns \= Ns Ar FILE
+exclude contents of directories containing FILE, except
+.It Fl \-exclude\-tag\-all Ns \= Ns Ar FILE
+exclude directories containing FILE
+.It Fl \-exclude\-tag\-under Ns \= Ns Ar FILE
+exclude everything under directories containing FILE
+.It Fl \-exclude\-vcs
+exclude version control system directories
+.It Fl f , Fl \-file Ar ARCHIVE
+use archive file or device ARCHIVE
+.It Fl F , Fl \-info\-script , Fl \-new\-volume\-script Ar NAME
+run script at end of each tape (implies -M)
+.It Fl \-force\-local
+archive file is local even if it has a colon
+.It Fl \-full\-time
+print file time to its full resolution
+.It Fl g , Fl \-listed\-incremental Ar FILE
+handle new GNU-format incremental backup
+.It Fl G , Fl \-incremental
+handle old GNU-format incremental backup
+.It Fl \-group Ns \= Ns Ar NAME
+force NAME as group for added files
+.It Fl h , Fl \-dereference
+follow symlinks; archive and dump the files they point to
+.It Fl H , Fl \-format Ar FORMAT
+create archive of the given formatFORMAT is one of the following:
+.Bl -tag -width flag
+.It Fl \-format=gnu
+GNU tar 1.13.x format
+.It Fl \-format=oldgnu
+GNU format as per tar <= 1.12
+.It Fl \-format=pax
+POSIX 1003.1-2001 (pax) format
+.It Fl \-format=posix
+same as pax
+.It Fl \-format=ustar
+POSIX 1003.1-1988 (ustar) format
+.It Fl \-format=v7
+old V7 tar format
+.El
+.It Fl \-hard\-dereference
+follow hard links; archive and dump the files they refer to
+.It Fl i , Fl \-ignore\-zeros
+ignore zeroed blocks in archive (means EOF)
+.It Fl I , Fl \-use\-compress\-program Ar PROG
+filter through PROG (must accept -d)
+.It Fl \-ignore\-case
+ignore case
+.It Fl \-no\-ignore\-case
+case sensitive matching (default)
+.It Fl \-ignore\-command\-error
+ignore exit codes of children
+.It Fl \-no\-ignore\-command\-error
+treat non-zero exit codes of children as error
+.It Fl \-ignore\-failed\-read
+do not exit with nonzero on unreadable files
+.It Fl \-index\-file Ns \= Ns Ar FILE
+send verbose output to FILE
+.It Fl j , Fl \-bzip2
+
+.It Fl J , Fl \-xz
+
+.It Fl k , Fl \-keep\-old\-files
+don't replace existing files when extracting, 
+.It Fl K , Fl \-starting\-file Ar MEMBER-NAME
+begin at member MEMBER-NAME when reading the archive
+.It Fl \-keep\-directory\-symlink
+preserve existing symlinks to directories when extracting
+.It Fl \-keep\-newer\-files
+don't replace existing files that are newer than their archive copies
+.It Fl l , Fl \-check\-links
+print a message if not all links are dumped
+.It Fl L , Fl \-tape\-length Ar NUMBER
+change tape after writing NUMBER x 1024 bytes
+.It Fl \-level Ns \= Ns Ar NUMBER
+dump level for created listed-incremental archive
+.It Fl \-lzip
+
+.It Fl \-lzma
+
+.It Fl \-lzop
+
+.It Fl m , Fl \-touch
+don't extract file modified time
+.It Fl M , Fl \-multi\-volume
+create/list/extract multi-volume archive
+.It Fl \-mode Ns \= Ns Ar CHANGES
+force (symbolic) mode CHANGES for added files
+.It Fl \-mtime Ns \= Ns Ar DATE-OR-FILE
+set mtime for added files from DATE-OR-FILE
+.It Fl n , Fl \-seek
+archive is seekable
+.It Fl N , Fl \-newer , Fl \-after\-date Ar DATE-OR-FILE
+only store files newer than DATE-OR-FILE
+.It Fl \-newer\-mtime Ns \= Ns Ar DATE
+compare date and time when data changed only
+.It Fl \-null
+-T reads null-terminated names, disable -C
+.It Fl \-no\-null
+disable the effect of the previous --null option
+.It Fl \-numeric\-owner
+always use numbers for user/group names
+.It Fl O , Fl \-to\-stdout
+extract files to standard output
+.It Fl \-occurrence
+process only the NUMBERth occurrence of each file in the archive;
+.It Fl \-old\-archive , Fl \-portability
+same as --format=v7
+.It Fl \-one\-file\-system
+stay in local file system when creating archive
+.It Fl \-overwrite
+overwrite existing files when extracting
+.It Fl \-overwrite\-dir
+overwrite metadata of existing directories when extracting (default)
+.It Fl \-no\-overwrite\-dir
+preserve metadata of existing directories
+.It Fl \-owner Ns \= Ns Ar NAME
+force NAME as owner for added files
+.It Fl p , Fl \-preserve\-permissions , Fl \-same\-permissions
+extract information about file permissions (default for superuser)
+.It Fl P , Fl \-absolute\-names
+don't strip leading '/'s from file names
+.It Fl \-pax\-option Ns \= Ns Ar keyword[[:]=value][,keyword[[:]=value]]...
+control pax keywords
+.It Fl \-posix
+same as --format=posix
+.It Fl \-preserve
+same as both -p and -s
+.It Fl \-quote\-chars Ns \= Ns Ar STRING
+additionally quote characters from STRING
+.It Fl \-no\-quote\-chars Ns \= Ns Ar STRING
+disable quoting for characters from STRING
+.It Fl \-quoting\-style Ns \= Ns Ar STYLE
+set name quoting style; see below for valid STYLE values
+.It Fl R , Fl \-block\-number
+show block number within archive with each message
+.It Fl \-record\-size Ns \= Ns Ar NUMBER
+NUMBER of bytes per record, multiple of 512
+.It Fl \-recursion
+recurse into directories (default)
+.It Fl \-no\-recursion
+avoid descending automatically in directories
+.It Fl \-recursive\-unlink
+empty hierarchies prior to extracting directory
+.It Fl \-remove\-files
+remove files after adding them to the archive
+.It Fl \-restrict
+disable use of some potentially harmful options
+.It Fl \-rmt\-command Ns \= Ns Ar COMMAND
+use given rmt COMMAND instead of rmt
+.It Fl \-rsh\-command Ns \= Ns Ar COMMAND
+use remote COMMAND instead of rsh
+.It Fl s , Fl \-preserve\-order , Fl \-same\-order
+member arguments are listed in the same order as the 
+.It Fl S , Fl \-sparse
+handle sparse files efficiently
+.It Fl \-same\-owner
+try extracting files with the same ownership as exists in the archive (default for superuser)
+.It Fl \-no\-same\-owner
+extract files as yourself (default for ordinary users)
+.It Fl \-no\-same\-permissions
+apply the user's umask when extracting permissions from the archive (default for ordinary users)
+.It Fl \-no\-seek
+archive is not seekable
+.It Fl \-selinux
+Enable the SELinux context support
+.It Fl \-no\-selinux
+Disable the SELinux context support
+.It Fl \-show\-defaults
+show tar defaults
+.It Fl \-show\-omitted\-dirs
+when listing or extracting, list each directory that does not match search criteria
+.It Fl \-show\-snapshot\-field\-ranges
+show valid ranges for snapshot-file fields
+.It Fl \-show\-transformed\-names , Fl \-show\-stored\-names
+show file or archive names after transformation
+.It Fl \-skip\-old\-files
+don't replace existing files when extracting, silently skip over them
+.It Fl \-sparse\-version Ns \= Ns Ar MAJOR[.MINOR]
+set version of the sparse format to use (implies --sparse)
+.It Fl \-strip\-components Ns \= Ns Ar NUMBER
+strip NUMBER leading components from file names on extraction
+.It Fl \-suffix Ns \= Ns Ar STRING
+backup before removal, override usual suffix ('~' unless overridden by environment variable SIMPLE_BACKUP_SUFFIX)
+.It Fl T , Fl \-files\-from Ar FILE
+get names to extract or create from FILE
+.It Fl \-to\-command Ns \= Ns Ar COMMAND
+pipe extracted files to another program
+.It Fl \-totals
+print total bytes after processing the archive; 
+.It Fl \-transform , Fl \-xform Ar EXPRESSION
+use sed replace EXPRESSION to transform file names
+.It Fl U , Fl \-unlink\-first
+remove each file prior to extracting over it
+.It Fl \-unquote
+unquote filenames read with -T (default)
+.It Fl \-no\-unquote
+do not unquote filenames read with -T
+.It Fl \-utc
+print file modification times in UTC
+.It Fl v , Fl \-verbose
+verbosely list files processed
+.It Fl V , Fl \-label Ar TEXT
+create archive with volume name TEXT; at list/extract time, use TEXT as a globbing pattern for volume name
+.It Fl \-volno\-file Ns \= Ns Ar FILE
+use/update the volume number in FILE
+.It Fl w , Fl \-interactive , Fl \-confirmation
+ask for confirmation for every action
+.It Fl W , Fl \-verify
+attempt to verify the archive after writing it
+.It Fl \-warning Ns \= Ns Ar KEYWORD
+warning control
+.It Fl \-wildcards
+use wildcards (default for exclusion)
+.It Fl \-wildcards\-match\-slash
+wildcards match '/' (default for exclusion)
+.It Fl \-no\-wildcards\-match\-slash
+wildcards do not match '/'
+.It Fl \-no\-wildcards
+verbatim string matching
+.It Fl X , Fl \-exclude\-from Ar FILE
+exclude patterns listed in FILE
+.It Fl \-xattrs
+Enable extended attributes support
+.It Fl \-xattrs\-exclude Ns \= Ns Ar MASK
+specify the exclude pattern for xattr keys
+.It Fl \-xattrs\-include Ns \= Ns Ar MASK
+specify the include pattern for xattr keys
+.It Fl \-no\-xattrs
+Disable extended attributes support
+.It Fl z , Fl \-gzip , Fl \-gunzip Fl \-ungzip
+
+.It Fl Z , Fl \-compress , Fl \-uncompress
+
+.El
+.Sh ENVIRONMENT
+The behavior of tar is controlled by the following environment variables,
+among others:
+.Bl -tag -width Ds
+.It Ev SIMPLE_BACKUP_SUFFIX
+Backup prefix to use when extracting, if
+.Fl \-suffix
+is not specified.
+The backup suffix defaults to `~' if neither is specified.
+.It Ev TAR_OPTIONS
+Options to prepend to those specified on the command line, separated by
+whitespace.  Embedded backslashes may be used to escape whitespace or
+backslashes within an option.
+.It Ev TAPE
+Device or file to use for the archive if 
+.Fl \-file
+is not specified.
+If this environment variable is unset, use stdin or stdout instead.
+.El
+.Sh EXAMPLES
+Create archive.tar from files foo and bar.
+.Bd -literal -offset indent -compact
+tar \-cf archive.tar foo bar
+.Ed
+List all files in archive.tar verbosely.
+.Bd -literal -offset indent -compact
+tar \-tvf archive.tar
+.Ed
+Extract all files from archive.tar.
+.Bd -literal -offset indent -compact
+tar \-xf archive.tar
+.Ed
+.Sh SEE ALSO
+.\" libarchive
+.Xr tar 5 ,
+.\" man-pages
+.Xr symlink 7 ,
+.Xr rmt 8
+.Sh HISTORY
+The
+.Nm tar
+command appeared in
+.At v7 .
+.Sh BUGS
+The GNU folks, in general, abhor man pages, and create info documents instead.
+Unfortunately, the info document describing tar is licensed under the GFDL with
+invariant cover texts, which makes it impossible to include any text
+from that document in this man page.
+Most of the text in this document was automatically extracted from the usage
+text in the source.
+It may not completely describe all features of the program.

diff --git a/app-arch/tar/metadata.xml b/app-arch/tar/metadata.xml
new file mode 100644
index 0000000..f8de3a9
--- /dev/null
+++ b/app-arch/tar/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>base-system</herd>
+<use>
+	<flag name='minimal'>just install `tar`</flag>
+</use>
+<upstream>
+	<remote-id type="cpe">cpe:/a:gnu:tar</remote-id>
+</upstream>
+</pkgmetadata>

diff --git a/app-arch/tar/tar-1.27.1-r99.ebuild b/app-arch/tar/tar-1.27.1-r99.ebuild
new file mode 100644
index 0000000..c8a8853
--- /dev/null
+++ b/app-arch/tar/tar-1.27.1-r99.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/tar/tar-1.27.1.ebuild,v 1.1 2013/11/25 12:20:59 polynomial-c Exp $
+
+EAPI="5"
+
+inherit autotools flag-o-matic eutils
+
+DESCRIPTION="Use this to make tarballs :)"
+HOMEPAGE="http://www.gnu.org/software/tar/"
+SRC_URI="mirror://gnu/tar/${P}.tar.bz2
+	mirror://gnu-alpha/tar/${P}.tar.bz2"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="acl minimal nls selinux static userland_GNU xattr"
+
+RDEPEND="acl? ( virtual/acl )
+	selinux? ( sys-libs/libselinux )"
+DEPEND="${RDEPEND}
+	nls? ( >=sys-devel/gettext-0.10.35 )
+	xattr? ( sys-apps/attr )"
+
+src_prepare() {
+	epatch "${FILESDIR}"/${P}-sys-attr.patch
+	eautoreconf
+
+	if ! use userland_GNU ; then
+		sed -i \
+			-e 's:/backup\.sh:/gbackup.sh:' \
+			scripts/{backup,dump-remind,restore}.in \
+			|| die "sed non-GNU"
+	fi
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	FORCE_UNSAFE_CONFIGURE=1 \
+	econf \
+		--enable-backup-scripts \
+		--bindir="${EPREFIX}"/bin \
+		--libexecdir="${EPREFIX}"/usr/sbin \
+		$(usex userland_GNU "" "--program-prefix=g") \
+		$(use_with acl posix-acls) \
+		$(use_enable nls) \
+		$(use_with selinux) \
+		$(use_with xattr xattrs)
+}
+
+src_install() {
+	emake DESTDIR="${D}" install || die
+
+	local p=$(usex userland_GNU "" "g")
+	if [[ -z ${p} ]] ; then
+		# a nasty yet required piece of baggage
+		exeinto /etc
+		doexe "${FILESDIR}"/rmt || die
+	fi
+
+	# autoconf looks for gtar before tar (in configure scripts), hence
+	# in Prefix it is important that it is there, otherwise, a gtar from
+	# the host system (FreeBSD, Solaris, Darwin) will be found instead
+	# of the Prefix provided (GNU) tar
+	if use prefix ; then
+		dosym tar /bin/gtar
+	fi
+
+	dodoc AUTHORS ChangeLog* NEWS README* THANKS
+	newman "${FILESDIR}"/tar.1-1.27 ${p}tar.1
+	mv "${ED}"/usr/sbin/${p}backup{,-tar}
+	mv "${ED}"/usr/sbin/${p}restore{,-tar}
+
+	if use minimal ; then
+		find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
+			-type f -a '!' '(' -name tar -o -name ${p}tar ')' \
+			-delete
+	fi
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread
* [gentoo-commits] proj/hardened-dev:uclibc commit in: app-arch/tar/files/, app-arch/tar/
@ 2014-10-21  3:04 Anthony G. Basile
  0 siblings, 0 replies; 2+ messages in thread
From: Anthony G. Basile @ 2014-10-21  3:04 UTC (permalink / raw
  To: gentoo-commits

commit:     2aa5ea55af675cd6b860e178d818e85fc69d2ff2
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 21 03:05:20 2014 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Tue Oct 21 03:05:20 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/hardened-dev.git;a=commit;h=2aa5ea55

app-arch/tar: in tree version works

---
 app-arch/tar/files/rmt                       |   8 -
 app-arch/tar/files/tar-1.27.1-sys-attr.patch | 125 ---------
 app-arch/tar/files/tar.1-1.27                | 388 ---------------------------
 app-arch/tar/metadata.xml                    |  11 -
 app-arch/tar/tar-1.27.1-r99.ebuild           |  78 ------
 5 files changed, 610 deletions(-)

diff --git a/app-arch/tar/files/rmt b/app-arch/tar/files/rmt
deleted file mode 100644
index 15ed6aa..0000000
--- a/app-arch/tar/files/rmt
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-#
-# This is not a mistake.  This shell script (/etc/rmt) has been provided
-# for compatibility with other Unix-like systems, some of which have
-# utilities that expect to find (and execute) rmt in the /etc directory
-# on remote systems.
-#
-exec rmt "$@"

diff --git a/app-arch/tar/files/tar-1.27.1-sys-attr.patch b/app-arch/tar/files/tar-1.27.1-sys-attr.patch
deleted file mode 100644
index 9b96296..0000000
--- a/app-arch/tar/files/tar-1.27.1-sys-attr.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From: Anthony G. Basile <blueness@gentoo.org>
-
-The build system searches for <attr/xattr.h> and doesn't bother
-looking to see if setxattr(), getxattr() and friends are provided
-by the system libc.  Worse, on successfully finding <attr/xattr.h>
-it then proceeds to include it but then links against libc for
-the *xattr() functions.
-
-This patch has the build system look for <sys/xattr.h> first and
-if it success, links against libc.  On failing to find <sys/xattr.h>,
-it then search for <attr/xattr.h> and links against libattr.so.  This
-can happen, for instance, on a uClibc system where UCLIBC_HAS_XATTR
-is not set, but libattr.so is present.  Then the *xattr() functions
-must be provided by libattr.so.
-
-X-Gentoo-Bug: 489170
-X-Gentoo-Bug-URL: https://bugs.gentoo.org/489170
-
-diff --git a/acinclude.m4 b/acinclude.m4
-index d48c881..18cfd49 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -37,18 +37,40 @@ AC_DEFUN([TAR_HEADERS_ATTR_XATTR_H],
-     [], [with_xattrs=maybe]
-   )
- 
--  AC_CHECK_HEADERS([attr/xattr.h])
--  AM_CONDITIONAL([TAR_COND_XATTR_H],[test "$ac_cv_header_attr_xattr_h" = yes])
--  if test "$ac_cv_header_attr_xattr_h" = yes; then
-+  # First check for <sys/xattr.h>
-+  AC_CHECK_HEADERS([sys/xattr.h])
-+  AM_CONDITIONAL([TAR_COND_XATTR_H],[test "$ac_cv_header_sys_xattr_h" = yes])
-+  AM_CONDITIONAL([TAR_LIB_ATTR],[false])
-+  if test "$ac_cv_header_sys_xattr_h" = yes; then
-     AC_CHECK_FUNCS(getxattr  fgetxattr  lgetxattr \
-                    setxattr  fsetxattr  lsetxattr \
-                    listxattr flistxattr llistxattr,
-         # only when functions are present
--        AC_DEFINE([HAVE_ATTR_XATTR_H], [1],
--                    [define to 1 if we have <attr/xattr.h> header])
-+        AC_DEFINE([HAVE_SYS_XATTR_H], [1],
-+                    [define to 1 if we have <sys/xattr.h> header])
-         if test "$with_xattrs" != no; then
-           AC_DEFINE([HAVE_XATTRS],,[Define when we have working linux xattrs.])
-         fi
-     )
-   fi
-+
-+  # If <sys/xattr.h> is not found, then check for <attr/xattr.h>
-+  if test "$ac_cv_header_sys_xattr_h" != yes; then
-+    AC_CHECK_HEADERS([attr/xattr.h])
-+    AM_CONDITIONAL([TAR_COND_XATTR_H],[test "$ac_cv_header_attr_xattr_h" = yes])
-+    AC_CHECK_LIB([attr],[fgetxattr])
-+    AM_CONDITIONAL([TAR_LIB_ATTR],[test "$ac_cv_lib_attr_fgetxattr" = yes])
-+    if test "$ac_cv_header_attr_xattr_h" = yes; then
-+      AC_CHECK_FUNCS(getxattr  fgetxattr  lgetxattr \
-+                     setxattr  fsetxattr  lsetxattr \
-+                     listxattr flistxattr llistxattr,
-+          # only when functions are present
-+          AC_DEFINE([HAVE_ATTR_XATTR_H], [1],
-+                      [define to 1 if we have <attr/xattr.h> header])
-+          if test "$with_xattrs" != no; then
-+            AC_DEFINE([HAVE_XATTRS],,[Define when we have working linux xattrs.])
-+          fi
-+      )
-+    fi
-+  fi
- ])
-diff --git a/config.h.in b/config.h.in
-index 62023cf..c8d7c33 100644
---- a/config.h.in
-+++ b/config.h.in
-@@ -973,6 +973,9 @@
- /* Define to 1 if you have the `lgetxattr' function. */
- #undef HAVE_LGETXATTR
- 
-+/* Define to 1 if you have the `attr' library (-lattr). */
-+#undef HAVE_LIBATTR
-+
- /* Define to 1 if you have the <libintl.h> header file. */
- #undef HAVE_LIBINTL_H
- 
-@@ -1977,6 +1980,9 @@
- /* Define to 1 if you have the <sys/wait.h> header file. */
- #undef HAVE_SYS_WAIT_H
- 
-+/* define to 1 if we have <sys/xattr.h> header */
-+#undef HAVE_SYS_XATTR_H
-+
- /* Define if struct tm has the tm_gmtoff member. */
- #undef HAVE_TM_GMTOFF
- 
-diff --git a/lib/xattr-at.h b/lib/xattr-at.h
-index 2981771..1f517d0 100644
---- a/lib/xattr-at.h
-+++ b/lib/xattr-at.h
-@@ -20,7 +20,15 @@
- #define XATTRS_AT_H
- 
- #include <sys/types.h>
--#include <attr/xattr.h>
-+#if defined(HAVE_SYS_XATTR_H)
-+# include <sys/xattr.h>
-+#elif defined(HAVE_ATTR_XATTR_H)
-+# include <attr/xattr.h>
-+#endif
-+
-+#ifndef ENOATTR
-+# define ENOATTR ENODATA        /* No such attribute */
-+#endif
- 
- /* These are the dir-fd-relative variants of the functions without the
-    "at" suffix.  For example, setxattrat (AT_FDCWD, path, name, value, size,
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 07c117d..d871256 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -51,3 +51,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
- LDADD = ../lib/libtar.a ../gnu/libgnu.a $(LIBINTL) $(LIBICONV)
- 
- tar_LDADD = $(LIBS) $(LDADD) $(LIB_CLOCK_GETTIME) $(LIB_EACCESS) $(LIB_SELINUX)
-+
-+if TAR_LIB_ATTR
-+tar_LDADD += -lattr
-+endif

diff --git a/app-arch/tar/files/tar.1-1.27 b/app-arch/tar/files/tar.1-1.27
deleted file mode 100644
index 700b569..0000000
--- a/app-arch/tar/files/tar.1-1.27
+++ /dev/null
@@ -1,388 +0,0 @@
-.\" generated by script on Mon Oct 21 08:29:21 2013
-.Dd Oct 21, 2013
-.Dt TAR 1
-.Sh NAME
-.Nm tar
-.Nd The GNU version of the tar archiving utility
-.Sh SYNOPSIS
-.Nm tar
-.Oo Fl Oc Cm A Fl \-catenate \-concatenate Cm \||\| c Fl \-create Cm \||\| d Fl \-diff \-compare Cm \||\| Fl \-delete Cm \||\| r Fl \-append Cm \||\| t Fl \-list Cm \||\| Fl \-test\-label Cm \||\| u Fl \-update Cm \||\| x Fl \-extract \-get
-.Op Ar options
-.Op Ar pathname ...
-.Sh DESCRIPTION
-.Nm Tar
-stores and extracts files from a tape or disk archive.
-.Pp
-The first argument to
-tar
-should be a function; either one of the letters
-.Cm Acdrtux ,
-or one of the long function names.
-A function letter need not be prefixed with ``\-'', and may be combined
-with other single-letter options.
-A long function name must be prefixed with
-.Cm \\-\\- .
-Some options take a parameter; with the single-letter form
-these must be given as separate arguments.
-With the long form, they may be given by appending
-.Cm = Ns Ar value
-to the option.
-.Sh FUNCTION LETTERS
-Main operation mode:
-.Bl -tag -width flag
-.It Fl A , Fl \-catenate , Fl \-concatenate
-append tar files to an archive
-.It Fl c , Fl \-create
-create a new archive
-.It Fl d , Fl \-diff , Fl \-compare
-find differences between archive and file system
-.It Fl \-delete
-delete from the archive (not on mag tapes!)
-.It Fl r , Fl \-append
-append files to the end of an archive
-.It Fl t , Fl \-list
-list the contents of an archive
-.It Fl \-test\-label
-test the archive volume label and exit
-.It Fl u , Fl \-update
-only append files newer than copy in archive
-.It Fl x , Fl \-extract , Fl \-get
-extract files from an archive
-.El
-.Sh OTHER OPTIONS
-Operation modifiers:
-.Bl -tag -width flag
-.It \-[0\-7][lmh]
-specify drive and density
-.It Fl a , Fl \-auto\-compress
-use archive suffix to determine the compression program
-.It Fl \-acls
-Enable the POSIX ACLs support
-.It Fl \-no\-acls
-Disable the POSIX ACLs support
-.It Fl \-add\-file Ns \= Ns Ar FILE
-add given FILE to the archive (useful if its name starts with a dash)
-.It Fl \-anchored
-patterns match file name start
-.It Fl \-no\-anchored
-patterns match after any '/' (default for exclusion)
-.It Fl \-atime\-preserve
-preserve access times on dumped files, either by restoring the times
-.It Fl \-no\-auto\-compress
-do not use archive suffix to determine the compression program
-.It Fl b , Fl \-blocking\-factor Ar BLOCKS
-BLOCKS x 512 bytes per record
-.It Fl B , Fl \-read\-full\-records
-reblock as we read (for 4.2BSD pipes)
-.It Fl \-backup
-backup before removal, choose version CONTROL
-.It Fl C , Fl \-directory Ar DIR
-change to directory DIR
-.It Fl \-check\-device
-check device numbers when creating incremental archives (default)
-.It Fl \-no\-check\-device
-do not check device numbers when creating incremental archives
-.It Fl \-checkpoint
-display progress messages every NUMBERth record (default 10)
-.It Fl \-checkpoint\-action Ns \= Ns Ar ACTION
-execute ACTION on each checkpoint
-.It Fl \-delay\-directory\-restore
-delay setting modification times and permissions of extracted
-.It Fl \-no\-delay\-directory\-restore
-cancel the effect of --delay-directory-restore option
-.It Fl \-exclude Ns \= Ns Ar PATTERN
-exclude files, given as a PATTERN
-.It Fl \-exclude\-backups
-exclude backup and lock files
-.It Fl \-exclude\-caches
-exclude contents of directories containing CACHEDIR.TAG, 
-.It Fl \-exclude\-caches\-all
-exclude directories containing CACHEDIR.TAG
-.It Fl \-exclude\-caches\-under
-exclude everything under directories containing CACHEDIR.TAG
-.It Fl \-exclude\-tag Ns \= Ns Ar FILE
-exclude contents of directories containing FILE, except
-.It Fl \-exclude\-tag\-all Ns \= Ns Ar FILE
-exclude directories containing FILE
-.It Fl \-exclude\-tag\-under Ns \= Ns Ar FILE
-exclude everything under directories containing FILE
-.It Fl \-exclude\-vcs
-exclude version control system directories
-.It Fl f , Fl \-file Ar ARCHIVE
-use archive file or device ARCHIVE
-.It Fl F , Fl \-info\-script , Fl \-new\-volume\-script Ar NAME
-run script at end of each tape (implies -M)
-.It Fl \-force\-local
-archive file is local even if it has a colon
-.It Fl \-full\-time
-print file time to its full resolution
-.It Fl g , Fl \-listed\-incremental Ar FILE
-handle new GNU-format incremental backup
-.It Fl G , Fl \-incremental
-handle old GNU-format incremental backup
-.It Fl \-group Ns \= Ns Ar NAME
-force NAME as group for added files
-.It Fl h , Fl \-dereference
-follow symlinks; archive and dump the files they point to
-.It Fl H , Fl \-format Ar FORMAT
-create archive of the given formatFORMAT is one of the following:
-.Bl -tag -width flag
-.It Fl \-format=gnu
-GNU tar 1.13.x format
-.It Fl \-format=oldgnu
-GNU format as per tar <= 1.12
-.It Fl \-format=pax
-POSIX 1003.1-2001 (pax) format
-.It Fl \-format=posix
-same as pax
-.It Fl \-format=ustar
-POSIX 1003.1-1988 (ustar) format
-.It Fl \-format=v7
-old V7 tar format
-.El
-.It Fl \-hard\-dereference
-follow hard links; archive and dump the files they refer to
-.It Fl i , Fl \-ignore\-zeros
-ignore zeroed blocks in archive (means EOF)
-.It Fl I , Fl \-use\-compress\-program Ar PROG
-filter through PROG (must accept -d)
-.It Fl \-ignore\-case
-ignore case
-.It Fl \-no\-ignore\-case
-case sensitive matching (default)
-.It Fl \-ignore\-command\-error
-ignore exit codes of children
-.It Fl \-no\-ignore\-command\-error
-treat non-zero exit codes of children as error
-.It Fl \-ignore\-failed\-read
-do not exit with nonzero on unreadable files
-.It Fl \-index\-file Ns \= Ns Ar FILE
-send verbose output to FILE
-.It Fl j , Fl \-bzip2
-
-.It Fl J , Fl \-xz
-
-.It Fl k , Fl \-keep\-old\-files
-don't replace existing files when extracting, 
-.It Fl K , Fl \-starting\-file Ar MEMBER-NAME
-begin at member MEMBER-NAME when reading the archive
-.It Fl \-keep\-directory\-symlink
-preserve existing symlinks to directories when extracting
-.It Fl \-keep\-newer\-files
-don't replace existing files that are newer than their archive copies
-.It Fl l , Fl \-check\-links
-print a message if not all links are dumped
-.It Fl L , Fl \-tape\-length Ar NUMBER
-change tape after writing NUMBER x 1024 bytes
-.It Fl \-level Ns \= Ns Ar NUMBER
-dump level for created listed-incremental archive
-.It Fl \-lzip
-
-.It Fl \-lzma
-
-.It Fl \-lzop
-
-.It Fl m , Fl \-touch
-don't extract file modified time
-.It Fl M , Fl \-multi\-volume
-create/list/extract multi-volume archive
-.It Fl \-mode Ns \= Ns Ar CHANGES
-force (symbolic) mode CHANGES for added files
-.It Fl \-mtime Ns \= Ns Ar DATE-OR-FILE
-set mtime for added files from DATE-OR-FILE
-.It Fl n , Fl \-seek
-archive is seekable
-.It Fl N , Fl \-newer , Fl \-after\-date Ar DATE-OR-FILE
-only store files newer than DATE-OR-FILE
-.It Fl \-newer\-mtime Ns \= Ns Ar DATE
-compare date and time when data changed only
-.It Fl \-null
--T reads null-terminated names, disable -C
-.It Fl \-no\-null
-disable the effect of the previous --null option
-.It Fl \-numeric\-owner
-always use numbers for user/group names
-.It Fl O , Fl \-to\-stdout
-extract files to standard output
-.It Fl \-occurrence
-process only the NUMBERth occurrence of each file in the archive;
-.It Fl \-old\-archive , Fl \-portability
-same as --format=v7
-.It Fl \-one\-file\-system
-stay in local file system when creating archive
-.It Fl \-overwrite
-overwrite existing files when extracting
-.It Fl \-overwrite\-dir
-overwrite metadata of existing directories when extracting (default)
-.It Fl \-no\-overwrite\-dir
-preserve metadata of existing directories
-.It Fl \-owner Ns \= Ns Ar NAME
-force NAME as owner for added files
-.It Fl p , Fl \-preserve\-permissions , Fl \-same\-permissions
-extract information about file permissions (default for superuser)
-.It Fl P , Fl \-absolute\-names
-don't strip leading '/'s from file names
-.It Fl \-pax\-option Ns \= Ns Ar keyword[[:]=value][,keyword[[:]=value]]...
-control pax keywords
-.It Fl \-posix
-same as --format=posix
-.It Fl \-preserve
-same as both -p and -s
-.It Fl \-quote\-chars Ns \= Ns Ar STRING
-additionally quote characters from STRING
-.It Fl \-no\-quote\-chars Ns \= Ns Ar STRING
-disable quoting for characters from STRING
-.It Fl \-quoting\-style Ns \= Ns Ar STYLE
-set name quoting style; see below for valid STYLE values
-.It Fl R , Fl \-block\-number
-show block number within archive with each message
-.It Fl \-record\-size Ns \= Ns Ar NUMBER
-NUMBER of bytes per record, multiple of 512
-.It Fl \-recursion
-recurse into directories (default)
-.It Fl \-no\-recursion
-avoid descending automatically in directories
-.It Fl \-recursive\-unlink
-empty hierarchies prior to extracting directory
-.It Fl \-remove\-files
-remove files after adding them to the archive
-.It Fl \-restrict
-disable use of some potentially harmful options
-.It Fl \-rmt\-command Ns \= Ns Ar COMMAND
-use given rmt COMMAND instead of rmt
-.It Fl \-rsh\-command Ns \= Ns Ar COMMAND
-use remote COMMAND instead of rsh
-.It Fl s , Fl \-preserve\-order , Fl \-same\-order
-member arguments are listed in the same order as the 
-.It Fl S , Fl \-sparse
-handle sparse files efficiently
-.It Fl \-same\-owner
-try extracting files with the same ownership as exists in the archive (default for superuser)
-.It Fl \-no\-same\-owner
-extract files as yourself (default for ordinary users)
-.It Fl \-no\-same\-permissions
-apply the user's umask when extracting permissions from the archive (default for ordinary users)
-.It Fl \-no\-seek
-archive is not seekable
-.It Fl \-selinux
-Enable the SELinux context support
-.It Fl \-no\-selinux
-Disable the SELinux context support
-.It Fl \-show\-defaults
-show tar defaults
-.It Fl \-show\-omitted\-dirs
-when listing or extracting, list each directory that does not match search criteria
-.It Fl \-show\-snapshot\-field\-ranges
-show valid ranges for snapshot-file fields
-.It Fl \-show\-transformed\-names , Fl \-show\-stored\-names
-show file or archive names after transformation
-.It Fl \-skip\-old\-files
-don't replace existing files when extracting, silently skip over them
-.It Fl \-sparse\-version Ns \= Ns Ar MAJOR[.MINOR]
-set version of the sparse format to use (implies --sparse)
-.It Fl \-strip\-components Ns \= Ns Ar NUMBER
-strip NUMBER leading components from file names on extraction
-.It Fl \-suffix Ns \= Ns Ar STRING
-backup before removal, override usual suffix ('~' unless overridden by environment variable SIMPLE_BACKUP_SUFFIX)
-.It Fl T , Fl \-files\-from Ar FILE
-get names to extract or create from FILE
-.It Fl \-to\-command Ns \= Ns Ar COMMAND
-pipe extracted files to another program
-.It Fl \-totals
-print total bytes after processing the archive; 
-.It Fl \-transform , Fl \-xform Ar EXPRESSION
-use sed replace EXPRESSION to transform file names
-.It Fl U , Fl \-unlink\-first
-remove each file prior to extracting over it
-.It Fl \-unquote
-unquote filenames read with -T (default)
-.It Fl \-no\-unquote
-do not unquote filenames read with -T
-.It Fl \-utc
-print file modification times in UTC
-.It Fl v , Fl \-verbose
-verbosely list files processed
-.It Fl V , Fl \-label Ar TEXT
-create archive with volume name TEXT; at list/extract time, use TEXT as a globbing pattern for volume name
-.It Fl \-volno\-file Ns \= Ns Ar FILE
-use/update the volume number in FILE
-.It Fl w , Fl \-interactive , Fl \-confirmation
-ask for confirmation for every action
-.It Fl W , Fl \-verify
-attempt to verify the archive after writing it
-.It Fl \-warning Ns \= Ns Ar KEYWORD
-warning control
-.It Fl \-wildcards
-use wildcards (default for exclusion)
-.It Fl \-wildcards\-match\-slash
-wildcards match '/' (default for exclusion)
-.It Fl \-no\-wildcards\-match\-slash
-wildcards do not match '/'
-.It Fl \-no\-wildcards
-verbatim string matching
-.It Fl X , Fl \-exclude\-from Ar FILE
-exclude patterns listed in FILE
-.It Fl \-xattrs
-Enable extended attributes support
-.It Fl \-xattrs\-exclude Ns \= Ns Ar MASK
-specify the exclude pattern for xattr keys
-.It Fl \-xattrs\-include Ns \= Ns Ar MASK
-specify the include pattern for xattr keys
-.It Fl \-no\-xattrs
-Disable extended attributes support
-.It Fl z , Fl \-gzip , Fl \-gunzip Fl \-ungzip
-
-.It Fl Z , Fl \-compress , Fl \-uncompress
-
-.El
-.Sh ENVIRONMENT
-The behavior of tar is controlled by the following environment variables,
-among others:
-.Bl -tag -width Ds
-.It Ev SIMPLE_BACKUP_SUFFIX
-Backup prefix to use when extracting, if
-.Fl \-suffix
-is not specified.
-The backup suffix defaults to `~' if neither is specified.
-.It Ev TAR_OPTIONS
-Options to prepend to those specified on the command line, separated by
-whitespace.  Embedded backslashes may be used to escape whitespace or
-backslashes within an option.
-.It Ev TAPE
-Device or file to use for the archive if 
-.Fl \-file
-is not specified.
-If this environment variable is unset, use stdin or stdout instead.
-.El
-.Sh EXAMPLES
-Create archive.tar from files foo and bar.
-.Bd -literal -offset indent -compact
-tar \-cf archive.tar foo bar
-.Ed
-List all files in archive.tar verbosely.
-.Bd -literal -offset indent -compact
-tar \-tvf archive.tar
-.Ed
-Extract all files from archive.tar.
-.Bd -literal -offset indent -compact
-tar \-xf archive.tar
-.Ed
-.Sh SEE ALSO
-.\" libarchive
-.Xr tar 5 ,
-.\" man-pages
-.Xr symlink 7 ,
-.Xr rmt 8
-.Sh HISTORY
-The
-.Nm tar
-command appeared in
-.At v7 .
-.Sh BUGS
-The GNU folks, in general, abhor man pages, and create info documents instead.
-Unfortunately, the info document describing tar is licensed under the GFDL with
-invariant cover texts, which makes it impossible to include any text
-from that document in this man page.
-Most of the text in this document was automatically extracted from the usage
-text in the source.
-It may not completely describe all features of the program.

diff --git a/app-arch/tar/metadata.xml b/app-arch/tar/metadata.xml
deleted file mode 100644
index f8de3a9..0000000
--- a/app-arch/tar/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<herd>base-system</herd>
-<use>
-	<flag name='minimal'>just install `tar`</flag>
-</use>
-<upstream>
-	<remote-id type="cpe">cpe:/a:gnu:tar</remote-id>
-</upstream>
-</pkgmetadata>

diff --git a/app-arch/tar/tar-1.27.1-r99.ebuild b/app-arch/tar/tar-1.27.1-r99.ebuild
deleted file mode 100644
index cf92814..0000000
--- a/app-arch/tar/tar-1.27.1-r99.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/tar/tar-1.27.1.ebuild,v 1.1 2013/11/25 12:20:59 polynomial-c Exp $
-
-EAPI="5"
-
-inherit autotools flag-o-matic eutils
-
-DESCRIPTION="Use this to make tarballs :)"
-HOMEPAGE="http://www.gnu.org/software/tar/"
-SRC_URI="mirror://gnu/tar/${P}.tar.bz2
-	mirror://gnu-alpha/tar/${P}.tar.bz2"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="acl minimal nls selinux static userland_GNU xattr"
-
-RDEPEND="acl? ( virtual/acl )
-	selinux? ( sys-libs/libselinux )"
-DEPEND="${RDEPEND}
-	nls? ( >=sys-devel/gettext-0.10.35 )"
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-sys-attr.patch
-	eautoreconf
-
-	if ! use userland_GNU ; then
-		sed -i \
-			-e 's:/backup\.sh:/gbackup.sh:' \
-			scripts/{backup,dump-remind,restore}.in \
-			|| die "sed non-GNU"
-	fi
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	FORCE_UNSAFE_CONFIGURE=1 \
-	econf \
-		--enable-backup-scripts \
-		--bindir="${EPREFIX}"/bin \
-		--libexecdir="${EPREFIX}"/usr/sbin \
-		$(usex userland_GNU "" "--program-prefix=g") \
-		$(use_with acl posix-acls) \
-		$(use_enable nls) \
-		$(use_with selinux) \
-		$(use_with xattr xattrs)
-}
-
-src_install() {
-	emake DESTDIR="${D}" install || die
-
-	local p=$(usex userland_GNU "" "g")
-	if [[ -z ${p} ]] ; then
-		# a nasty yet required piece of baggage
-		exeinto /etc
-		doexe "${FILESDIR}"/rmt || die
-	fi
-
-	# autoconf looks for gtar before tar (in configure scripts), hence
-	# in Prefix it is important that it is there, otherwise, a gtar from
-	# the host system (FreeBSD, Solaris, Darwin) will be found instead
-	# of the Prefix provided (GNU) tar
-	if use prefix ; then
-		dosym tar /bin/gtar
-	fi
-
-	dodoc AUTHORS ChangeLog* NEWS README* THANKS
-	newman "${FILESDIR}"/tar.1-1.27 ${p}tar.1
-	mv "${ED}"/usr/sbin/${p}backup{,-tar}
-	mv "${ED}"/usr/sbin/${p}restore{,-tar}
-
-	if use minimal ; then
-		find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
-			-type f -a '!' '(' -name tar -o -name ${p}tar ')' \
-			-delete
-	fi
-}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-10-21  3:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-28 19:27 [gentoo-commits] proj/hardened-dev:uclibc commit in: app-arch/tar/files/, app-arch/tar/ Anthony G. Basile
  -- strict thread matches above, loose matches on Subject: below --
2014-10-21  3:04 Anthony G. Basile

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox