-This is an unofficial port of GNU `tar' 1.12 to large
-file environments like Solaris 2.6 and HP-UX 10.20 that rely on integer
-system types longer than `long'. Ordinary GNU `tar' 1.12 cannot handle
-files larger than 2 GB when compiled in such environments. This port
-addresses that problem, and fixes some other well-known bugs in GNU tar 1.12.
-Please send bug reports specific to this unofficial version of GNU `tar'
-to <eggert@twinsun.com>.
-
-This is not intended to be a forked release for GNU tar; it's
-just an interim experimental release, mostly intended for
-Large File Summit hosts like Solaris 2.6. The patches of this
-release have all been submitted via the usual channels and
-they should no longer be needed once the next official release
-of GNU tar is out.
+README for GNU tar
+
+ Copyright (C) 1990, 1991, 1992, 1994, 1997, 1998, 1999, 2000,
+ 2001, 2003 Free Software Foundation, Inc.
+
+ This file is part of GNU tar.
+
+ GNU tar is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ GNU tar is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with tar; see the file COPYING. If not, write to
+ the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
Please glance through *all* sections of this
`README' file before starting configuration. Also make sure you read files
`ABOUT-NLS' and `INSTALL' if you are not familiar with them already.
-If you got the `tar' distribution in `shar' format, timestamps ought to be
-properly restored, do not ignore such complaints at `unshar' time.
+If you got the `tar' distribution in `shar' format, time stamps ought to be
+properly restored; do not ignore such complaints at `unshar' time.
GNU `tar' saves many files together into a single tape or disk
archive, and can restore individual files from the archive. It includes
GNU `tar' is derived from John Gilmore's public domain `tar'.
See file `ABOUT-NLS' for how to customize this program to your language.
-See file `BACKLOG' for a summary of pending mail and articles.
See file `COPYING' for copying conditions.
See file `INSTALL' for compilation and installation instructions.
See file `PORTS' for various ports of GNU tar to non-Unix systems.
See file `THANKS' for a list of contributors.
Besides those configure options documented in files `INSTALL' and
-`ABOUT-NLS', a few extra options may be accepted after `./configure':
+`ABOUT-NLS', an extra option may be accepted after `./configure':
+
+* `--disable-largefile' omits support for large files, even if the
+operating system supports large files. Typically, large files are
+those larger on 2 GB on a 32-bit host.
-* `--with-dmalloc' is a debugging option for looking at memory management
-problems, it prerequires Gray Watson's package, which is available as
-`ftp://ftp.letters.com/src/dmalloc/dmalloc.tar.gz'.
+The default archive format is GNU, this can be overridden by
+presetting DEFAULT_ARCHIVE_FORMAT while configuring. The allowed
+values are GNU, V7, OLDGNU and POSIX.
The default archive device is now `stdin' on read and `stdout' on write.
The installer can still override this by presetting `DEFAULT_ARCHIVE'
For comprehensive modifications to GNU tar, you might need tools beyond
those used in simple installations. Fully install GNU m4 1.4 first,
-and only then, Autoconf 2.13 or later. Install Perl, then Automake
-1.4 or later. You might need Bison 1.26 or later, and GNU tar itself.
-All are available on GNU archive sites, like in
-ftp://ftp.gnu.org/pub/gnu/.
-
-Send bug reports to `tar-bugs@gnu.ai.mit.edu'. (Beware, old-timers: it is
-`@gnu', not `@prep'; and not `bug-gnu-utils' anymore.) A bug report is
-an adequate description of the problem: your input, what you expected,
+and only then, Autoconf 2.57 or later. Install Perl, then Automake
+1.7.5 or later. Also, install gettext 0.12.1 or later. You might
+need Bison 1.875 or later, and GNU tar itself. All are available on
+GNU archive sites, like in ftp://ftp.gnu.org/pub/gnu/.
+
+Send bug reports to <bug-tar@gnu.org>. A bug report should contain
+an adequate description of the problem, your input, what you expected,
what you got, and why this is wrong. Diffs are welcome, but they only
describe a solution, from which the problem might be uneasy to infer.
If needed, submit actual data files with your report. Small data files
Your feedback will help us to make a better and more portable package.
Consider documentation errors as bugs, and report them as such. If you
develop anything pertaining to `tar' or have suggestions, let us know
-and share your findings by writing at `tar-forum@iro.umontreal.ca'.
+and share your findings by writing to <bug-tar@gnu.org>.
+
-.--------------------.
-| Installation hints |
-`--------------------'
+Installation hints
+------------------
Here are a few hints which might help installing `tar' on some systems.
+* gzip and bzip2.
+
+GNU tar uses the gzip and bzip2 programs to read and write compressed
+archives. If you don't have these programs already, you need to
+install them. Their sources can be found at:
+
+ftp://ftp.gnu.org/gnu/gzip/
+http://sourceware.cygnus.com/bzip2/
+
+If you see the following symptoms:
+
+ $ tar -xzf file.tar.gz
+ gzip: stdin: decompression OK, trailing garbage ignored
+ tar: Child returned status 2
+
+then you have encountered a gzip incompatibility that should be fixed
+in gzip test version 1.3, which as of this writing is available at
+<ftp://alpha.gnu.org/gnu/gzip/>. You can work around the
+incompatibility by using a shell command like
+ `gzip -d <file.tar.gz | tar -xzf -'.
+
+* Solaris issues.
+
+GNU tar exercises many features that can cause problems with older GCC
+versions. In particular, GCC 2.8.1 (sparc, -O1 or -O2) is known to
+miscompile GNU tar. No compiler-related problems have been reported
+when using GCC 2.95.2 or later.
+
+Recent versions of Solaris tar sport a new -E option to generate
+extended headers in an undocumented format. GNU tar does not
+understand these headers.
+
* Static linking.
Some platform will, by default, prepare a smaller `tar' executable
Platform Compiler LDFLAGS
(any) Gnu C -static
- AIX (vendor) "-bnso -bI:/lib/syscalls.exp"
+ AIX (vendor) -bnso -bI:/lib/syscalls.exp
HPUX (vendor) -Wl,-a,archive
IRIX (vendor) -non_shared
OSF (vendor) -non_shared
Solaris (vendor) -Bstatic
SunOS (vendor) -Bstatic
-* Failed `incremen.sh'.
+* Failed tests `ignfail.sh' or `incremen.sh'.
-In an NFS environment, lack of synchronisation between machine clocks
-might create difficulties to any tool comparing dates and file timestamps,
-like `tar' in incremental dumps. This has been a recurrent problem in
-GNU Makefiles for the last few years. We would like a general solution.
+In an NFS environment, lack of synchronization between machine clocks
+might create difficulties to any tool comparing dates and file time stamps,
+like `tar' in incremental dumps. This has been a recurrent problem with
+GNU Make for the last few years. We would like a general solution.
* BSD compatibility matters.
Set LIBS to `-lbsd' before configuration (see `INSTALL') if the linker
-complains about undefined `valloc' (AIX) or `bsd_ioctl' (Slackware).
-Also set CPPFLAGS to `-I/usr/include/bsd/sys' before configuration to
-solve dirent problems (NeXT), or to `-I/usr/include/bsd' if <sgtty.h>
-is not found (Slackware).
-
-* `union wait' problems.
-
-Configuration of `union wait' does not always take the best decision.
-If you have this problem, edit file `config.cache' after configuration,
-find the line about `tar_cv_header_union_wait', change `yes' by `no'
-or vice-versa, execute `./config.status', then launch `make'.
-
-* `%lld' unsupported in `printf'.
-
-GNU C has `long long', but the underneath C library might not support
-the `%lld' format. If you have this problem, edit file `config.cache'
-after configuration, find the line about `ac_cv_sizeof_long_long, change
-`8' by `0', execute `./config.status', then launch `make'.
-
-* FreeBSD users -- `configure' fails.
-
-It has been reported that `configure' does not run on FreeBSD 2.1.7,
-because of a buggy `sh'. It works using `bash', however.
-
-* ISC users -- `S_*' symbols undefined.
+complains about `bsd_ioctl' (Slackware). Also set CPPFLAGS to
+`-I/usr/include/bsd' if <sgtty.h> is not found (Slackware).
-On ISC 4.1mu, POSIX environment, set CFLAGS to `-posix' and CPPFLAGS to
-`-D_SYSV3' before configuration (see `INSTALL'). This will trigger the
-definition of a few `S_' prefixed symbols from <sys/stat.h>.
+* OPENStep 4.2 swap files
-* Ultrix users -- broken `make'.
+Tar cannot read the file /private/vm/swapfile.front (even as root).
+This file is not a real file, but some kind of uncompressed view of
+the real compressed swap file; there is no reason to back it up, so
+the simplest workaround is to avoid tarring this file.
-It seems that Ultrix make does not correctly handle shell commands
-having logical connectives in them. Use `s5make' if you have it, try
-`PROG_ENV=SYSTEM_FIVE make' (works on Ultrix 4.4), or install GNU Make.
-.------------------.
-| Special topics. |
-`------------------'
+Special topics
+--------------
Here are a few special matters about GNU `tar', not related to build
matters. See previous section for such.
* File attributes.
About *security*, it is probable that future releases of `tar' will have
-some behaviour changed. There are many pending suggestions to choose from.
+some behavior changed. There are many pending suggestions to choose from.
Today, extracting an archive not being `root', `tar' will restore suid/sgid
bits on files but owned by the extracting user. `root' automatically gets
-a lot of special priviledges, `-p' might later become required to get them.
+a lot of special privileges, `-p' might later become required to get them.
GNU `tar' does not properly restore symlink attributes. Various systems
-implement flavours of symbolic links showing different behaviour and
+implement flavors of symbolic links showing different behavior and
properties. We did not successfully sorted all these out yet. Currently,
the `lchown' call will be used if available, but that's all.
* What's next?
-The emphasis from 1.11.2 to 1.12 has been on solving the main portability,
-execution or usability bugs. This was accompanied all over with an
-internal cleanup in the sources, and the reassembly of a `tar' manual.
-
-The `BACKLOG' file shows an approximative priorisation of the many pending
-problems and suggestions. Besides pending problems and all other matters
-listed above, the cleanup is planned to continue and extend to the general
-organisation of the code, preparing a long time in advance for a possible
-merge of the `cpio' and `tar' distributions, into some common `paxutils'.
-We also want to address some long-awaited performance issues (for example:
-double buffering) or enhancements (for example: per-file compression).
+In the future we will try to release tar-1.14 as soon as possible and
+start merging with paxutils afterwards. We'll also try to rewrite
+some parts of the documentation after paxutils has been merged.