Submitted By: Jim Gifford (jim at cross-lfs dot org) Date: 2009-03-06 Initial Package Version: 1.22 Origin: Debian Upstream Status: N/A Description: This Patch adds and man-page to TAR. This has been added as per numerous requests. diff -Naur tar-1.22.orig/doc/Makefile.am tar-1.22/doc/Makefile.am --- tar-1.22.orig/doc/Makefile.am 2008-04-14 05:03:12.000000000 -0700 +++ tar-1.22/doc/Makefile.am 2009-03-05 20:50:20.245637658 -0800 @@ -17,6 +17,8 @@ ## along with this program; if not, write to the Free Software Foundation, ## Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +man_MANS = tar.1 + info_TEXINFOS = tar.texi tar_TEXINFOS = \ dumpdir.texi\ diff -Naur tar-1.22.orig/doc/Makefile.in tar-1.22/doc/Makefile.in --- tar-1.22.orig/doc/Makefile.in 2009-03-04 23:05:25.000000000 -0800 +++ tar-1.22/doc/Makefile.in 2009-03-05 20:50:20.245637658 -0800 @@ -146,13 +146,16 @@ MAKEINFOHTML = $(MAKEINFO) --html AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) DVIPS = dvips -am__installdirs = "$(DESTDIR)$(infodir)" +am__installdirs = "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)" am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +man1dir = $(mandir)/man1 +NROFF = nroff +MANS = $(man_MANS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ @@ -645,6 +648,7 @@ target_alias = @target_alias@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ +man_MANS = tar.1 info_TEXINFOS = tar.texi tar_TEXINFOS = \ dumpdir.texi\ @@ -858,6 +862,51 @@ echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \ rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \ done +install-man1: $(man1_MANS) $(man_MANS) + @$(NORMAL_INSTALL) + test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" + @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ + l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ + for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + case "$$ext" in \ + 1*) ;; \ + *) ext='1' ;; \ + esac; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed -e 's/^.*\///'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ + done +uninstall-man1: + @$(NORMAL_UNINSTALL) + @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ + l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ + for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + case "$$ext" in \ + 1*) ;; \ + *) ext='1' ;; \ + esac; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed -e 's/^.*\///'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ + rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ + done tags: TAGS TAGS: @@ -896,9 +945,9 @@ dist-info check-am: all-am check: check-am -all-am: Makefile $(INFO_DEPS) +all-am: Makefile $(INFO_DEPS) $(MANS) installdirs: - for dir in "$(DESTDIR)$(infodir)"; do \ + for dir in "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -945,7 +994,7 @@ info-am: $(INFO_DEPS) -install-data-am: install-info-am +install-data-am: install-info-am install-man install-dvi: install-dvi-am @@ -1010,7 +1059,7 @@ install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ done; \ else : ; fi -install-man: +install-man: install-man1 install-pdf: install-pdf-am @@ -1054,7 +1103,9 @@ ps-am: $(PSS) uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \ - uninstall-pdf-am uninstall-ps-am + uninstall-man uninstall-pdf-am uninstall-ps-am + +uninstall-man: uninstall-man1 .MAKE: install-am install-strip @@ -1063,14 +1114,15 @@ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ + install-info-am install-man install-man1 install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-aminfo maintainer-clean-generic \ maintainer-clean-vti mostlyclean mostlyclean-aminfo \ mostlyclean-generic mostlyclean-vti pdf pdf-am ps ps-am \ uninstall uninstall-am uninstall-dvi-am uninstall-html-am \ - uninstall-info-am uninstall-pdf-am uninstall-ps-am + uninstall-info-am uninstall-man uninstall-man1 \ + uninstall-pdf-am uninstall-ps-am header.texi: $(top_srcdir)/src/tar.h diff -Naur tar-1.22.orig/doc/tar.1 tar-1.22/doc/tar.1 --- tar-1.22.orig/doc/tar.1 1969-12-31 16:00:00.000000000 -0800 +++ tar-1.22/doc/tar.1 2009-03-05 20:52:59.235825673 -0800 @@ -0,0 +1,400 @@ +.\" @(#)tar.1 1.11.1 93/19/22 PJV; +.TH TAR 1 "29 Aug 2007" +.SH NAME +tar \- The GNU version of the tar archiving utility +.SH SYNOPSIS +.B tar +[ +.B \- +] +.B A \-\-catenate \-\-concatenate \||\| c \-\-create \||\| d \-\-diff \-\-compare \||\| \-\-delete \||\| r \-\-append \||\| t \-\-list \||\| u \-\-update \||\| x \-\-extract \-\-get +.I [ options ] +.I pathname [ pathname ... ] +.SH DESCRIPTION +.LP +This manual page documents the GNU version of +.B tar +, an archiving program designed to store and extract files from +an archive file known as a +.IR tarfile. +A +.IR tarfile +may be made on a tape drive, however, it is also common +to write a +.IR tarfile +to a normal file. +The first argument to +.B tar +must be one of the options: +.BR Acdrtux , +followed by any optional functions. +The final arguments to +.B tar +are the names of the files or directories which should be archived. The use +of a directory name always implies that the subdirectories below should be +included in the archive. +.SH EXAMPLES +.TP +.B tar \-xvvf foo.tar +extract foo.tar +.TP +.B tar \-xvvzf foo.tar.gz +extract gzipped foo.tar.gz +.TP +.B tar \-cvvf foo.tar foo/ +tar contents of folder foo in foo.tar +.SH "FUNCTION LETTERS" +.TP +.B One of the following options must be used: +.TP +.B \-A, \-\-catenate, \-\-concatenate +append tar files to an archive +.TP +.B \-c, \-\-create +create a new archive +.TP +.B \-d, \-\-diff, \-\-compare +find differences between archive and file system +.TP +.B \-\-delete +delete from the archive (not for use on mag tapes!) +.TP +.B \-r, \-\-append +append files to the end of an archive +.TP +.B \-t, \-\-list +list the contents of an archive +.TP +.B \-u, \-\-update +only append files that are newer than copy in archive +.TP +.B \-x, \-\-extract, \-\-get +extract files from an archive +.SH "OTHER OPTIONS" +.TP +.B \-\-allow\-name\-mangling +re-enable handling of GNUTYPE_NAMES which is now disabled by default +.TP +.B \-\-anchored +force exclusion patterns to match initial subsequences +.TP +.B \-\-atime\-preserve +don't change access times on dumped files +.TP +.B \-a, \-\-auto\-compress +with \-\-create, selects compression algorithm basing on the suffix +of the archive file name +.TP +.B \-b, \-\-blocking\-factor N +use record size of Nx512 bytes (default N=20) +.TP +.B \-B, \-\-read\-full\-records +reblock as we read (for reading 4.2BSD pipes) +.TP +.B \-\-backup[\=TYPE] +back up files instead of overwriting (TYPE=numbered, existing, simple) +.TP +.B \-C, \-\-directory DIR +change to directory DIR +.TP +.B \-\-checkpoint +print periodic checkpoints +.TP +.B \-\-checkpoint\-action +this action allows to specify an action to be executed upon hitting a +checkpoint. Recognized actions are: dot, echo (the default), +echo\=string, ttyout\=string, exec\=cmdline, and sleep\=value. Any number +of `\-\-checkpoint\-action' options can be specified, the actions will be +executed in order of their appearance in the command line. +.TP +.B \-\-check\-device +enables comparing device numbers. This is the default. +.TP +.B \-\-no\-check\-device +disables comparing device numbers during preparatory stage of an +incremental dump. +This allows to avoid creating full dumps if the device numbers change +(e.g. when using an LVM snapshot) +.TP +.B \-\-exclude=PATTERN +exclude files matching PATTERN +.TP +.B \-f, \-\-file [HOSTNAME:]F +use archive file or device F (otherwise value of TAPE environment variable; if unset, "\-", meaning stdin/stdout) +.TP +.B \-F, \-\-info\-script F, \-\-new\-volume\-script F +run script at end of each tape (implies \-M) +.TP +.B \-\-force\-local +archive file is local even if it has a colon +.TP +.B \-G, \-\-incremental +create/list/extract old GNU-format incremental backup +.TP +.B \-g, \-\-listed\-incremental F +create/list/extract new GNU-format incremental backup +.TP +.B \-\-group G +set group to G while adding files +.TP +.B \-h, \-\-dereference +don't dump symlinks; dump the files they point to +.TP +.B \-\-hard\-dereference +during archive creation, dereferences hard links and stores the files +they refer to, instead of creating usual hard link members (type '1') +.TP +.B \-\-help +print help message +.TP +.B \-i, \-\-ignore\-zeros +ignore blocks of zeros in archive (normally mean EOF) +.TP +.B \-\-ignore\-case +ignore case when excluding files +.TP +.B \-\-ignore\-failed\-read +don't exit with non-zero status on unreadable files +.TP +.B \-j, \-\-bzip2 +filter archive through bzip2, use to decompress .bz2 files. +WARNING: some previous versions of tar used option \-I to +filter through bzip2. When writing scripts, use \-\-bzip2 +instead of \-j so that both older and newer tar versions +will work. +.TP +.B \-J, \-\-xz +selects XZ compression algorithm +.TP +.B \-k, \-\-keep\-old\-files +keep existing files; don't overwrite them from archive +.TP +.B \-K, \-\-starting\-file F +begin at file F in the archive +.TP +.B \-\-lzip +selects Lzip compression algorithm +.TP +.B \-\-lzma +selects LZMA compression algorithm +.TP +.B \-l, \-\-check\-links +print a message if not all links are dumped +.TP +.B \-L, \-\-tape\-length N +change tapes after writing N*1024 bytes +.TP +.B \-m, \-\-touch +don't extract file modified time +.TP +.BI \-\-transform " expr" +applies filename transformations. +The argument to this option can be a list of replace expressions, separated +by semicolon (as in `sed'). +Filename transformations are applied to symbolic link targets during both +creation and extraction. +This option may be specified any number of +times, the specified transofrmations will be applied in turn. +.TP +.B \-M, \-\-multi\-volume +create/list/extract multi-volume archive +.TP +.B \-\-mode M +set permissions to M while adding files +.TP +.B \-N, \-\-after\-date DATE, \-\-newer DATE +only store files newer than DATE +.TP +.B \-\-newer\-mtime DATE +only store files whose contents have changed after DATE +.TP +.B \-\-no\-anchored +allow exclusion patterns to match any substring (the default) +.TP +.B \-\-no\-ignore\-case +match patterns case sensitively (the default) +.TP +.B \-\-no\-recursion +do not recurse into subdirectories +.TP +.B \-o, \-\-no\-same\-owner +extract files with owner set to current user (the default for non-root +users) +.TP +.B \-\-no\-same\-permissions +apply umask to extracted files (the default for non-root users) +.TP +.B \-\-no\-wildcards +do not use wildcards when excluding files +.TP +.B \-\-no\-wildcards\-match\-slash +don't let wildcards match "/" when excluding files +.TP +.B \-\-null +for \-T, use "NUL" instead of newline as filename terminator +.TP +.B \-\-numeric\-owner +always use numbers for user/group names +.TP +.B \-\-old\-archive, \-\-portability +write a V7 format archive, rather than ANSI format. These options are +deprecated, please use +.B \-\-format\=v7 +instead. +.TP +.B \-\-one\-file\-system +stay in local file system when creating an archive +.TP +.B \-\-owner O +set owner to O while adding files +.TP +.B \-O, \-\-to\-stdout +extract files to standard output +.TP +.B \-p, \-\-same\-permissions, \-\-preserve\-permissions +ignore umask when extracting files (the default for root) +.TP +.B \-P, \-\-absolute\-names +don't strip leading `/'s from file names +.TP +.B \-\-posix +create POSIX compliant archive. This option is deprecated, +please use +.B \-\-format\=posix +instead. +.TP +.B \-\-preserve +like \-p \-s +.TP +.B \-R, \-\-block\-number +show block number within archive with each message +.TP +.B \-\-record\-size SIZE +use SIZE bytes per record +.TP +.B \-\-recursion +recurse into directories (the default) +.TP +.B \-\-recursive\-unlink +remove existing directories before extracting directories of the same +name +.TP +.B \-\-remove\-files +remove files after adding them to the archive +.TP +.B \-\-rsh\-command=CMD +Use remote COMMAND instead of `rsh'. This option exists so that +people who use something other than the standard `rsh' (e.g., a +Kerberized `rsh') can access a remote device. +.TP +.B \-S, \-\-sparse +handle sparse files efficiently +.TP +.B \-s, \-\-same\-order, \-\-preserve\-order +list of names to extract is sorted to match archive +.TP +.B \-\-same\-owner +extract files with owner as specified in archive (the default for +root) +.TP +.B \-\-show\-omitted\-dirs +mention directories that are being skipped over +.TP +.BI \-\-strip\-components " n" +Strip the given number of leading directory components +.TP +.B \-\-strip, \-\-strip\-components N +Strips the first N components from archive members' pathnames when +unpacking. +.TP +.B \-\-suffix SUFFIX +append SUFFIX to make backup files (default ~) +.TP +.B \-T, \-\-files\-from F +get names to extract or archive from file F +.TP +.B \-\-totals +display total bytes written after creating an archive +.TP +.B \-U, \-\-unlink\-first +unlink & recreate files instead of overwriting +.TP +.B \-\-use\-compress\-program PROG +filter the archive through PROG (which must accept \-d) +.TP +.B \-v, \-\-verbose +verbosely list files processed +.TP +.B \-V, \-\-label NAME +create archive with volume name NAME +.TP +.B \-\-version +print tar program version number +.TP +.B \-\-volno\-file F +keep track of current volume (of a multi-volume archive) in F +.TP +.B \-w, \-\-interactive, \-\-confirmation +ask for confirmation for every action +.TP +.B \-W, \-\-verify +attempt to verify the archive after writing it +.TP +.B \-\-wildcards +use wildcards when excluding files (the default) +.TP +.B \-\-wildcards\-match\-slash +allow wildcards to match "/" (the default) +.TP +.B \-X, \-\-exclude\-from=FILE +exclude files matching patterns listed in FILE +.TP +.B \-Z, \-\-compress, \-\-uncompress +filter the archive through compress +.TP +.B \-z, \-\-gzip, \-\-gunzip, \-\-ungzip +filter the archive through gzip +.TP +.B \-[0\-7][lmh] +specify drive and density +.SH ENVIRONMENT +The behavior of tar is controlled by the following environment variables, +among others: +.TP +.B TAPE +Device or file to use for the archive if \fB--file\fR is not specified. +If this environment variable is unset, use stdin or stdout instead. +.TP +.B 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. +.LP +In addition, the value of the blocking factor is made available to info +and checkpoint scripts via environment variable +.B TAR_BLOCKING_FACTOR. +.SH BUGS +.LP +The GNU folks, in general, abhor man pages and create info documents instead. +The maintainer of \fBtar\fR falls into this category. Thus, this man page may +not be complete nor current, and it is included in the Cross-LFS Build +because man is a great tool :). This man page was taken from Debian +Linux and has since been lovingly updated here. + +If you want to read the complete documentation for GNU tar, please refer to +the online version at +.PP +.ce 1 + +.PP +This man page was created for the Cross LFS Build. It does not describe +all of the functionality of tar, and it is often out of date. Patches to +improve the coverage and/or accuracy of this man page are appreciated, and +should be filed as tickets in bug reporting system for Cross-LFS and +not submitted to the GNU tar maintainers. The URL for the Cross-LFS bug +reporting system is at +.PP +.ce 1 + +.PP +