From: Paul Eggert Date: Fri, 25 Apr 1997 17:33:20 +0000 (+0000) Subject: gtar 1.12 X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Ftar;a=commitdiff_plain;h=ea6fcdf21711b3e1b708b67b147032173871f6c9 gtar 1.12 --- diff --git a/README b/README index 7b85c2e..9439c23 100644 --- a/README +++ b/README @@ -1,40 +1,181 @@ -Hey! Emacs! Yo! This is -*- Text -*- !!! - -This is GNU tar 1.11.2. Please send bug reports, etc., to -bug-gnu-utils@prep.ai.mit.edu. This is a beta-test release. Please -try it out. There is no manual; the release of version 1.12 will -contain a manual. - -GNU tar is based heavily on John Gilmore's public domain tar, but with -added features. The manual is currently being written. - -This distribution also includes rmt, the remote tape server (which -normally must reside in /etc). The mt tape drive control program is -in the GNU cpio distribution. - -See the file INSTALL for compilation and installation instructions for Unix. -See the file NEWS for information on all that is new in this version -of tar. - -makefile.pc is a makefile for Turbo C 2.0 on MS-DOS. - -Various people have been having problems using floppies on a NeXT. In -order to have them work right, you need to kill the automounting -program which tries to mount floppies as soon as they are added. - -If you want to do incremental dumps, use the distributed backup -scripts. They are what we use at the FSF to do all our backups. Most -importantly, do not use --incremental (-G) or --after-date (-N) or ---newer-mtime to do incremental dumps. The only option that works -correctly for this purpose is --listed-incremental. (When extracting -incremental dumps, use --incremental (-G).) - -If your system needs to link with -lPW to get alloca, but has -rename in the C library (so HAVE_RENAME is defined), -lPW might -give you an incorrect version of rename. On HP-UX this manifests -itself as an undefined data symbol called "Error" when linking cp, ln, -and mv. If this happens, use `ar x' to extract alloca.o from libPW.a -and `ar rc' to put it in a library liballoca.a, and put that in LIBS -instead of -lPW. This problem does not occur when using gcc, which -has alloca built in. +Here is GNU `tar' 1.12. 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. + +GNU `tar' saves many files together into a single tape or disk +archive, and can restore individual files from the archive. It includes +multivolume support, the ability to archive sparse files, automatic archive +compression/decompression, remote archives and special features that allow +`tar' to be used for incremental and full backups. This distribution +also includes `rmt', the remote tape server. The `mt' tape drive control +program is in the GNU `cpio' distribution. + +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 `NEWS' for a list of major changes in the current release. +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': + +* `--with-included-malloc' or `--without-included-malloc' may override +the automatic choice made by `configure' about using included GNU malloc. + +* `--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 device is now `stdin' on read and `stdout' on write. +The installer can still override this by presetting `DEFAULT_ARCHIVE' +in the environment before configuring (the behavior of `-[0-7]' or +`-[0-7]lmh' options in `tar' are then derived automatically). Similarly, +`DEFAULT_BLOCKING' can be preset to something else than 20. + +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.12 with officious patches held in `AC-PATCHES'. +Install Perl, then Automake 1.1n with officious patches in `AM-PATCHES'. +You might need Bison 1.25 with officious patches in `BI-PATCHES' (but yacc +and byacc may be OK for you), and GNU tar itself. All are available on +GNU archive sites, like in ftp://prep.ai.mit.edu/pub/gnu/, but Automake +is still ftp://ftp.cygnus.com/pub/tromey/automake-1.1n.tar.gz. + +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, +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 +are preferred. Big files may sometimes be necessary, but do not send them +to the report address; rather take special arrangement with the maintainer. + +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'. + +.--------------------. +| Installation hints | +`--------------------' + +Here are a few hints which might help installing `tar' on some systems. + +* Static linking. + +Some platform will, by default, prepare a smaller `tar' executable +which depends on shared libraries. Since GNU `tar' may be used for +system-level backups and disaster recovery, installers might prefer to +force static linking, making a bigger `tar' executable maybe, but able to +work standalone, in situations where shared libraries are not available. +The way to achieve static linking varies between systems. Set LDFLAGS +to a value from the table below, before configuration (see `INSTALL'). + + Platform Compiler LDFLAGS + + (any) Gnu C -static + AIX (vendor) "-bnso -bI:/lib/syscalls.exp" + HPUX (vendor) -Wl,-a,archive + IRIX (vendor) -non_shared + OSF (vendor) -non_shared + SCO 3.2v5 (vendor) -dn + Solaris (vendor) -Bstatic + SunOS (vendor) -Bstatic + +* Failed `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. + +* 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 +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. + +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 . + +* Ultrix users -- broken `make'. + +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. | +`------------------' + +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. +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. + +GNU `tar' does not properly restore symlink attributes. Various systems +implement flavours of symbolic links showing different behaviour and +properties. We did not successfully sorted all these out yet. Currently, +the `lchown' call will be used if available, but that's all. + +* POSIX compliance. + +GNU `tar' implements an early draft of the POSIX 1003.1 `ustar' standard +which is different from the final standard. This will be progressively +corrected over the incoming few years. Don't be mislead by the mere +existence of the --posix option. Later releases will become able to +read truly POSIX archives, and also to produce them under option. (Also, +if you look at the internals, don't take the GNU extensions you see for +granted, as they are planned to change.) GNU tar 2.0 will produce POSIX +archives by default, but there is a long way before we get there. + +* 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).