Browse Source

Version 1.24

* configure.ac, NEWS: Version 1.24
* bootstrap: Restore tar-specific code lost during last
sync from gnulib (241b72ffad).
* src/misc.c (chdir_do): Remove unused automatic variable.
Sergey Poznyakoff 14 years ago
parent
commit
983113b140
4 changed files with 86 additions and 10 deletions
  1. 3 3
      NEWS
  2. 81 4
      bootstrap
  3. 2 2
      configure.ac
  4. 0 1
      src/misc.c

+ 3 - 3
NEWS

@@ -1,8 +1,8 @@
-GNU tar NEWS - User visible changes. 2010-09-23
+GNU tar NEWS - User visible changes. 2010-10-24
 Please send GNU tar bug reports to <[email protected]>
 Please send GNU tar bug reports to <[email protected]>
 
 
 
 
-version 1.23.90 - (Git)
+version 1.24 - Sergey Poznyakoff, 2010-10-24
 
 
 * The --full-time option.
 * The --full-time option.
 
 
@@ -59,7 +59,7 @@ invoked as in the example below:
 
 
 ** --remove-files
 ** --remove-files
 
 
-Tar --remove-files failed to remove a directory which contained
+`Tar --remove-files' failed to remove a directory which contained
 symlinks to another files within that directory.
 symlinks to another files within that directory.
 
 
 ** --test-label behavior
 ** --test-label behavior

+ 81 - 4
bootstrap

@@ -1,6 +1,6 @@
 #! /bin/sh
 #! /bin/sh
 # Print a version string.
 # Print a version string.
-scriptversion=2010-10-08.16; # UTC
+scriptversion=2010-10-24.18; # UTC
 
 
 # Bootstrap this package from checked-out sources.
 # Bootstrap this package from checked-out sources.
 
 
@@ -49,6 +49,11 @@ Usage: $0 [OPTION]...
 Bootstrap this package from the checked-out sources.
 Bootstrap this package from the checked-out sources.
 
 
 Options:
 Options:
+ --paxutils-srcdir=DIRNAME  Specify the local directory where paxutils
+                          sources reside. Use this if you already
+                          have paxutils sources on your machine, and
+                          do not want to waste your bandwidth dowloading
+                          them again.
  --gnulib-srcdir=DIRNAME  Specify the local directory where gnulib
  --gnulib-srcdir=DIRNAME  Specify the local directory where gnulib
                           sources reside.  Use this if you already
                           sources reside.  Use this if you already
                           have gnulib sources on your machine, and
                           have gnulib sources on your machine, and
@@ -233,6 +238,8 @@ do
     exit;;
     exit;;
   --gnulib-srcdir=*)
   --gnulib-srcdir=*)
     GNULIB_SRCDIR=`expr "X$option" : 'X--gnulib-srcdir=\(.*\)'`;;
     GNULIB_SRCDIR=`expr "X$option" : 'X--gnulib-srcdir=\(.*\)'`;;
+  --paxutils-srcdir=*)
+    PAXUTILS_SRCDIR=`expr "$option" : '--paxutils-srcdir=\(.*\)'`;;
   --skip-po)
   --skip-po)
     SKIP_PO=t;;
     SKIP_PO=t;;
   --force)
   --force)
@@ -420,13 +427,38 @@ if test -d .git && (git --version) >/dev/null 2>/dev/null ; then
   fi
   fi
 fi
 fi
 
 
+cleanup() {
+   status=$?
+   rm -fr $1
+   exit $status
+}
 
 
 cleanup_gnulib() {
 cleanup_gnulib() {
-  status=$?
-  rm -fr "$gnulib_path"
-  exit $status
+  cleanup "$gnulib_path"
 }
 }
 
 
+# Get paxutils files.
+case ${PAXUTILS_SRCDIR--} in
+-) if [ ! -d paxutils ]; then
+     echo "$0: getting paxutils files..."
+
+     trap "cleanup paxutils" 1 2 13 15
+
+     git clone --depth 1 git://git.sv.gnu.org/paxutils || cleanup paxutils
+
+     trap - 1 2 13 15
+   fi
+   PAXUTILS_SRCDIR=paxutils
+   ;;
+esac
+
+if [ -r $PAXUTILS_SRCDIR/gnulib.modules ]; then
+  gnulib_modules=`
+    (echo "$gnulib_modules"; grep '^[^#]' $PAXUTILS_SRCDIR/gnulib.modules) |
+    sort -u
+  `
+fi
+
 git_modules_config () {
 git_modules_config () {
   test -f .gitmodules && git config --file .gitmodules "$@"
   test -f .gitmodules && git config --file .gitmodules "$@"
 }
 }
@@ -810,6 +842,51 @@ find "$m4_base" "$source_base" \
 
 
 # Reconfigure, getting other files.
 # Reconfigure, getting other files.
 
 
+# copy_files srcdir dstdir
+copy_files() {
+  for file in `cat $1/DISTFILES`
+  do
+    case $file in
+    "#*")  continue;;
+    esac
+    dst=`echo $file | sed 's^.*/^^'`
+    if [ $# -eq 3 ]; then
+      case $dst in
+      ${3}*) ;;
+      *) dst=${3}$dst;;
+      esac
+    fi
+    symlink_to_dir "$1" "$file" "$2/$dst" || exit
+# FIXME    ignorefile $2 $dst
+  done
+}
+
+# Import from paxutils
+copy_files ${PAXUTILS_SRCDIR} .
+copy_files ${PAXUTILS_SRCDIR}/am m4
+echo "$0: Creating m4/paxutils.m4"
+(echo "# This file is generated automatically. Please, do not edit."
+ echo "#"
+ echo "AC_DEFUN([${package}_PAXUTILS],["
+ cat ${PAXUTILS_SRCDIR}/am/DISTFILES | sed '/^#/d;s/\(.*\)\.m4/pu_\1/' | tr a-z A-Z
+ echo "])") > ./m4/paxutils.m4
+#FIXME ignorefile m4 paxutils.m4
+
+if [ -d rmt ]; then
+   :
+else
+   mkdir rmt
+fi
+
+for dir in doc rmt lib tests
+do
+	copy_files ${PAXUTILS_SRCDIR}/$dir $dir
+done
+
+copy_files ${PAXUTILS_SRCDIR}/paxlib lib pax
+
+
+
 # Skip autoheader if it's not needed.
 # Skip autoheader if it's not needed.
 grep -E '^[	 ]*AC_CONFIG_HEADERS?\>' configure.ac >/dev/null ||
 grep -E '^[	 ]*AC_CONFIG_HEADERS?\>' configure.ac >/dev/null ||
   AUTOHEADER=true
   AUTOHEADER=true

+ 2 - 2
configure.ac

@@ -19,12 +19,12 @@
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 # 02110-1301, USA.
 # 02110-1301, USA.
 
 
-AC_INIT([GNU tar], [1.23.90], [[email protected]])
+AC_INIT([GNU tar], [1.24], [[email protected]])
 AC_CONFIG_SRCDIR([src/tar.c])
 AC_CONFIG_SRCDIR([src/tar.c])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_HEADERS([config.h])
 AC_PREREQ([2.63])
 AC_PREREQ([2.63])
-AM_INIT_AUTOMAKE([1.11 gnits tar-ustar dist-bzip2 dist-shar std-options silent-rules])
+AM_INIT_AUTOMAKE([1.11 gnits tar-ustar dist-bzip2 dist-xz dist-shar std-options silent-rules])
 
 
 # Enable silent rules by default:
 # Enable silent rules by default:
 AM_SILENT_RULES([yes])
 AM_SILENT_RULES([yes])

+ 0 - 1
src/misc.c

@@ -728,7 +728,6 @@ chdir_do (int i)
 {
 {
   if (chdir_current != i)
   if (chdir_current != i)
     {
     {
-      static size_t counter;
       struct wd *curr = &wd[i];
       struct wd *curr = &wd[i];
       int fd = curr->fd;
       int fd = curr->fd;