Commit graph

36 commits

Author SHA1 Message Date
adam
e43d6c9175 Changes 1.26:
* Fix the --verify option, which broke in version 1.24.
* Fix storing long sparse file names in PAX archives.
* Fix correctness of --atime-preserve=replace.
* Work around POSIX incompatibilities on FreeBSD, NetBSD and Tru64.
* Fix bug with --one-file-system --listed-incremental.
2011-05-11 07:49:58 +00:00
wiz
4c00f903f7 Update gtar to 1.25.
version 1.25 - Sergey Poznyakoff, 2010-11-07

* Fix extraction of empty directories with the -C option in effect.
* Fix extraction of device nodes.
* Make sure name matching occurs before eventual name transformation.

Tar 1.24 changed the ordering of name matching and name transformation
so that the former saw already transformed file names.  This made it
impossible to match file names in certain cases.  It is fixed now.

* Fix the behavior of tar -x --overwrite on hosts lacking O_NOFOLLOW.

* Improve the testsuite.

* Alternative decompression programs.

If extraction from a compressed archive fails because the corresponding
compression program is not installed and the following two conditions
are met, tar retries extraction using an alternative decompressor:

 1. Another compression program supported by tar is able to handle this
 compression format.
 2. The compression program was not explicitly requested in the command
 line by the use of such options as -z, -j, etc.

For example, if `compress' is not available, tar will try `gzip'.

version 1.24 - Sergey Poznyakoff, 2010-10-24

* The --full-time option.

New command line option `--full-time' instructs tar to output file
time stamps to the full resolution.

* Bugfixes.

** More reliable directory traversal when creating archives

Tar now checks for inconsistencies caused when a file system is
modified while tar is creating an archive.  In the new approach, tar
maintains a cache of file descriptors to directories, so it uses more
file descriptors than before, but it adjusts to system limits on
the number of file descriptors.  Tar also takes more care when
a file system is modified while tar is extracting from an archive.

The new checks are implemented via the openat and related calls
standardized by POSIX.1-2008.  On an older system where these calls do
not exist or do not return useful results, tar emulates the calls at
some cost in efficiency and reliability.

** Symbolic link attributes

When extracting symbolic links, tar now restores attributes such as
last-modified time and link permissions, if the operating system
supports this.  For example, recent versions of the Linux kernel
support setting times on symlinks, and some BSD kernels also support
symlink permissions.

** --dereference consistency

The --dereference (-h) option now applies to files that are copied
into or out of archives, independently of other options.  For example,
if F is a symbolic link and archive.tar contains a regular-file member
also named F, "tar --overwrite -x -f archive.tar F" now overwrites F
itself, rather than the file that F points to.  (To overwrite the file
that F points to, add the --dereference (-h) option.)  Formerly,
--dereference was intended to apply only when using the -c option, but
the implementation was not consistent.

Also, the --dereference option no longer affects accesses to other
files, such as archives and time stamp files.  Symbolic links to these
files are always followed.  Previously, the links were usually but not
always followed.

** Spurious error diagnostics on broken pipe.

When receiving SIGPIPE, tar would exit with error status and
"write error" diagnostics. In particular, this occurred if
invoked as in the example below:

   tar tf archive.tar | head -n 1

** --remove-files

`Tar --remove-files' failed to remove a directory which contained
symlinks to another files within that directory.

** --test-label behavior

In case of a mismatch, `tar --test-label LABEL' exits with code 1,
not 2 as it did in previous versions.

The `--verbose' option used with `--test-label' provides additional
diagnostics.

Several volume labels may be specified in a command line, e.g.:

   tar --test-label -f archive 'My volume' 'New volume' 'Test volume'

In this case, tar exits with code 0 if any one of the arguments
matches the actual volume label.

** --label used with --update

The `--label' option can be used with `--update' to prevent accidental
update of an archive:

  tar -rf archive --label 'My volume' .

This did not work in previous versions, in spite of what the docs said.

** --record-size and --tape-length (-L) options

Usual size suffixes are allowed for these options.  For example,
-L10k stands for a 10 kilobyte tape length.

** Fix dead loop on extracting existing symlinks with the -k option.
2010-12-12 13:10:39 +00:00
tez
aa33d46bfb Update gtar to 1.23 - fixes CVE2010-0624
Also:
# Improved record size autodetection
# Use of lseek on seekable archives
# New command line option --warning
# New command line option --level
# Improved behavior if some files were removed during incremental dumps
# Modification times of PAX extended headers
# Time references in the --pax-option argument
# Augmented environment of the --to-command script
# Bugfixes:
    * Fix handling of hard link targets by -c --transform
    * Fix hard links recognition with -c --remove-files
    * Fix restoring files from backup (debian bug #508199)
    * Correctly restore modes and permissions on existing directories
    * The --remove-files option removes files only if they were succesfully stored in the archive
    * Fix storing and listing of the volume labels in POSIX format
    * Improve algorithm for splitting long file names (ustar format)
2010-03-23 19:00:10 +00:00
wiz
dacb527287 Update to 1.22:
version 1.22 - Sergey Poznyakoff, 2009-03-05

* Support for xz compression

Tar uses xz for compression if one of the following conditions is met:

 1. The option --xz or -J (see below) is used.
 2. The xz binary is set as compressor using --use-compress-program option.
 3. The file name of the archive being created ends in `.xz' and
 auto-compress option (-a) is used.

Xz is used for decompression if one of the following conditions is met:

 1. The option --xz or -J is used.
 2. The xz binary is set as compressor using --use-compress-program option.
 3. The file is recognized as xz compressed stream data.

* Short option -J reassigned as a short equivalent of --xz

* New option -I

The -I option is assigned as a short equivalent for
--use-compress-program.

* The --no-recursive option works in incremental mode.


version 1.21 - Sergey Poznyakoff, 2008-12-27

* New short option -J

A shortcut for --lzma.

* New option --lzop

* New option --no-auto-compress

Cancels the effect of previous --auto-compress (-a) option.

* New option --no-null

Cancels the effect of previous --null option.

* Compressed format recognition

If tar is unable to determine archive compression format, it falls
back to using archive suffix to determine it.

* VCS support.

Using --exclude-vcs handles also files used internally by Bazaar,
Mercurial and Darcs.

* Transformation scope flags

Name transformation expressions understand additional flags that
control type of archive members affected by them.  The flags are:

 - r
   Apply transformation to regular archive members.

 - s
   Apply transformation to symbolic link targets.

 - h
   Apply transformation to hard link targets.

Corresponding upper-case letters negate the meaning, so that
`H' means ``do not apply transformation to hard link targets.''

The scope flags are listed in the third part of an `s' expression,
e.g.:

   tar --transform 's|^|/usr/local/|S'

Default is `rsh', which means that transformations are applied to
both regular archive members and to the targets of symbolic and hard
links.  If several transform expressions are used, the default flags
can be changed using `flags=' statement before the expressions, e.g.:

   tar --transform 'flags=S;s|^|/usr/local/|S'

* Bugfixes

** The --null option disabled handling of tar options in list files.  This
is fixed.
** Fixed record size autodetection.  If detected record size differs from
the expected value (either default, or set on the command line), tar
always prints a warning if verbosity level is set to 1 or greater,
i.e. if either -t or -v option is given.
2009-08-16 13:53:32 +00:00
tnn
09e93a8355 Catch up with gtar-base-1.20. 2008-05-18 01:48:58 +00:00
joerg
ffafa4a9e6 Add DESTDIR support. From Blair Sadewitz by mail. 2007-07-19 14:54:04 +00:00
rillig
dd7540a1d2 Fixed pkglint warnings. 2006-06-18 07:04:15 +00:00
jlam
741aecb607 * Nuke all references to and definitions of INFO_DIR in package Makefiles
and replace with appropriate references to PKGINFODIR instead.

* Properly account for split info files during installation.

* Move info file listings directly into the package PLISTs.

This fixes info-file-related PLIST problems.
2006-03-20 18:15:37 +00:00
jlam
9c8b5ede43 Point MAINTAINER to pkgsrc-users@NetBSD.org in the case where no
developer is officially maintaining the package.

The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list).  Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
2006-03-04 21:28:51 +00:00
reed
1dd2209eb4 Fix typo: INFODIR should be INFO_DIR for INSTALLATION_DIRS.
I made this typo in September.

Noticed from Jonathan Perkin's bulk build.

INFODIR is defined in bsd.own.mk and I didn't even know about
bsd.info.mk. (Is that used? If so, maybe INFODIR=${PREFIX}/${INFO_DIR}.)
2006-01-26 18:19:03 +00:00
reed
83276f6338 Fix problem where this installed a tarball that was included in
the extracted tarball.

Use INSTALLATION_DIRS to create ${INFODIR}.
Don't install tar-info-1 and tar-info-2.
Just install tar.info which has it all.
Bump PKGREVISION.
2005-09-22 16:48:34 +00:00
tv
f816d81489 Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used. 2005-04-11 21:44:48 +00:00
agc
f1a84844c6 Add RMD160 digests in addition to SHA1 ones. 2005-02-23 14:45:22 +00:00
recht
17d722c669 update to gtar 1.15.1
changes:
- enable installation of grmt

changes in gtar:
version 1.15.1 - Sergey Poznyakoff, 2004-12-21

This version fixes a bug introduced in 1.15 which caused
tar to refuse to extract files from standard input.

version 1.15 - Sergey Poznyakoff, 2004-12-20

* Compressed archives are recognised automatically, it is no longer
necessary to specify -Z, -z, or -j options to read them. Thus, you can
now run `tar tf archive.tar.gz'.

* When restoring incremental dumps, --one-file-system option
prevents directory hierarchies residing on different devices
from being purged.

With the previous versions of tar it was dangerous to create
incremental dumps with --one-file-system option, since they
would recursively remove mount points when restoring from the
back up. This change fixes the bug.

* Renamed --strip-path to --strip-components for consistency with
the GNU convention.

* Skipping archive members is sped up if the archive media supports
seeks.

* Restore script starts restoring only if it is given --all (-a) option,
or some patterns. This is to prevent accidental restores.

* `tar --verify' prints a warning if during archive creation some of
the file names had their prefixes stripped off.

* New option --exclude-caches instructs tar to exclude cache directories
automatically on archive creation. Cache directories are those
containing a standardized tag file, as specified at:

	http://www.brynosaurus.com/cachedir/spec.html

* New configure option --with-rmt allows to specify full path name to
the `rmt' utility. This supercedes DEFAULT_RMT_COMMAND variable
introduced in version 1.14

* New configure variable DEFAULT_RMT_DIR allows to specify the directory
where to install `rmt' utility. This is necessary since modifying
--libexecdir as was suggested for version 1.14 produced a side effect: it
also modified installation prefix for backup scripts (if
--enable-backup-scripts was given).

* Bugfixes:
** Fixed flow in recognizing files to be included in incremental dumps.
** Correctly recognize sparse archive members when used with -T option.
** GNU multivolume headers cannot store filenames longer than 100 characters.
Do not allow multivolume archives to begin with such filenames.
** If a member with link count > 2 was stored in the archive twice,
previous versions of tar were not able to extract it, since they
were trying to link the file to itself, which always failed and
lead to removing the already extracted copy. Preserve the first
extracted copy in such cases.
** Restore script was passing improper argument to tar --listed option (which
didn't affect the functionality, but was logically incorrect).
** Fixed verification of created archives.
** Fixed unquoting of file names containing backslash escapes (previous
versions failed to recognize \a and \v).
** When attempting to delete a non-existing member from the archive, previous
versions of tar used to overwrite last archive block with zeroes.
2005-01-09 22:52:13 +00:00
wiz
bf6eb384e0 Update gtar packages to 1.14:
XXX: man page not updated (didn't find new version of suse
gtar man page which we're using in the package)

version 1.14 - Sergey Poznyakoff, 2004-05-11

* Added support for POSIX.1-2001 and ustar archive formats.
* New option --format allows to select the output archive format
* The default output format can be selected at configuration time
  by presetting the environment variable DEFAULT_ARCHIVE_FORMAT.
  Allowed values are GNU, V7, OLDGNU and POSIX.
* New option --strip-path allows to cut off a given number of
  path elements from the name of the file being extracted.

* New options --index-file, --no-overwrite-dir.  The --overwrite-dir
  option is now the default; use --no-overwrite-dir if you prefer
  the previous default behavior.

* The semantics of -o option is changed. When extracting, it
  does the same as --no-same-owner GNU tar option. This is compatible
  with UNIX98 tar. Otherwise, its effect is the same as that of
  --old-archive option. This latter is deprecated and will be removed
  in future.

* New option --check-links prints a message if not all links are dumped
  for a file being archived. This corresponds to the UNIX98 -l option.
  The current semantics of the -l option is retained for compatibility
  with previous releases, however such usage is strongly deprecated as
  the option will change to its UNIX98 semantics in the future releases.

* New option --occurrence[=N] can be used in conjunction with one of
  the subcommands --delete, --diff, --extract or --list when a list of
  files is given either on the command line or via -T option. This
  option instructs tar to process only the Nth occurrence of each named
  file. N defaults to 1, so `tar -x -f archive --occurrence filename'
  extracts the first occurrence of `filename' from `archive'
  and terminates without scanning to the end of the archive.

* New option --pax-option allows to control the handling of POSIX
  keywords in `pax' extended headers. It is equivalent to `pax'
  -o option.

* --incremental and --listed-incremental options work correctly on
  individual files, as well as on directories.

* New scripts: backup (replaces old level-0 and level-1) and restore.
The scripts are compiled and installed if --enable-backup-scripts
option is given to configure.

* By default tar searches "rmt" utility in "$prefix/libexec/rmt",
which is consistent with the location where the version of "rmt"
included in the package is installed. Previous versions of tar
used "/etc/rmt". To install "rmt" to its traditional location,
run configure with option --libexecdir=/etc. Otherwise, if you
already have rmt installed and wish to use it, instead of the
shipped in version, set the variable DEFAULT_RMT_COMMAND to
the full path name of the utility, e.g. ./configure
DEFAULT_RMT_COMMAND=/etc/rmt.

Notice also that the full path name of the "rmt" utility to
use can be set at runtime, by giving option --rmt-command to
tar.

* Removed obsolete command line options:
** --absolute-paths superseded by --absolute-names
** --block-compress is not needed any longer
** --block-size superseded by --blocking-factor
** --modification-time superseded by --touch
** --read-full-blocks superseded by --read-full-records
** --record-number superseded by --block-number
** --version-control superseded by --backup

* New message translations fi (Finnish), gl (Galician), hr (Croatian),
  hu (Hungarian), ms (Malaysian), nb (Norwegian), ro (Romanian), sk
  (Slovak), zh_CN (Chinese simplified), zh_TW (Chinese traditional).
  The code 'no' for Norwegian (Bokmål) has been withdrawn; use 'nb' instead.
2004-09-27 16:12:04 +00:00
recht
acf63b6eee Enable pkgviews installation. 2004-05-18 11:58:04 +00:00
reed
31a505a7e4 Install to ${PREFIX}/${INFO_DIR} instead of ${PREFIX}/info. 2004-05-03 21:32:28 +00:00
xtraeme
6c39a6eab6 bl3ify 2004-03-11 18:03:49 +00:00
seb
51b4487a57 Remove info files from PLIST files. 2004-01-02 16:03:11 +00:00
seb
0d7159e7bd USE_NEW_TEXINFO is unnecessary now. 2003-08-09 10:27:40 +00:00
grant
91f00f1cbc s/netbsd.org/NetBSD.org/ 2003-07-17 21:21:03 +00:00
seb
47da12dc01 Convert to USE_NEW_TEXINFO. 2003-06-25 22:01:11 +00:00
jschauma
e366d0c694 Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages.
Should anybody feel like they could be the maintainer for any of thewe packages,
please adjust.
2003-06-02 01:15:31 +00:00
wiz
28a4483bc7 NO_PATCH is deprecated, says pkglint. Remove it. 2003-03-28 21:14:10 +00:00
bouyer
47542eb173 Update gtar packages to 1.13.25, with security fixes from redhat.
Summary of changes (see NEWS and Changelog from the distribution for details):
- don't allow absolute paths, and path containing ../
* New option --overwrite-dir
* New option --recursion (the default) that is the inverse of --no-recursion.
* New options --anchored, --ignore-case, --wildcards,
  --wildcards-match-slash, and their negations (e.g., --no-anchored).
  Along with --recursion and --no-recursion, these options control how
  exclude patterns are interpreted.
* The default interpretation of exclude patterns is now --no-anchored
  --no-ignore-case --recursion --wildcards --wildcards-match-slash.
* The --no-recursion option now affects extraction too.
* New options --no-same-owner, --no-same-permissions.
* New option -y or --bzip2 for bzip2 compression, by popular request.
2002-11-20 16:57:54 +00:00
jlam
1c57323789 Merge packages from the buildlink2 branch back into the main trunk that
have been converted to USE_BUILDLINK2.
2002-08-25 21:48:57 +00:00
seb
66111c6d15 Introduce new framework for handling info files generation and installation.
Summary of changes:
- removal of USE_GTEXINFO
- addition of mk/texinfo.mk
- inclusion of this file in package Makefiles requiring it
- `install-info' substituted by `${INSTALL_INFO}' in PLISTs
- tuning of mk/bsd.pkg.mk:
    removal of USE_GTEXINFO
    INSTALL_INFO added to PLIST_SUBST
    `${INSTALL_INFO}' replace `install-info' in target rules
    print-PLIST target now generate `${INSTALL_INFO}' instead of `install-info'
- a couple of new patch files added for a handful of packages
- setting of the TEXINFO_OVERRIDE "switch" in packages Makefiles requiring it
- devel/cssc marked requiring texinfo 4.0
- a couple of packages Makefiles were tuned with respect of INFO_FILES and
  makeinfo command usage

See -newly added by this commit- section 10.24 of Packages.txt for
further information.
2002-02-18 15:14:00 +00:00
jlam
139241c40c Use auto-extract code for .shar files. 2002-01-27 18:32:32 +00:00
zuntum
b427eb87ce Move pkg/ files into package's toplevel directory 2001-10-31 20:24:14 +00:00
veego
63ad910dee SVR4 packages have a limit of 9 chars for a package name.
The automatic truncation in gensolpkg doesn't work for packages which
have the same package name for the first 5-6 chars.
e.g. amanda-server and amanda-client would be named amanda and amanda.
Now, we add a SVR4_PKGNAME and use amacl for amanda-client and amase for
amanda-server.
All svr4 packages also have a vendor tag, so we have to reserve some chars
for this tag, which is normaly 3 or 4 chars. Thats why we can only use 6
or 5 chars for SVR4_PKGNAME. I used 5 for all the packages, to give the
vendor tag enough room.
All p5-* packages and a few other packages have now a SVR4_PKGNAME.
2001-10-18 15:20:01 +00:00
agc
871c5f4103 Move to sha1 digests, and add distfile sizes. 2001-04-18 11:21:02 +00:00
agc
4274f13ce5 + move the distfile digest/checksum value from files/md5 to distinfo
+ move the patch digest/checksum values from files/patch-sum to distinfo
2001-04-17 10:10:18 +00:00
wiz
c53fae8ea1 Update to new COMMENT style: COMMENT var in Makefile instead of pkg/COMMENT. 2001-02-16 13:15:24 +00:00
abs
df05aef71f Strip trailing '.', and/or leading '(a|an) ' 2000-01-05 15:37:50 +00:00
kim
0898a239ab What do you mean "did I ever test this"... 1999-09-19 19:11:32 +00:00
kim
31e940df0c Info pages for GNU tar. 1999-09-18 15:08:50 +00:00