Commit 9a8d02b0 authored by Mike Frysinger's avatar Mike Frysinger
Browse files

latest tar needs fixes from cvs

parent cfc584d6
Loading
Loading
Loading
Loading
+99 −0
Original line number Diff line number Diff line
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;
 }
+23 −0
Original line number Diff line number Diff line
--- 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
+31 −0
Original line number Diff line number Diff line
--- 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
+1 −0
Original line number Diff line number Diff line
@@ -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