diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2004-10-11 19:55:27 +0000 | 
|---|---|---|
| committer | Mike Frysinger <vapier@gentoo.org> | 2004-10-11 19:55:27 +0000 | 
| commit | 9a8d02b02f4e9fc568b98cd9c97003bb27dd736c (patch) | |
| tree | 6d8bf54cc04672970609737883313d4be0ec038e /package/tar | |
| parent | cfc584d677da51bf102f1e54a330f1a4983a15e4 (diff) | |
| download | buildroot-novena-9a8d02b02f4e9fc568b98cd9c97003bb27dd736c.tar.gz buildroot-novena-9a8d02b02f4e9fc568b98cd9c97003bb27dd736c.zip | |
latest tar needs fixes from cvs
Diffstat (limited to 'package/tar')
| -rw-r--r-- | package/tar/tar-gnulib.patch | 99 | ||||
| -rw-r--r-- | package/tar/tar-remote-shell.patch | 23 | ||||
| -rw-r--r-- | package/tar/tar-tests.patch | 31 | ||||
| -rw-r--r-- | package/tar/tar.mk | 1 | 
4 files changed, 154 insertions, 0 deletions
| diff --git a/package/tar/tar-gnulib.patch b/package/tar/tar-gnulib.patch new file mode 100644 index 000000000..e3ebf1648 --- /dev/null +++ b/package/tar/tar-gnulib.patch @@ -0,0 +1,99 @@ +Index: argp.h +=================================================================== +RCS file: /cvsroot/gnulib/gnulib/lib/argp.h,v +retrieving revision 1.5 +retrieving revision 1.8 +diff -u -b -B -r1.5 -r1.8 +--- tar.broke/lib/argp.h	4 Oct 2003 12:28:07 -0000	1.5 ++++ tar/lib/argp.h	30 Sep 2004 16:41:57 -0000	1.8 +@@ -1,5 +1,5 @@ + /* Hierarchial argument parsing, layered over getopt. +-   Copyright (C) 1995,1996,1997,1998,1999,2003 Free Software Foundation, Inc. ++   Copyright (C) 1995-1999,2003,2004 Free Software Foundation, Inc. +    This file is part of the GNU C Library. +    Written by Miles Bader <miles@gnu.ai.mit.edu>. +  +@@ -34,6 +34,9 @@ + #ifndef __THROW + # define __THROW + #endif ++#ifndef __NTH ++# define __NTH(fct) fct __THROW ++#endif +  + #ifndef __attribute__ + /* This feature is available in gcc versions 2.5 and later.  */ +@@ -48,6 +51,18 @@ + # endif + #endif +  ++/* GCC 2.95 and later have "__restrict"; C99 compilers have ++   "restrict", and "configure" may have defined "restrict".  */ ++#ifndef __restrict ++# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__)) ++#  if defined restrict || 199901L <= __STDC_VERSION__ ++#   define __restrict restrict ++#  else ++#   define __restrict ++#  endif ++# endif ++#endif ++ + #ifndef __error_t_defined + typedef int error_t; + # define __error_t_defined +@@ -111,11 +126,12 @@ +    should be displayed in much the same manner as the options.  If this flag +    is set, then the option NAME field is displayed unmodified (e.g., no `--' +    prefix is added) at the left-margin (where a *short* option would normally +-   be displayed), and the documentation string in the normal place.  For +-   purposes of sorting, any leading whitespace and punctuation is ignored, +-   except that if the first non-whitespace character is not `-', this entry +-   is displayed after all options (and OPTION_DOC entries with a leading `-') +-   in the same group.  */ ++   be displayed), and the documentation string in the normal place. The NAME ++   field will be translated using gettext, unless OPTION_NO_TRANS is set (see ++   below). For purposes of sorting, any leading whitespace and punctuation is ++   ignored, except that if the first non-whitespace character is not `-', this ++   entry is displayed after all options (and OPTION_DOC entries with a leading ++   `-') in the same group.  */ + #define OPTION_DOC		0x8 +  + /* This option shouldn't be included in `long' usage messages (but is still +@@ -127,6 +143,11 @@ +    OPTION_NO_USAGE.  */ + #define OPTION_NO_USAGE		0x10 +  ++/* Valid only in conjunction with OPTION_DOC. This option disables translation ++   of option name. */ ++#define OPTION_NO_TRANS         0x20 ++ ++ + struct argp;			/* fwd declare this type */ + struct argp_state;		/* " */ + struct argp_child;		/* " */ +@@ -545,13 +566,13 @@ + # endif +  + ARGP_EI void +-__argp_usage (__const struct argp_state *__state) __THROW ++__NTH (__argp_usage (__const struct argp_state *__state)) + { +   __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE); + } +  + ARGP_EI int +-__option_is_short (__const struct argp_option *__opt) __THROW ++__NTH (__option_is_short (__const struct argp_option *__opt)) + { +   if (__opt->flags & OPTION_DOC) +     return 0; +@@ -563,7 +584,7 @@ + } +  + ARGP_EI int +-__option_is_end (__const struct argp_option *__opt) __THROW ++__NTH (__option_is_end (__const struct argp_option *__opt)) + { +   return !__opt->key && !__opt->name && !__opt->doc && !__opt->group; + } diff --git a/package/tar/tar-remote-shell.patch b/package/tar/tar-remote-shell.patch new file mode 100644 index 000000000..962da2e10 --- /dev/null +++ b/package/tar/tar-remote-shell.patch @@ -0,0 +1,23 @@ +--- tar.broke/src/tar.c.orig	2004-10-10 21:39:07.872276960 -0400 ++++ tar/src/tar.c	2004-10-10 21:39:52.512490616 -0400 +@@ -544,10 +544,18 @@ + show_default_settings (FILE *stream) + { +   fprintf (stream, +-	   "--format=%s -f%s -b%d --rmt-command=%s --rsh-command=%s\n", ++	   "--format=%s -f%s -b%d --rmt-command=%s" ++#ifdef REMOTE_SHELL ++" --rsh-command=%s" ++#endif ++	   "\n", + 	   archive_format_string (DEFAULT_ARCHIVE_FORMAT), + 	   DEFAULT_ARCHIVE, DEFAULT_BLOCKING, +-	   DEFAULT_RMT_COMMAND, REMOTE_SHELL); ++	   DEFAULT_RMT_COMMAND ++#ifdef REMOTE_SHELL ++	   ,REMOTE_SHELL ++#endif ++	   ); + } +  + static void diff --git a/package/tar/tar-tests.patch b/package/tar/tar-tests.patch new file mode 100644 index 000000000..2483e78d9 --- /dev/null +++ b/package/tar/tar-tests.patch @@ -0,0 +1,31 @@ +--- tar.broke/tests/listed02.sh	2004-10-11 00:39:45.443303624 +0200 ++++ tar/tests/listed02.sh	2004-10-11 00:38:02.566943208 +0200 +@@ -69,7 +69,10 @@ + echo Extracting main archive + tar -x -v --listed-incremental=tart.incr1 -f archive.1 + echo Extracting incremental archive +-tar -x -v --listed-incremental=tart.incr2 -f archive.2 ++# This command should produce three messages about deletion ++# of the existing files, that may appear in any order. Piping ++# to sort makes sure we don't depend on any particular ordering. ++tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort +  + echo Final files: + find tart|sort +@@ -120,13 +123,13 @@ + tart/c1/ca1 + tart/c1/ca2 + Extracting incremental archive +-tart/ +-tar: Deleting \`tart/c1' + tar: Deleting \`tart/a1' + tar: Deleting \`tart/b1' ++tar: Deleting \`tart/c1' ++tart/ ++tart/b2 + tart/c0/ + tart/c2/ +-tart/b2 + tart/c2/ca1 + tart/c2/ca2 + tart/c2/ca3 diff --git a/package/tar/tar.mk b/package/tar/tar.mk index dea08a543..001e938e2 100644 --- a/package/tar/tar.mk +++ b/package/tar/tar.mk @@ -18,6 +18,7 @@ tar-source: $(DL_DIR)/$(GNUTAR_SOURCE)  $(GNUTAR_DIR)/.unpacked: $(DL_DIR)/$(GNUTAR_SOURCE)  	$(GNUTAR_CAT) $(DL_DIR)/$(GNUTAR_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - +	toolchain/patch-kernel.sh $(GNUTAR_DIR) package/tar/ tar*.patch  	touch $(GNUTAR_DIR)/.unpacked  $(GNUTAR_DIR)/.configured: $(GNUTAR_DIR)/.unpacked | 
