--- tar-1.15.1.orig/po/de.po +++ tar-1.15.1/po/de.po @@ -193,7 +193,7 @@ "Arbeiten mit einem Bandlaufwerk, Kommandos können von einem anderen Prozess " "stammen.\n" "\n" -" --version Verionsinformation ausgeben\n" +" --version Versionsinformation ausgeben\n" " --help Diesen Hilfetext ausgeben\n" #: rmt/rmt.c:267 @@ -534,7 +534,7 @@ #: src/create.c:1320 #, fuzzy, c-format msgid "Missing links to '%s'.\n" -msgstr " Verküpfung auf %s\n" +msgstr " Verknüpfung auf %s\n" #: src/create.c:1387 #, c-format @@ -716,7 +716,7 @@ #: src/list.c:644 #, c-format msgid "Blanks in header where numeric %s value expected" -msgstr "Leerzeichen im Kopfteil, wo nummerische %s-Werte stehen sollten." +msgstr "Leerzeichen im Kopfteil, wo numerische %s-Werte stehen sollten." #: src/list.c:698 #, c-format @@ -746,7 +746,7 @@ #: src/list.c:797 #, c-format msgid "Archive contains %.*s where numeric %s value expected" -msgstr "Archiv enthält ‚%.*s‘ wo nummerische %s-Werte stehen sollten." +msgstr "Archiv enthält ‚%.*s‘ wo numerische %s-Werte stehen sollten." #: src/list.c:818 #, fuzzy, c-format @@ -760,7 +760,7 @@ #: src/list.c:1175 #, c-format msgid " link to %s\n" -msgstr " Verküpfung auf %s\n" +msgstr " Verknüpfung auf %s\n" #: src/list.c:1183 #, c-format @@ -821,7 +821,7 @@ #: src/mangle.c:113 #, c-format msgid "Symlinked %s to %s" -msgstr "Symbolischer Verküpfung von %s auf %s." +msgstr "Symbolischer Verknüpfung von %s auf %s." #: src/mangle.c:117 #, c-format --- tar-1.15.1.orig/doc/tar.texi +++ tar-1.15.1/doc/tar.texi @@ -759,7 +759,7 @@ Excluding Some Files -* controlling pattern-patching with exclude:: +* controlling pattern-matching with exclude:: * problems with exclude:: Crossing Filesystem Boundaries @@ -5019,11 +5019,10 @@ Some users are enthusiastic about @code{Amanda} (The Advanced Maryland Automatic Network Disk Archiver), a backup system developed by James da Silva @file{jds@@cs.umd.edu} and available on many Unix systems. -This is free software, and it is available at these places: +This is free software, and it is available at: @smallexample -http://www.cs.umd.edu/projects/amanda/amanda.html -ftp://ftp.cs.umd.edu/pub/amanda +http://www.amanda.org @end smallexample @ifclear PUBLISH @@ -6186,11 +6185,11 @@ so that such data can be more easily excluded from backups. @menu -* controlling pattern-patching with exclude:: +* controlling pattern-matching with exclude:: * problems with exclude:: @end menu -@node controlling pattern-patching with exclude +@node controlling pattern-matching with exclude @unnumberedsubsec Controlling Pattern-Matching with the @code{exclude} Options Normally, a pattern matches a name if an initial subsequence of the @@ -6490,7 +6489,7 @@ the files under those directories. The @value{op-no-recursion} option also affects how exclude patterns -are interpreted (@pxref{controlling pattern-patching with exclude}). +are interpreted (@pxref{controlling pattern-matching with exclude}). The @option{--no-recursion} and @option{--recursion} options apply to later options and operands, and can be overridden by later occurrences --- tar-1.15.1.orig/src/tar.c +++ tar-1.15.1/src/tar.c @@ -181,6 +181,7 @@ enum { ANCHORED_OPTION = CHAR_MAX + 1, + ALLOW_NAME_MANGLING_OPTION, ATIME_PRESERVE_OPTION, BACKUP_OPTION, CHECKPOINT_OPTION, @@ -528,6 +529,8 @@ {NULL, 'o', 0, 0, N_("when creating, same as --old-archive. When extracting, same as --no-same-owner"), 91 }, + {"allow-name-mangling", ALLOW_NAME_MANGLING_OPTION, 0, 0, + N_("when creating, allow GNUTYPE_NAMES mangling -- considered dangerous"), 91 }, {NULL, 0, NULL, 0, N_("Other options:"), 100 }, @@ -913,6 +916,10 @@ case 'Z': set_use_compress_program_option ("compress"); break; + + case ALLOW_NAME_MANGLING_OPTION: + allow_name_mangling_option = true; + break; case ANCHORED_OPTION: args->exclude_options |= EXCLUDE_ANCHORED; --- tar-1.15.1.orig/src/names.c +++ tar-1.15.1/src/names.c @@ -1152,11 +1152,10 @@ if (p[0] == '.' && p[1] == '.' && (ISSLASH (p[2]) || !p[2])) return 1; - do + while (! ISSLASH (*p)) { if (! *p++) return 0; } - while (! ISSLASH (*p)); } } --- tar-1.15.1.orig/src/common.h +++ tar-1.15.1/src/common.h @@ -124,6 +124,9 @@ GLOBAL bool absolute_names_option; +/* Allow GNUTYPE_NAMES type? */ +GLOBAL bool allow_name_mangling_option; + /* Display file times in UTC */ GLOBAL bool utc_option; --- tar-1.15.1.orig/src/list.c +++ tar-1.15.1/src/list.c @@ -140,6 +140,14 @@ if (!ignore_zeros_option) { + + /* + * According to POSIX tar specs, this is wrong, but on the web + * there are some tar specs that can trigger this, and some tar + * implementations create tars according to that spec. For now, + * let's not be pedantic about issuing the warning. + */ +#if 0 char buf[UINTMAX_STRSIZE_BOUND]; status = read_header (false); @@ -147,6 +155,7 @@ break; WARN ((0, 0, _("A lone zero block at %s"), STRINGIFY_BIGINT (current_block_ordinal (), buf))); +#endif break; } status = prev_status; --- tar-1.15.1.orig/src/xheader.c +++ tar-1.15.1/src/xheader.c @@ -783,6 +783,32 @@ xheader_print (xhdr, keyword, sbuf); } +static bool +decode_num (uintmax_t *num, char const *arg, uintmax_t maxval, + char const *keyword) +{ + uintmax_t u; + char *arg_lim; + + if (! (ISDIGIT (*arg) + && (errno = 0, u = strtoumax (arg, &arg_lim, 10), !*arg_lim))) + { + ERROR ((0, 0, _("Malformed extended header: invalid %s=%s"), + keyword, arg)); + return false; + } + + if (! (u <= maxval && errno != ERANGE)) + { + ERROR ((0, 0, _("Extended header %s=%s is out of range"), + keyword, arg)); + return false; + } + + *num = u; + return true; +} + static void dummy_coder (struct tar_stat_info const *st __attribute__ ((unused)), char const *keyword __attribute__ ((unused)), @@ -821,7 +847,7 @@ gid_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, TYPE_MAXIMUM (gid_t), "gid")) st->stat.st_gid = u; } @@ -903,7 +929,7 @@ size_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), "size")) st->archive_file_size = st->stat.st_size = u; } @@ -918,7 +944,7 @@ uid_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, TYPE_MAXIMUM (uid_t), "uid")) st->stat.st_uid = u; } @@ -946,7 +972,7 @@ sparse_size_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), "GNU.sparse.size")) st->stat.st_size = u; } @@ -962,10 +988,10 @@ sparse_numblocks_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, SIZE_MAX, "GNU.sparse.numblocks")) { st->sparse_map_size = u; - st->sparse_map = calloc(st->sparse_map_size, sizeof(st->sparse_map[0])); + st->sparse_map = xcalloc (u, sizeof st->sparse_map[0]); st->sparse_map_avail = 0; } } @@ -982,8 +1008,14 @@ sparse_offset_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), "GNU.sparse.offset")) + { + if (st->sparse_map_avail < st->sparse_map_size) st->sparse_map[st->sparse_map_avail].offset = u; + else + ERROR ((0, 0, _("Malformed extended header: excess %s=%s"), + "GNU.sparse.offset", arg)); + } } static void @@ -998,15 +1030,13 @@ sparse_numbytes_decoder (struct tar_stat_info *st, char const *arg) { uintmax_t u; - if (xstrtoumax (arg, NULL, 10, &u, "") == LONGINT_OK) + if (decode_num (&u, arg, SIZE_MAX, "GNU.sparse.numbytes")) { if (st->sparse_map_avail == st->sparse_map_size) - { - st->sparse_map_size *= 2; - st->sparse_map = xrealloc (st->sparse_map, - st->sparse_map_size - * sizeof st->sparse_map[0]); - } + st->sparse_map = x2nrealloc (st->sparse_map, + &st->sparse_map_size, + sizeof st->sparse_map[0]); + st->sparse_map[st->sparse_map_avail++].numbytes = u; } } --- tar-1.15.1.orig/src/create.c +++ tar-1.15.1/src/create.c @@ -590,7 +590,7 @@ xheader_store ("path", st, NULL); return write_short_name (st); } - else if (NAME_FIELD_SIZE < strlen (st->file_name)) + else if (NAME_FIELD_SIZE <= strlen (st->file_name)) return write_long_name (st); else return write_short_name (st); @@ -1256,7 +1256,7 @@ block_ordinal = current_block_ordinal (); assign_string (&st->link_name, link_name); - if (NAME_FIELD_SIZE < strlen (link_name)) + if (NAME_FIELD_SIZE <= strlen (link_name)) write_long_link (st); st->stat.st_size = 0; @@ -1490,7 +1490,7 @@ } buffer[size] = '\0'; assign_string (&st->link_name, buffer); - if (size > NAME_FIELD_SIZE) + if (size >= NAME_FIELD_SIZE) write_long_link (st); block_ordinal = current_block_ordinal (); --- tar-1.15.1.orig/src/extract.c +++ tar-1.15.1/src/extract.c @@ -1065,7 +1065,7 @@ } if (S_ISDIR (st.st_mode)) { - mode = st.st_mode & ~ current_umask; + mode = st.st_mode; goto directory_exists; } } @@ -1085,11 +1085,17 @@ } directory_exists: + /* Now if same_permissions_option > 0, `mode' is the actual + * permissions of the existing directory. Otherwise `mode' + * may be wrong but we don't use it in that case. + */ if (status == 0 || old_files_option == DEFAULT_OLD_FILES || old_files_option == OVERWRITE_OLD_FILES) delay_set_stat (file_name, ¤t_stat_info.stat, - MODE_RWX & (mode ^ current_stat_info.stat.st_mode), + (0 < same_permissions_option + ? MODE_RWX & (mode ^ current_stat_info.stat.st_mode) + : 0), (status == 0 ? ARCHIVED_PERMSTATUS : UNKNOWN_PERMSTATUS)); @@ -1101,7 +1107,13 @@ break; case GNUTYPE_NAMES: - extract_mangle (); + if (allow_name_mangling_option) { + extract_mangle (); + } + else { + ERROR ((0, 0, _("GNUTYPE_NAMES mangling ignored"))); + skip_member (); + } break; case GNUTYPE_MULTIVOL: --- tar-1.15.1.orig/tests/append.at +++ tar-1.15.1/tests/append.at @@ -0,0 +1,34 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2004 Free Software Foundation, Inc. + +# This program 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. + +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +AT_SETUP([append]) +AT_KEYWORDS([append]) + +AT_TAR_CHECK([touch file1 + touch file2 + tar cf archive file1 + tar rf archive file2 + tar tf archive], + [0], +[file1 +file2 +]) + +AT_CLEANUP --- tar-1.15.1.orig/tests/genfile.c +++ tar-1.15.1/tests/genfile.c @@ -60,8 +60,8 @@ /* Block buffer for sparse file */ char *buffer; -static const char *argp_program_version = "genfile (" PACKAGE ") " VERSION; -static const char *argp_program_bug_address = "<" PACKAGE_BUGREPORT ">"; +const char *argp_program_version = "genfile (" PACKAGE ") " VERSION; +const char *argp_program_bug_address = "<" PACKAGE_BUGREPORT ">"; static char doc[] = N_("genfile generates data files for GNU paxutils test suite"); static struct argp_option options[] = { --- tar-1.15.1.orig/debian/dirs +++ tar-1.15.1/debian/dirs @@ -0,0 +1,4 @@ +etc +sbin +usr/share/lintian/overrides +usr/share/man/man8 --- tar-1.15.1.orig/debian/docs +++ tar-1.15.1/debian/docs @@ -0,0 +1,6 @@ +AUTHORS +ChangeLog +ChangeLog.1 +NEWS +README +THANKS --- tar-1.15.1.orig/debian/mime +++ tar-1.15.1/debian/mime @@ -0,0 +1,2 @@ +application/x-tar; /bin/tar tvf -; print=/bin/tar tvf - | print text/plain:-; copiousoutput +application/x-gtar; /bin/tar tvzf -; print=/bin/tar tvzf - | print text/plain:-; copiousoutput --- tar-1.15.1.orig/debian/control +++ tar-1.15.1/debian/control @@ -0,0 +1,20 @@ +Source: tar +Section: base +Priority: required +Maintainer: Bdale Garbee +Build-Depends: debhelper (>> 3.0.0), gettext +Standards-Version: 3.6.1.0 + +Package: tar +Architecture: any +Pre-Depends: ${shlibs:Depends} +Essential: yes +Conflicts: cpio (<= 2.4.2-38) +Replaces: cpio +Suggests: bzip2 +Description: GNU tar + Tar is a program for packaging a set of files as a single archive in tar + format. The function it performs is conceptually similar to cpio, and to + things like PKZIP in the DOS world. It is heavily used by the Debian package + management system, and is useful for performing system backups and exchanging + sets of files with others. --- tar-1.15.1.orig/debian/prerm +++ tar-1.15.1/debian/prerm @@ -0,0 +1,11 @@ +#!/bin/sh -e + +if [ "$1" = remove ]; then + install-info --quiet --remove tar + if test -L /sbin/rmt && test /sbin/rmt -ef /usr/sbin/rmt; then + rm -f /sbin/rmt + fi + update-alternatives --remove rmt /usr/sbin/rmt-tar +fi + +#DEBHELPER# --- tar-1.15.1.orig/debian/rmt.8 +++ tar-1.15.1/debian/rmt.8 @@ -0,0 +1,223 @@ +.\" Copyright (c) 1983, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" 4. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)rmt.8 8.2 (Berkeley) 12/11/93 +.\" +.Dd December 11, 1993 +.Dt RMT 8 +.Os BSD 4.2 +.Sh NAME +.Nm rmt +.Nd remote magtape protocol module +.Sh SYNOPSIS +.Nm rmt +.Sh DESCRIPTION +.Nm Rmt +is a program used by tar, cpio, mt, and the remote dump and restore +programs in manipulating a magnetic tape drive through an interprocess +communication connection. +.Nm Rmt +is normally started up with an +.Xr rexec 3 +or +.Xr rcmd 3 +call or the +.Xr rsh 1 +command. +.Pp +The +.Nm rmt +program accepts requests specific to the manipulation of +magnetic tapes, performs the commands, then responds with +a status indication. All responses are in +.Tn ASCII +and in +one of two forms. +Successful commands have responses of: +.Bd -filled -offset indent +.Sm off +.Sy A Ar number No \en +.Sm on +.Ed +.Pp +.Ar Number +is an +.Tn ASCII +representation of a decimal number. +Unsuccessful commands are responded to with: +.Bd -filled -offset indent +.Sm off +.Xo Sy E Ar error-number +.No \en Ar error-message +.No \en +.Xc +.Sm on +.Ed +.Pp +.Ar Error-number +is one of the possible error +numbers described in +.Xr intro 2 +and +.Ar error-message +is the corresponding error string as printed +from a call to +.Xr perror 3 . +The protocol is comprised of the +following commands, which are sent as indicated - no spaces are supplied +between the command and its arguments, or between its arguments, and +.Ql \en +indicates that a newline should be supplied: +.Bl -tag -width Ds +.Sm off +.It Xo Sy \&O Ar device +.No \en Ar mode No \en +.Xc +Open the specified +.Ar device +using the indicated +.Ar mode . +.Ar Device +is a full pathname and +.Ar mode +is an +.Tn ASCII +representation of a decimal +number suitable for passing to +.Xr open 2 . +If a device had already been opened, it is +closed before a new open is performed. +.It Xo Sy C Ar device No \en +.Xc +Close the currently open device. The +.Ar device +specified is ignored. +.It Xo Sy L +.Ar offset No \en +.Ar whence No \en +.Xc +.Sm on +Perform an +.Xr lseek 2 +operation using the specified parameters. +The response value is that returned from the +.Xr lseek +call. +.Sm off +.It Sy W Ar count No \en +.Sm on +Write data onto the open device. +.Nm Rmt +reads +.Ar count +bytes from the connection, aborting if +a premature end-of-file is encountered. +The response value is that returned from +the +.Xr write 2 +call. +.Sm off +.It Sy R Ar count No \en +.Sm on +Read +.Ar count +bytes of data from the open device. +If +.Ar count +exceeds the size of the data buffer (10 kilobytes), it is +truncated to the data buffer size. +.Nm rmt +then performs the requested +.Xr read 2 +and responds with +.Sm off +.Sy A Ar count-read No \en +.Sm on +if the read was +successful; otherwise an error in the +standard format is returned. If the read +was successful, the data read is then sent. +.Sm off +.It Xo Sy I Ar operation +.No \en Ar count No \en +.Xc +.Sm on +Perform a +.Dv MTIOCOP +.Xr ioctl 2 +command using the specified parameters. +The parameters are interpreted as the +.Tn ASCII +representations of the decimal values +to place in the +.Ar mt_op +and +.Ar mt_count +fields of the structure used in the +.Xr ioctl +call. The return value is the +.Ar count +parameter when the operation is successful. +.It Sy S +Return the status of the open device, as +obtained with a +.Dv MTIOCGET +.Xr ioctl +call. If the operation was successful, +an ``ack'' is sent with the size of the +status buffer, then the status buffer is +sent (in binary). +.El +.Sm on +.Pp +Any other command causes +.Nm rmt +to exit. +.Sh DIAGNOSTICS +All responses are of the form described above. +.Sh SEE ALSO +.Xr tar 1 , +.Xr cpio 1 , +.Xr mt 1 , +.Xr rsh 1 , +.Xr rcmd 3 , +.Xr rexec 3 , +.Xr mtio 4 , +.Xr rdump 8 , +.Xr rrestore 8 +.Sh BUGS +People should be discouraged from using this for a remote +file access protocol. +.Sh HISTORY +The +.Nm +command appeared in +.Bx 4.2 . --- tar-1.15.1.orig/debian/rules +++ tar-1.15.1/debian/rules @@ -0,0 +1,93 @@ +#!/usr/bin/make -f + +# This is the debhelper compatability version to use. +export DH_COMPAT=2 + +DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) +CONFARGS = --host=$(DEB_HOST_GNU_TYPE) +endif + +configure: configure-stamp +configure-stamp: + dh_testdir + + RSH="/usr/bin/rsh" CFLAGS="-O2 -g -Wall" ./configure \ + --prefix=/usr --infodir=`pwd`/debian/tar/usr/share/info \ + --libexecdir=/usr/sbin $(CONFARGS) + + touch configure-stamp + +build: configure-stamp build-stamp +build-stamp: + dh_testdir + + $(MAKE) +ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) + $(MAKE) check +endif + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + -$(MAKE) distclean + + -test -r /usr/share/misc/config.sub && \ + cp -f /usr/share/misc/config.sub config/config.sub + -test -r /usr/share/misc/config.guess && \ + cp -f /usr/share/misc/config.guess config/config.guess + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + make install bindir=`pwd`/debian/tar/bin prefix=`pwd`/debian/tar/usr \ + libexecdir=`pwd`/debian/tar/usr/sbin + install -m 755 debian/rmt.sh debian/tar/etc/rmt + mv debian/tar/usr/sbin/rmt debian/tar/usr/sbin/rmt-tar + install -o root -g root -m 0644 debian/tar.lintian \ + debian/tar/usr/share/lintian/overrides/tar + +# Build architecture-independent files here. +binary-indep: build install + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installdocs + mv -f debian/tar/usr/share/doc/tar/ChangeLog \ + debian/tar/usr/share/doc/tar/changelog + mv -f debian/tar/usr/share/doc/tar/ChangeLog.1 \ + debian/tar/usr/share/doc/tar/changelog.1 + dh_installexamples + dh_installmenu + dh_installcron + dh_installman debian/tar.1 debian/rmt.8 + mv debian/tar/usr/share/man/man8/rmt.8 \ + debian/tar/usr/share/man/man8/rmt-tar.8 + dh_installinfo + rm -f debian/tar/usr/share/info/dir* + dh_installmime + dh_installchangelogs #CHANGELOGS# + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure --- tar-1.15.1.orig/debian/tar.1 +++ tar-1.15.1/debian/tar.1 @@ -0,0 +1,311 @@ +.\" @(#)tar.1 1.11.1 93/19/22 PJV; +.TH TAR 1 "22 September 1993" +.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 \-\-anchored +force exclusion patterns to match initial subsequences +.TP +.B \-\-atime\-preserve +don't change access times on dumped files +.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 \-\-exclude=PATTERN +exclude files matching PATTERN +.TP +.B \-f, \-\-file [HOSTNAME:]F +use archive file or device F (default "\-", 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 \-\-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 \-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 \-l, \-\-one\-file\-system +stay in local file system when creating an archive +.TP +.B \-L, \-\-tape\-length N +change tapes after writing N*1024 bytes +.TP +.B \-m, \-\-touch +don't extract file modified time +.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 \-\-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 \-o, \-\-old\-archive, \-\-portability +write a V7 format archive, rather than ANSI format +.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 +.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 +.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 BUGS +.LP +The GNU folks, in general, abhor man pages, and create info documents instead. +The maintainer of tar falls into this category. This man page is neither +complete, nor current, and was included in the Debian Linux packaging of tar +entirely to reduce the frequency with which the lack of a man page gets +reported as a bug in our defect tracking system. + +If you really want to understand tar, then you should run info and read the +tar info pages, or use the info mode in emacs. + +Problems with this man page should be files as bugs against the Debian tar +package, not submitted to the tar maintainers. --- tar-1.15.1.orig/debian/conffiles +++ tar-1.15.1/debian/conffiles @@ -0,0 +1 @@ +/etc/rmt --- tar-1.15.1.orig/debian/changelog +++ tar-1.15.1/debian/changelog @@ -0,0 +1,517 @@ +tar (1.15.1-2ubuntu2.2) dapper-security; urgency=low + + * SECURITY UPDATE: directory traversal with malicious tar files. + * src/names.c: adjust dot dot checking, patched inline. + * References + CVE-2007-4131 + + -- Kees Cook Tue, 28 Aug 2007 09:45:12 -0700 + +tar (1.15.1-2ubuntu2.1) dapper-security; urgency=low + + * SECURITY UPDATE: files can be overwritten/renamed in any writable location + in the filesystem via GNUTYPE_NAMES type. + * src/extract.c: disable GNUTYPE_NAMES type processing by default since it + allows for immediate symlink creation and renames. + * src/common.h, src/tar.c: add --allow-name-mangling option to restore + default behavior. + * References + http://archives.neohapsis.com/archives/fulldisclosure/2006-11/0344.html + + -- Kees Cook Wed, 22 Nov 2006 20:21:52 -0800 + +tar (1.15.1-2ubuntu2) dapper; urgency=low + + * Do not mess with directory permissions when extracting + without -p. Malone 19540. + + -- Ian Jackson Wed, 5 Apr 2006 17:25:15 +0100 + +tar (1.15.1-2ubuntu1) dapper; urgency=low + + * SECURITY UPDATE: Arbitrary code execution with crafted tar files. + * src/xheader.c: + - Add a new function decode_num() which wraps xstrtoumax() and adds + boundary and sanity checking. + - Use decode_num() instead of xstrtoumax() in the code to avoid buffer + overflows on excessively large field values like GNU.sparse.numblocks. + - Patch taken from upstream CVS. + * CVE-2006-0300 + + -- Martin Pitt Thu, 23 Feb 2006 11:07:05 +0100 + +tar (1.15.1-2) unstable; urgency=low + + * patch from LaMont to fix gcc-4.0 error in the test suite, + closes: #308815, #310830 + * patch for de.po from Jens Seidel, closes: #313900 + * fix amanda upstream URL in the info pages, closes: #310158 + * patch from NIIBE Yutaka to support cross builds, closes: #283723 + + -- Bdale Garbee Tue, 14 Jun 2005 23:42:40 -0600 + +tar (1.15.1-1) unstable; urgency=low + + * new upstream version, closes: #292255, #287251, #255067 + * fetch tests/append.at from CVS since it was omitted from the 1.15.1 + tarball, and update the regression test invocation in debian/rules + * tweaks to man page, closes: #265615 + * add --libexecdir definition to configure call, closes: #307070, #291068 + * stop trying to link /sbin/rmt, closes: #287217, #156550 + * add --owner to man page, closes: #204848 + * only mention --totals once in man page, closes: #288002 + + -- Bdale Garbee Sun, 8 May 2005 22:41:15 -0600 + +tar (1.14-2) unstable; urgency=low + + * patch from Paul Eggert that does a better job of eliminating the + dependency on (buggy) valloc, closes: #234422, #248897 + * patch for typo in upstream po/de.po, closes: #154511 + * switch from dh_installmanpages to dh_installman + + -- Bdale Garbee Tue, 3 Aug 2004 08:22:17 -0600 + +tar (1.14-1) unstable; urgency=low + + * new upstream version, closes: #252491, #242231 + * eliminate autoconf and automake build dependencies + * fix a bash-ism in the prerm for POSIX shell users + * change valloc to malloc when allocating record_start, closes: #234422 + + -- Bdale Garbee Mon, 2 Aug 2004 08:02:18 -0700 + +tar (1.13.93-4) unstable; urgency=high + + * patch to stop issuing lone zero block warnings, closes: #235820 + * patch to clean up hyphenation in man page, closes: #185670 + * clean up manpage discussion of exclude and exclude-from, closes: #146196 + * turn on regression tests in the build process + + -- Bdale Garbee Sat, 24 Apr 2004 15:38:32 -0600 + +tar (1.13.93-3) unstable; urgency=high + + * patch from upstream converts lone zero block errors to warnings, + closes: #235821 + + -- Bdale Garbee Fri, 12 Mar 2004 17:02:47 -0700 + +tar (1.13.93-2) unstable; urgency=high + + * recover portion of patch from Ingo Saitz included in 1.13.92-4 that got + lost when merging 1.13.93 upstream (argh!), closes: 230910 + + -- Bdale Garbee Wed, 3 Mar 2004 13:22:49 -0700 + +tar (1.13.93-1) unstable; urgency=low + + * new upstream version + + -- Bdale Garbee Sat, 28 Feb 2004 20:10:13 -0700 + +tar (1.13.92-5) unstable; urgency=low + + * patch from Paul Eggert to revert bogus behavior where POSIXLY_CORRECT + set in the environment forced 'pax' format archives, closes: #230872 + * add a lintian override for rmt's man page, since delivering it as an + alternative makes the filename no longer match the script and symlink + delivered for the binary + + -- Bdale Garbee Sun, 15 Feb 2004 16:03:20 -0700 + +tar (1.13.92-4) unstable; urgency=low + + * patch from Ingo Saitz to avoid creating archives with shortnames of 100 + characters, since it can cause dpkg problems, closes: #230910 + * fix typo in info page, closes: #222569 + + -- Bdale Garbee Thu, 12 Feb 2004 01:17:10 -0700 + +tar (1.13.92-3) unstable; urgency=low + + * freshen build dependencies to use automaken + * lose /usr/share/info/dir*gz, closes: #230418 + * reinstate content for mime-support, closes: #111893 + * implement alternatives for rmt, the version provided with dump will get + higher priority than the one in tar since it's better - see #183901 + + -- Bdale Garbee Sat, 31 Jan 2004 16:55:29 -0700 + +tar (1.13.92-2) unstable; urgency=low + + * patches from CVS to stop stripping './' prefix from filenames, and to fix + --no-recursion, closes: #230431, #230434 + + -- Bdale Garbee Sat, 31 Jan 2004 01:11:04 -0700 + +tar (1.13.92-1) unstable; urgency=low + + * new upstream version, closes: #229827 + + -- Bdale Garbee Fri, 30 Jan 2004 02:02:08 -0700 + +tar (1.13.25-6) unstable; urgency=low + + * accept patch from Goswin Brederlow to hard-code RSH definition in rules + file, eliminating rsh-client from build deps, closes: #185594, #200042 + * patch from Marc SCHAEFER to fix symlink extraction + as empty files, closes: #149532 + + -- Bdale Garbee Sun, 14 Sep 2003 10:55:42 -0600 + +tar (1.13.25-5) unstable; urgency=low + + * include fresher config.sub/guess, update in debian/rules, closes: #165778 + + -- Bdale Garbee Tue, 22 Oct 2002 16:09:43 -0600 + +tar (1.13.25-4) unstable; urgency=high + + * apply patch for path vulnerabilities documented in CVE CAN-2002-0399, + make urgency high since this is a security issue, closes: #163152 + * include improved tar.1 man page from Andrew Moise + + -- Bdale Garbee Wed, 16 Oct 2002 11:16:44 -0600 + +tar (1.13.25-3) unstable; urgency=low + + * apply patch to the Debian-originated tar manpage from Pedro Zorzenon Neto + to clarify the value of using --bzip2 in scripts instead + of -j to ensure compatibility with both old and new versions of tar. + closes: #142242, #83233 + * fix capitalization concern in the control file, closes: #125629 + + -- Bdale Garbee Wed, 10 Apr 2002 14:14:40 -0600 + +tar (1.13.25-2) unstable; urgency=medium + + * add a README.Debian that clarifies the situation with respect to 'compress' + in Debian and the impact on the -Z and related options, closes: #122336 + * patch from Mark Eichin to fix archive corruption in special cases, which + has been accepted upstream for next release. closes: #126274 + + -- Bdale Garbee Fri, 1 Feb 2002 08:49:26 -0700 + +tar (1.13.25-1) unstable; urgency=medium + + * new upstream version (bug fixes), closes: #113531 + * start having tar provide rmt, which means conflicting with and replacing + cpio versions prior to the cutover, closes: #94257, #90794 + * make medium urgency, since we really want this and the associated cpio + upload to both be in woody! + + -- Bdale Garbee Fri, 23 Nov 2001 09:20:40 -0700 + +tar (1.13.22-1) unstable; urgency=medium + + * new upstream version, released specifically to help close bugs in woody + upstream (Paul Eggert) says: + regarding 1.13.22 + This fixes Debian bug 92106, in addition to the bug fixes I already + reported to you for GNU tar 1.13.20 and 1.13.21. It also fixes a + core-dump bug for tar 1.13.19 and later, reported to bug-tar. + regarding 1.13.21 + This fixes Debian bug 95984, in addition to the bug fixes I already + reported to you for 1.13.20. It also upgrades tar to use gettext + 0.10.39. + regarding 1.13.20 + I haven't had time to fix all or even most of the bugs, but I suggest + closing out or modifying the following bug reports: + 13312 I changed tar to avoid the problem (I hope; I can't test it). + 52092 Fixed. + 58890 Fixed, I think -- at least, I can't reproduce it now. + 65719 Not a bug? last message in that bug report says it works for him. + 77664 Not a bug. In that context FOO:BAR means 'file BAR on host FOO'. + 78179 Sorry, I don't follow this report. Tar does strip leading '/'s + for me. + 83458 Fixed. + 83735 Fixed. + 85400 Fixed for the info page only. The man page is not part of + tar-1.13.20. + 90794 This partly seems to be a Debian packaging problem; see 94257. + 94287 Fixed. + 95344 Fixed. + 95984 Not fixed in 1.13.20, but will be fixed in next version. + 99655 Fixed. + 100883 This bug report applies to the Debian distribution only. + 100885 Not a bug; see its last message. + 105744 Not a bug; see its last message. + closes: #92106, #95984, #13312, #52092, #58890, #65719, #77664, #78179 + closes: #83458, #83735, #94287, #95344, #99655, #100885, #105744 + * add documentation for --rsh-command to the Debian-provided man page, + closes: #85400 + * fix Debian-provided man page's reference to --exclude, closes: #100883 + + -- Bdale Garbee Fri, 31 Aug 2001 01:13:49 -0600 + +tar (1.13.19-1) unstable; urgency=low + + * new upstream version, -I no longer a valid option, closes: #81556 + * freshen debian/copyright + + -- Bdale Garbee Tue, 23 Jan 2001 09:42:13 -0700 + +tar (1.13.18-2) unstable; urgency=low + + * update (Debian-only, not part of upstream release) man page for tar to + reflect change from -I to -j for bzip2 support, closes: #80331 + + -- Bdale Garbee Fri, 22 Dec 2000 14:18:51 -0700 + +tar (1.13.18-1) unstable; urgency=low + + * new upstream version, closes: #57436, #51889 + * add suggestion for bzip2, closes: #64279 + * this package is pristine upstream source plus the debian/ directory, so + there should be no issues compiling on any platform, closes: #58171 + + -- Bdale Garbee Wed, 20 Dec 2000 13:09:44 -0700 + +tar (1.13.17-2) frozen unstable; urgency=low + + * reconfigure, recompile to fix compile from source problem, closes: #60824 + + -- Bdale Garbee Thu, 23 Mar 2000 09:27:16 -0700 + +tar (1.13.17-1) unstable; urgency=low + + * new upstream source from alpha.gnu.org recommended by uptream maintainer + Paul Eggert. + * this version should handle multibyte encoded filenames, closes: #25140 + * upstream says the problem reported with -g is unreproducible in this + version, closes: #23511 + * this version excludes sockets when building archives, closes: #51064 + + -- Bdale Garbee Fri, 7 Jan 2000 22:57:34 -0700 + +tar (1.13.15-1) unstable; urgency=low + + * new upstream source from alpha.gnu.org recommended by uptream maintainer + Paul Eggert. + * update to current policy + * can't reproduce problem with remote host access reported in 1.13.11-2, + assuming it's fixed, closes: #45647 + * upstream has not picked up our tar.1 manpage, so we'll try to keep it + up to date, closes: #50856 + + -- Bdale Garbee Fri, 3 Dec 1999 13:29:41 -0700 + +tar (1.13.14-5) unstable; urgency=low + + * minor tweaks to clean up our diff, pointed out by the upstream maintainer + + -- Bdale Garbee Tue, 23 Nov 1999 09:23:56 -0700 + +tar (1.13.14-4) unstable; urgency=low + + * update upstream maintainer and copyright references, etc + + -- Bdale Garbee Sun, 21 Nov 1999 09:56:26 -0700 + +tar (1.13.14-3) unstable; urgency=low + + * fix default device in man page, closes: 50856 + + -- Bdale Garbee Sun, 21 Nov 1999 09:45:32 -0700 + +tar (1.13.14-2) unstable; urgency=low + + * fold in Torsten's work that closes: #50553 + * upstream folks indicate that $TAPE does not override -f in 1.13.14, + closes: #47664 + * 1.13.14 has an updated man page that closes: #48603 + * the -X stuff has supposedly been fixed since 1.13.12, closes: #43826 + * rename upstream ChangeLog to changelog in the Debian package to satisfy + lintian/policy + + -- Bdale Garbee Sat, 20 Nov 1999 22:07:46 -0700 + +tar (1.13.14-1.1) unstable; urgency=low + + * Non maintainer upload. + * Moved the AC_LINK_FILES in configure.in inside the if (closes: #50553) + + -- Torsten Landschoff Sun, 21 Nov 1999 04:25:10 +0100 + +tar (1.13.14-1) unstable; urgency=low + + * new upstream source from alpha.gnu.org recommended by uptream maintainer + Paul Eggert. + + -- Bdale Garbee Thu, 11 Nov 1999 01:56:54 -0700 + +tar (1.13.11-2) unstable; urgency=low + + * fix error in man page, closes: #44610 + * patch from upstream that closes: #44827 + + -- Bdale Garbee Tue, 14 Sep 1999 20:58:23 -0600 + +tar (1.13.11-1) unstable; urgency=low + + * new upstream source from alpha.gnu.org recommended by uptream maintainer + Paul Eggert. + * move to FHS compliance with new debhelper + + -- Bdale Garbee Mon, 6 Sep 1999 16:49:51 -0600 + +tar (1.13.6-1) unstable; urgency=medium + + * new upstream source from alpha.gnu.org recommended by uptream maintainer + Paul Eggert. + * bzip2 support is back, now with option '-y' instead of '-I'... rejoice! + Closes: #42428, #42562, #42572, #42661, #42772 + * Paul claims that the -X option is fixed again, Closes: #42552 + * add mime-support goo, Closes: #26706 + * close bug reports I forgot to close last time, Closes: #33134, #37659 + + -- Bdale Garbee Wed, 11 Aug 1999 09:20:48 -0600 + +tar (1.13-3) unstable; urgency=low + + * include more docs in /usr/doc/tar, closes 33134 + * minor tweak to tar.1, closes 37659 + + -- Bdale Garbee Mon, 2 Aug 1999 00:48:44 -0600 + +tar (1.13-2) unstable; urgency=low + + * back out hacks we had made to 1.12 that seem to be causing problems in + 1.13, getting essentially to pristine 1.13 source plus debian control files + + -- Bdale Garbee Mon, 2 Aug 1999 00:26:49 -0600 + +tar (1.13-1) unstable; urgency=low + + * new upstream source + + -- Bdale Garbee Sun, 1 Aug 1999 23:33:29 -0600 + +tar (1.12-9) unstable; urgency=low + + * fix some issues with the contest of the po directory in my CVS repository + + -- Bdale Garbee Sun, 1 Aug 1999 18:02:35 -0600 + +tar (1.12-8) unstable; urgency=low + + * update to handle changes in automake + + -- Bdale Garbee Wed, 9 Jun 1999 20:15:15 -0600 + +tar (1.12-7) frozen unstable; urgency=low + + * merge new version of Italian translation, closes 30284 + * merge README.debian with copyright, closes 22370 + + -- Bdale Garbee Wed, 6 Jan 1999 23:56:47 -0700 + +tar (1.12-6) frozen unstable; urgency=low + + * update manpage to document -I, closes 21224 + + -- Bdale Garbee Fri, 17 Apr 1998 23:37:02 -0600 + +tar (1.12-5) frozen unstable; urgency=low + + * fix for erroneous time reports from --totals from Rob Browning, + closes 18345 + * add --numeric-owner to man page, closes 20801 + * add some examples to the man page, closes 20290 + + -- Bdale Garbee Fri, 10 Apr 1998 00:30:17 -0600 + +tar (1.12-4) unstable; urgency=low + + * move from debmake to debhelper + * address lintian error reports + * apply patch from amanda distribution to fix read errors on sparse files. + This should close 16694. + * updated dds2tar patch to restore proper operation of 'v' option. This was + causing corrupted archives when stdout was used. Closes 17857, 17916. + + -- Bdale Garbee Mon, 9 Feb 1998 23:52:05 -0700 + +tar (1.12-3) unstable; urgency=low + + * apply patch to support dds2tar-2.4.15, closes bug 10774 + * apply patch to support use of bzip2, closes bugs 16280, 17221 + + -- Bdale Garbee Wed, 4 Feb 1998 04:05:43 -0700 + +tar (1.12-2) unstable; urgency=low + + * libc6 + * Folded in some of Michael Dorman's changes for alpha, which are really + libc6 changes. Closes bug 8823. + + -- Bdale Garbee Fri, 5 Sep 1997 00:13:00 -0600 + +tar (1.12-1) unstable; urgency=low + + * New upstream version. + + -- Bdale Garbee Fri, 25 Apr 1997 21:15:44 -0600 + +tar (1.11.8-11) stable frozen unstable; urgency=low + + * back out the change made for 1.11.8-8, since it isn't really effective, + and caused several folks grief. Closes bug 8040. + + -- Bdale Garbee Tue, 18 Mar 1997 01:38:10 -0700 + +tar (1.11.8-10) stable frozen unstable; urgency=low + + * rework debian/rules for CFLAGS as per policy. Closes bug 8065. + + -- Bdale Garbee Fri, 14 Mar 1997 21:22:50 -0700 + +tar (1.11.8-9) unstable; urgency=medium + + * debmake shoved a man page for a porting utility (ansi2knr) that + is in the tar source tree into the package. Fixes bug 7408. + + -- Bdale Garbee Thu, 27 Feb 1997 01:30:56 -0700 + +tar (1.11.8-8) unstable; urgency=medium + + * patch from the net for a quasi-security issue. changes the behavior + during extracts, so that tar won't create inappropriate setuid files + from nonexistent users. + + -- Bdale Garbee Thu, 6 Feb 1997 23:06:17 -0700 + +tar (1.11.8-7) unstable; urgency=medium + + * updated to current package standards + * patch from the net that fixes sporadic multi-vol seg faults + + -- Bdale Garbee Sun, 17 Nov 1996 19:37:43 -0700 + +Fri May 24 08:05:55 MDT 1996 Bdale Garbee + + * fold in changes from 1.11.9 configure.in so that we properly + recognize that it's ok to build 'rmt' + * administrivia + +Sun Apr 14 21:50:21 MDT 1996 Bdale Garbee + + * add architecture and section fields to the control file + * add a man page to squelch the frequent bug reports + +Wed Dec 27 00:29:37 MST 1995 Bdale Garbee + + * fixed a null pointer dereference when the username on a remote + tape reference was omitted... this closes several essentially + duplicate bug reports about segmentation violation core dumps. + +Sun Dec 3 01:13:19 MST 1995 Bdale Garbee + + * ELF build + * add libc5 dependency + * new maintainer + +Local variables: +mode: debian-changelog +End: --- tar-1.15.1.orig/debian/postinst +++ tar-1.15.1/debian/postinst @@ -0,0 +1,12 @@ +#!/bin/sh -e + +if [ "$1" = configure ]; then + install-info --quiet --section "General Commands" "General Commands" \ + /usr/share/info/tar.info.gz + + update-alternatives --install /usr/sbin/rmt rmt /usr/sbin/rmt-tar 50 \ + --slave /usr/share/man/man8/rmt.8.gz rmt.8.gz \ + /usr/share/man/man8/rmt-tar.8.gz +fi + +#DEBHELPER# --- tar-1.15.1.orig/debian/tar.lintian +++ tar-1.15.1/debian/tar.lintian @@ -0,0 +1 @@ +tar: binary-without-manpage rmt --- tar-1.15.1.orig/debian/README.Debian +++ tar-1.15.1/debian/README.Debian @@ -0,0 +1,18 @@ +The options -Z, --compress, and --uncompress all require that there be a +'compress' utility installed on the system. If there is no compress installed +on your system, you will get errors if you try to use these options to tar. + +Unfortunately, the algorithm used by compress is encumbered, and therefore +this utility is not part of Debian. + +The gunzip package can uncompress a file created with compress, but gzip can +not create a file in 'compress' format. Since the tar -Z option and friends +end up calling 'compress' or 'compress -d', support for these options is not +available in Debian. However, at the time of this writing a package called +'ncompress' exists in non-free, and you can install it if the license terms +are acceptable to you. + +Alternatively, if you don't really care what the format of the resulting file +is, you could always create a 'compress' that is a symlink to gzip. I refuse +to do that in either the tar or gzip packages, however, since what gzip creates +is a compressed file, but not a 'compress' format file... --- tar-1.15.1.orig/debian/rmt.sh +++ tar-1.15.1/debian/rmt.sh @@ -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 /usr/sbin/rmt --- tar-1.15.1.orig/debian/tar.mime +++ tar-1.15.1/debian/tar.mime @@ -0,0 +1,2 @@ +application/x-tar; /bin/tar tvf -; print=/bin/tar tvf - | print text/plain:-; copiousoutput +application/x-gtar; /bin/tar tvzf -; print=/bin/tar tvzf - | print text/plain:-; copiousoutput --- tar-1.15.1.orig/debian/copyright +++ tar-1.15.1/debian/copyright @@ -0,0 +1,20 @@ +This is the Debian GNU/Linux prepackaged version of GNU tar. GNU +tar, heavily based on John Gilmore's public domain version of tar, +was originally written by Graham Todd. It is now maintained by +Paul Eggert . + +This package is maintained for Debian by Bdale Garbee , and +was built from the sources found at: + + ftp://alpha.gnu.org/gnu/tar/ + +GNU tar is + +Copyright 1994, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc. + + This program 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; version 2 dated June, 1991. + +On Debian GNU/Linux systems, the complete text of the GNU General Public +License can be found in the `/usr/share/common-licenses' directory. --- tar-1.15.1.orig/debian/preinst +++ tar-1.15.1/debian/preinst @@ -0,0 +1,7 @@ +#!/bin/sh + +set -e + +dpkg --assert-support-predepends + +#DEBHELPER# --- tar-1.15.1.orig/config/config.guess +++ tar-1.15.1/config/config.guess @@ -1,9 +1,9 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. -timestamp='2004-10-25' +timestamp='2005-08-03' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -17,13 +17,15 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. + # Originally written by Per Bothner . # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. @@ -53,7 +55,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO @@ -66,11 +68,11 @@ while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; + echo "$timestamp" ; exit ;; --version | -v ) - echo "$version" ; exit 0 ;; + echo "$version" ; exit ;; --help | --h* | -h ) - echo "$usage"; exit 0 ;; + echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. @@ -123,7 +125,7 @@ ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ;' +esac ; set_cc_for_build= ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) @@ -196,55 +198,20 @@ # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" - exit 0 ;; - amd64:OpenBSD:*:*) - echo x86_64-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - amiga:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - cats:OpenBSD:*:*) - echo arm-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - hp300:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - luna88k:OpenBSD:*:*) - echo m88k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mac68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - macppc:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme88k:OpenBSD:*:*) - echo m88k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvmeppc:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sgi:OpenBSD:*:*) - echo mips64-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sun3:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; + exit ;; *:OpenBSD:*:*) - echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + exit ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit 0 ;; + exit ;; macppc:MirBSD:*:*) echo powerppc-unknown-mirbsd${UNAME_RELEASE} - exit 0 ;; + exit ;; *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit 0 ;; + exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) @@ -297,37 +264,43 @@ # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit 0 ;; + exit ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix - exit 0 ;; + exit ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 - exit 0 ;; + exit ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 - exit 0;; + exit ;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos - exit 0 ;; + exit ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos - exit 0 ;; + exit ;; *:OS/390:*:*) echo i370-ibm-openedition - exit 0 ;; + exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit ;; *:OS400:*:*) echo powerpc-ibm-os400 - exit 0 ;; + exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} - exit 0;; + exit ;; + arm:riscos:*:*|arm:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp - exit 0;; + exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then @@ -335,32 +308,32 @@ else echo pyramid-pyramid-bsd fi - exit 0 ;; + exit ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 - exit 0 ;; + exit ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 - exit 0 ;; + exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7 && exit 0 ;; + sparc) echo sparc-icl-nx7; exit ;; esac ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; + exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; + exit ;; i86pc:SunOS:5.*:*) echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; + exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; + exit ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) @@ -369,10 +342,10 @@ esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit 0 ;; + exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} - exit 0 ;; + exit ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 @@ -384,10 +357,10 @@ echo sparc-sun-sunos${UNAME_RELEASE} ;; esac - exit 0 ;; + exit ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} - exit 0 ;; + exit ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor @@ -398,40 +371,40 @@ # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; + exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; + exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; + exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} - exit 0 ;; + exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} - exit 0 ;; + exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} - exit 0 ;; + exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} - exit 0 ;; + exit ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} - exit 0 ;; + exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 - exit 0 ;; + exit ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} - exit 0 ;; + exit ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} - exit 0 ;; + exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} - exit 0 ;; + exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c @@ -455,32 +428,33 @@ exit (-1); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c \ - && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ - && exit 0 + $CC_FOR_BUILD -o $dummy $dummy.c && + dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`$dummy $dummyarg` && + { echo "$SYSTEM_NAME"; exit; } echo mips-mips-riscos${UNAME_RELEASE} - exit 0 ;; + exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax - exit 0 ;; + exit ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax - exit 0 ;; + exit ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax - exit 0 ;; + exit ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix - exit 0 ;; + exit ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 - exit 0 ;; + exit ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 - exit 0 ;; + exit ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 - exit 0 ;; + exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` @@ -496,29 +470,29 @@ else echo i586-dg-dgux${UNAME_RELEASE} fi - exit 0 ;; + exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 - exit 0 ;; + exit ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 - exit 0 ;; + exit ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 - exit 0 ;; + exit ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd - exit 0 ;; + exit ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit 0 ;; + exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix - exit 0 ;; + exit ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` @@ -526,7 +500,7 @@ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit 0 ;; + exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build @@ -541,14 +515,18 @@ exit(0); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 - echo rs6000-ibm-aix3.2.5 + if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + then + echo "$SYSTEM_NAME" + else + echo rs6000-ibm-aix3.2.5 + fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi - exit 0 ;; + exit ;; *:AIX:*:[45]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then @@ -562,28 +540,28 @@ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit 0 ;; + exit ;; *:AIX:*:*) echo rs6000-ibm-aix - exit 0 ;; + exit ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 - exit 0 ;; + exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit 0 ;; # report: romp-ibm BSD 4.3 + exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx - exit 0 ;; + exit ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 - exit 0 ;; + exit ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd - exit 0 ;; + exit ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 - exit 0 ;; + exit ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` case "${UNAME_MACHINE}" in @@ -645,9 +623,19 @@ esac if [ ${HP_ARCH} = "hppa2.0w" ] then - # avoid double evaluation of $set_cc_for_build - test -n "$CC_FOR_BUILD" || eval $set_cc_for_build - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null + eval $set_cc_for_build + + # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating + # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler + # generating 64-bit code. GNU and HP use different nomenclature: + # + # $ CC_FOR_BUILD=cc ./config.guess + # => hppa2.0w-hp-hpux11.23 + # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess + # => hppa64-hp-hpux11.23 + + if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | + grep __LP64__ >/dev/null then HP_ARCH="hppa2.0w" else @@ -655,11 +643,11 @@ fi fi echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit 0 ;; + exit ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} - exit 0 ;; + exit ;; 3050*:HI-UX:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c @@ -687,158 +675,166 @@ exit (0); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 + $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 - exit 0 ;; + exit ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd - exit 0 ;; + exit ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd - exit 0 ;; + exit ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix - exit 0 ;; + exit ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf - exit 0 ;; + exit ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf - exit 0 ;; + exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi - exit 0 ;; + exit ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites - exit 0 ;; + exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd - exit 0 ;; + exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi - exit 0 ;; + exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd - exit 0 ;; + exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd - exit 0 ;; + exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd - exit 0 ;; + exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; + exit ;; CRAY*[A-Z]90:*:*:*) echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' - exit 0 ;; + exit ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; + exit ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; + exit ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; + exit ;; *:UNICOS/mp:*:*) echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; + exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit 0 ;; + exit ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit 0 ;; + exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit 0 ;; + exit ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; + exit ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; + exit ;; *:FreeBSD:*:*) echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit 0 ;; + exit ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin - exit 0 ;; + exit ;; i*:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 - exit 0 ;; + exit ;; + i*:windows32*:*) + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 + exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 - exit 0 ;; + exit ;; x86:Interix*:[34]*) echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' - exit 0 ;; + exit ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks - exit 0 ;; + exit ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix - exit 0 ;; + exit ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin - exit 0 ;; + exit ;; + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin - exit 0 ;; + exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; + exit ;; *:GNU:*:*) # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit 0 ;; + exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu - exit 0 ;; + exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix - exit 0 ;; + exit ;; arm*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; cris:Linux:*:*) echo cris-axis-linux-gnu - exit 0 ;; + exit ;; crisv32:Linux:*:*) echo crisv32-axis-linux-gnu - exit 0 ;; + exit ;; frv:Linux:*:*) echo frv-unknown-linux-gnu - exit 0 ;; + exit ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; m32r*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; mips:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c @@ -856,7 +852,7 @@ #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; mips64:Linux:*:*) eval $set_cc_for_build @@ -875,14 +871,17 @@ #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; + or32:Linux:*:*) + echo or32-unknown-linux-gnu + exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu - exit 0 ;; + exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu - exit 0 ;; + exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; @@ -896,7 +895,7 @@ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit 0 ;; + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in @@ -904,25 +903,25 @@ PA8*) echo hppa2.0-unknown-linux-gnu ;; *) echo hppa-unknown-linux-gnu ;; esac - exit 0 ;; + exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-gnu - exit 0 ;; + exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux - exit 0 ;; + exit ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; + exit ;; x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu - exit 0 ;; + exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent @@ -940,15 +939,15 @@ ;; a.out-i386-linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit 0 ;; + exit ;; coff-i386) echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit 0 ;; + exit ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit 0 ;; + exit ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build @@ -976,15 +975,18 @@ #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 - test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 + test x"${LIBC}" != x && { + echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + exit + } + test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 - exit 0 ;; + exit ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... @@ -992,27 +994,27 @@ # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit 0 ;; + exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx - exit 0 ;; + exit ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop - exit 0 ;; + exit ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos - exit 0 ;; - i*86:syllable:*:*) + exit ;; + i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable - exit 0 ;; + exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) echo i386-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; + exit ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit 0 ;; + exit ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then @@ -1020,15 +1022,16 @@ else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi - exit 0 ;; - i*86:*:5:[78]*) + exit ;; + i*86:*:5:[678]*) + # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit 0 ;; + exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi - exit 0 ;; + exit ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv - exit 0 ;; + exit ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv - exit 0 ;; + exit ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix - exit 0 ;; + exit ;; M68*:*:R3V[5678]*:*) - test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4.3${OS_REL} && exit 0 + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4 && exit 0 ;; + && { echo i486-ncr-sysv4; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; + exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 - exit 0 ;; + exit ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; + exit ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; + exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; + exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} - exit 0 ;; + exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 - exit 0 ;; + exit ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 - exit 0 ;; + exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` @@ -1120,61 +1123,65 @@ else echo ns32k-sni-sysv fi - exit 0 ;; + exit ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 - exit 0 ;; + exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 - exit 0 ;; + exit ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 - exit 0 ;; + exit ;; + i*86:VOS:*:*) + # From Paul.Green@stratus.com. + echo ${UNAME_MACHINE}-stratus-vos + exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos - exit 0 ;; + exit ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} - exit 0 ;; + exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 - exit 0 ;; + exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi - exit 0 ;; + exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos - exit 0 ;; + exit ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos - exit 0 ;; + exit ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos - exit 0 ;; + exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} - exit 0 ;; + exit ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} - exit 0 ;; + exit ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} - exit 0 ;; + exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; + exit ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; + exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown case $UNAME_PROCESSOR in @@ -1182,7 +1189,7 @@ unknown) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit 0 ;; + exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then @@ -1190,22 +1197,25 @@ UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit 0 ;; + exit ;; *:QNX:*:4*) echo i386-pc-qnx - exit 0 ;; + exit ;; + NSE-?:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} - exit 0 ;; + exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux - exit 0 ;; + exit ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv - exit 0 ;; + exit ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit 0 ;; + exit ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 @@ -1216,41 +1226,44 @@ UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 - exit 0 ;; + exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 - exit 0 ;; + exit ;; *:TENEX:*:*) echo pdp10-unknown-tenex - exit 0 ;; + exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 - exit 0 ;; + exit ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 - exit 0 ;; + exit ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 - exit 0 ;; + exit ;; *:ITS:*:*) echo pdp10-unknown-its - exit 0 ;; + exit ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} - exit 0 ;; + exit ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit 0 ;; + exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in - A*) echo alpha-dec-vms && exit 0 ;; - I*) echo ia64-dec-vms && exit 0 ;; - V*) echo vax-dec-vms && exit 0 ;; + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; + V*) echo vax-dec-vms ; exit ;; esac ;; *:XENIX:*:SysV) echo i386-pc-xenix - exit 0 ;; + exit ;; + i*86:skyos:*:*) + echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' + exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 @@ -1282,7 +1295,7 @@ #endif #if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix"); exit (0); + printf ("arm-acorn-riscix\n"); exit (0); #endif #if defined (hp300) && !defined (hpux) @@ -1371,11 +1384,12 @@ } EOF -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 +$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } # Apollos put the system type in the environment. -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } # Convex versions that predate uname can use getsysinfo(1) @@ -1384,22 +1398,22 @@ case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd - exit 0 ;; + exit ;; c2*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi - exit 0 ;; + exit ;; c34*) echo c34-convex-bsd - exit 0 ;; + exit ;; c38*) echo c38-convex-bsd - exit 0 ;; + exit ;; c4*) echo c4-convex-bsd - exit 0 ;; + exit ;; esac fi @@ -1410,7 +1424,9 @@ the operating system you are using. It is advised that you download the most up to date version of the config scripts from - ftp://ftp.gnu.org/pub/gnu/config/ + http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess +and + http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub If the version you run ($0) is already up to date, please send the following data and any information you think might be --- tar-1.15.1.orig/config/config.sub +++ tar-1.15.1/config/config.sub @@ -1,9 +1,9 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. -timestamp='2004-08-29' +timestamp='2005-07-08' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -21,14 +21,15 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. +# # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. + # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. # @@ -70,7 +71,7 @@ version="\ GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO @@ -83,11 +84,11 @@ while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; + echo "$timestamp" ; exit ;; --version | -v ) - echo "$version" ; exit 0 ;; + echo "$version" ; exit ;; --help | --h* | -h ) - echo "$usage"; exit 0 ;; + echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. @@ -99,7 +100,7 @@ *local*) # First pass through any local machine types. echo $1 - exit 0;; + exit ;; * ) break ;; @@ -231,13 +232,14 @@ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ + | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ - | m32r | m32rle | m68000 | m68k | m88k | mcore \ + | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ @@ -246,6 +248,7 @@ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ @@ -254,23 +257,28 @@ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ + | ms1 \ | msp430 \ | ns16k | ns32k \ - | openrisc | or32 \ + | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ - | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ + | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ - | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \ + | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b \ | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ | v850 | v850e \ | we32k \ - | x86 | xscale | xstormy16 | xtensa \ + | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k) basic_machine=$basic_machine-unknown ;; + m32c) + basic_machine=$basic_machine-unknown + ;; m6811 | m68hc11 | m6812 | m68hc12) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown @@ -298,7 +306,7 @@ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* \ - | bs2000-* \ + | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ @@ -310,7 +318,7 @@ | ip2k-* | iq2000-* \ | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | mcore-* \ + | m88110-* | m88k-* | maxq-* | mcore-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ @@ -319,6 +327,7 @@ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ + | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ @@ -327,6 +336,7 @@ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ + | ms1-* \ | msp430-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | orion-* \ @@ -334,20 +344,23 @@ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ + | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ + | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ - | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ - | xtensa-* \ + | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ + | xstormy16-* | xtensa-* \ | ymp-* \ | z8k-*) ;; + m32c-*) + ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) @@ -489,6 +502,10 @@ basic_machine=m88k-motorola os=-sysv3 ;; + djgpp) + basic_machine=i586-pc + os=-msdosdjgpp + ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx @@ -754,9 +771,8 @@ basic_machine=hppa1.1-oki os=-proelf ;; - or32 | or32-*) + openrisc | openrisc-*) basic_machine=or32-unknown - os=-coff ;; os400) basic_machine=powerpc-ibm @@ -1029,6 +1045,10 @@ basic_machine=hppa1.1-winbond os=-proelf ;; + xbox) + basic_machine=i686-pc + os=-mingw32 + ;; xps | xps100) basic_machine=xps100-honeywell ;; @@ -1078,12 +1098,9 @@ we32k) basic_machine=we32k-att ;; - sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) + sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; - sh64) - basic_machine=sh64-unknown - ;; sparc | sparcv8 | sparcv9 | sparcv9b) basic_machine=sparc-sun ;; @@ -1170,7 +1187,8 @@ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*) + | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ + | -skyos* | -haiku*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) @@ -1188,7 +1206,7 @@ os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) @@ -1297,6 +1315,9 @@ -kaos*) os=-kaos ;; + -zvmoe) + os=-zvmoe + ;; -none) ;; *) @@ -1374,6 +1395,9 @@ *-be) os=-beos ;; + *-haiku) + os=-haiku + ;; *-ibm) os=-aix ;; @@ -1545,7 +1569,7 @@ esac echo $basic_machine$os -exit 0 +exit # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp)