coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[coreutils] [PATCH] maint: update to latest gnulib, for testsuite improv


From: Eric Blake
Subject: [coreutils] [PATCH] maint: update to latest gnulib, for testsuite improvement
Date: Fri, 31 Dec 2010 10:02:19 -0700

* gnulib: Update to latest for init.sh fix.
* bootstrap: Resync from gnulib.
* tests/init.sh: Likewise.
---

There are enough gnulib changes that I thought I'd ask for review
before pushing this.

* gnulib fe2a230...9dd4319 (88):
  > tests: avoid failing coreutils tests on cygwin
  > sys_select: Avoid warning about missing memset declaration on HP-UX 11.
  > waitpid: Fix link error in C++ mode.
  > isnan: Use GCC built-ins when possible.
  > isnand: Fix mistake.
  > open: Avoid C++ error on HP-UX 11.
  > time_r: Add missing declarations on HP-UX 11.
  > mountlist: tweak previous commit
  > mountlist: fix local drive detection on cygwin
  > ftoastr, snprintf: ftoastr + snprintf module
  > alloca: one step towards thread-safety
  > tests: minor indenting change
  > regex: don't infloop on persistent failing calloc
  > linkat: Make implementation robust against system behaviour variations.
  > New modules for grapheme cluster breaking.
  > linkat test: Avoid failure on Solaris 11 2010-11.
  > utimens: work around glibc rounding bug on more platforms
  > select tests: Improve comments.
  > select tests: Safer way of handling timeout.
  > select tests: Use 'bool' where appropriate.
  > select tests: Use existing modules.
  > mbrtowc: Work around a Solaris 7 bug.
  > read-file.c: tweak syntax
  > times test: Avoid gcc warnings on OSF/1.
  > utimens: work around glibc rounding bug on older Linux kernels
  > inet_ntop: Hide mismatch of declaration on NonStop Kernel.
  > inet_ntop, inet_pton: Ensure declaration on NonStop Kernel.
  > arpa_inet: Use the common idioms with C++ support.
  > Fix more C++ link errors on Solaris 8.
  > printf-posix: Fix link error when a non-GCC compiler is used.
  > strerror_r-posix: Update doc.
  > utimens: simplify the logic of the previous change
  > utimens: configure better on hosts with NFS clock skew
  > ptsname test: Avoid failure on Solaris.
  > ptsname: Avoid ERANGE failure on some systems.
  > rename, renameat: Avoid test failures at NFS mounted locations.
  > iswblank: Fix C++ link error on Solaris 8.
  > unistd: Fix C++ link error on Solaris 8.
  > readlink doc: Mention an old glibc bug.
  > fcntl-h: Fix for use of C++ on glibc systems.
  > roundl-ieee: Make it work on OSF/1 5.1 with cc.
  > truncl-ieee: Make it work on OSF/1 5.1 with cc.
  > ceill-ieee: Make it work on OSF/1 5.1 with cc.
  > Ensure all prerequisites of <wchar.h> are included.
  > strtok_r: Fix C syntax error in autoconf macro.
  > ceil, trunc, round: Fix gcc warnings.
  > update from texinfo
  > select tests: Avoid failures on OSF/1 5.1.
  > stdint: avoid HP-UX 10.20 preprocessor bug
  > pipe: make obsoletion transition easier
  > sys_socket: Hide mismatch of declarations on NonStop Kernel.
  > gethostname: Ensure declaration on NonStop Kernel.
  > sys_select: Ensure all necessary types on NonStop Kernel.
  > sys_select: Remove unneeded include.
  > gethostname: Provide a fallback for HOST_NAME_MAX.
  > sigaction tests: Allow missing SA_RESETHAND and SA_RESTART.
  > signal: Define NSIG.
  > rename, renameat: Avoid test failures on OSF/1 5.1.
  > *printf: Detect large precisions bug on Solaris 10/SPARC.
  > tests: port test-fdutimensat.c to Solaris 8
  > vsnprintf: make more consistent with snprintf; doc fixes
  > sigpipe: relax to LGPLv2+, since it did not have any LGPLv3+ parts
  > doc: document Solaris printf bug with large float precisions
  > test-posixtm.c: add two tests
  > getlogin_r: Work around portability problem on OSF/1.
  > ptsname: Avoid test failure on OSF/1 5.1.
  > Port extended stdio modules to HP NonStop Kernel.
  > ttyname_r: Work around bug on OSF/1 5.1.
  > Oops, fix last ChangeLog entry.
  > round: Implement result sign according to IEEE 754.
  > trunc: Implement result sign according to IEEE 754.
  > ceil: Implement result sign according to IEEE 754.
  > floor: Implement result sign according to IEEE 754.
  > getaddrinfo: Update doc.
  > getaddrinfo, inet_ntop: Update doc for Solaris.
  > New module 'roundl-ieee'.
  > New module 'truncl-ieee'.
  > New module 'ceill-ieee'.
  > New module 'floorl-ieee'.
  > New module 'round-ieee'.
  > New module 'trunc-ieee'.
  > New module 'ceil-ieee'.
  > New module 'floor-ieee'.
  > New module 'roundf-ieee'.
  > New module 'truncf-ieee'.
  > New module 'ceilf-ieee'.
  > New module 'floorf-ieee'.
  > Support for minus zero in autoconf macros.

 bootstrap     |   43 ++++++++++++++++++++++++++++++++++---------
 gnulib        |    2 +-
 tests/init.sh |    5 ++++-
 3 files changed, 39 insertions(+), 11 deletions(-)

diff --git a/bootstrap b/bootstrap
index 8c8d777..dcd4773 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Print a version string.
-scriptversion=2010-10-08.16; # UTC
+scriptversion=2010-11-20.03; # UTC

 # Bootstrap this package from checked-out sources.

@@ -54,6 +54,12 @@ Options:
                           have gnulib sources on your machine, and
                           do not want to waste your bandwidth downloading
                           them again.  Defaults to \$GNULIB_SRCDIR.
+ --bootstrap-sync         If this bootstrap script is not identical to
+                          the version in the local gnulib sources,
+                          update this script, and then restart it with
+                          /bin/sh or the shell \$CONFIG_SHELL if
+                          defined.
+ --no-bootstrap-sync      Do not check whether bootstrap is out of sync.
  --copy                   Copy files instead of creating symbolic links.
  --force                  Attempt to bootstrap even if the sources seem
                           not to have been checked out.
@@ -168,6 +174,10 @@ copy=false
 # on which version control system (if any) is used in the source directory.
 vc_ignore=auto

+# Set this to true in bootstrap.conf to enable --bootstrap-sync by
+# default.
+bootstrap_sync=false
+
 # find_tool ENVVAR NAMES...
 # -------------------------
 # Search for a required program.  Use the value of ENVVAR, if set,
@@ -239,6 +249,10 @@ do
     checkout_only_file=;;
   --copy)
     copy=true;;
+  --bootstrap-sync)
+    bootstrap_sync=true;;
+  --no-bootstrap-sync)
+    bootstrap_sync=false;;
   *)
     echo >&2 "$0: $option: unknown option"
     exit 1;;
@@ -344,17 +358,18 @@ get_version() {
   $app --version >/dev/null 2>&1 || return 1

   $app --version 2>&1 |
-  sed -n '# extract version within line
-          s/.*[v ]\{1,\}\([0-9]\{1,\}\.[.a-z0-9-]*\).*/\1/
-          t done
+  sed -n '# Move version to start of line.
+          s/.*[v ]\([0-9]\)/\1/
+
+          # Skip lines that do not start with version.
+          /^[0-9]/!d

-          # extract version at start of line
-          s/^\([0-9]\{1,\}\.[.a-z0-9-]*\).*/\1/
-          t done
+          # Remove characters after the version.
+          s/[^.a-z0-9-].*//

-          d
+          # The first component must be digits only.
+          s/^\([0-9]*\)[a-z-].*/\1/

-          :done
           #the following essentially does s/5.005/5.5/
           s/\.0*\([1-9]\)/.\1/g
           p
@@ -500,6 +515,16 @@ case ${GNULIB_SRCDIR--} in
   ;;
 esac

+if $bootstrap_sync; then
+  cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || {
+    echo "$0: updating bootstrap and restarting..."
+    exec sh -c \
+      'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \
+      -- "$GNULIB_SRCDIR/build-aux/bootstrap" \
+      "$0" "$@" --no-bootstrap-sync
+  }
+fi
+
 gnulib_tool=$GNULIB_SRCDIR/gnulib-tool
 <$gnulib_tool || exit

diff --git a/gnulib b/gnulib
index fe2a230..9dd4319 160000
--- a/gnulib
+++ b/gnulib
@@ -1 +1 @@
-Subproject commit fe2a2304a8635cdaabe93e4f5e49960bec1512b1
+Subproject commit 9dd43194a604772c35a91467b7fb65490f1374a3
diff --git a/tests/init.sh b/tests/init.sh
index 22ba236..e537b6c 100644
--- a/tests/init.sh
+++ b/tests/init.sh
@@ -245,6 +245,9 @@ find_exe_basenames_()
     # below, just skip it.
     test "x$feb_file_" = "x$feb_dir_/*.exe" && test ! -f "$feb_file_" \
       && continue
+    # Exempt [.exe, since we can't create a function by that name, yet
+    # we can't invoke [ by PATH search anyways due to shell builtins.
+    test "x$feb_file_" = "x$feb_dir_/[.exe" && continue
     case $feb_file_ in
       *[!-a-zA-Z/0-9_.+]*) feb_fail_=1; break;;
       *) # Remove leading file name components as well as the .exe suffix.
@@ -272,7 +275,7 @@ create_exe_shims_()
   esac

   base_names_=`find_exe_basenames_ $1` \
-    || { echo "$0 (exe_shim): skipping directory: $1" 1>&2; return 1; }
+    || { echo "$0 (exe_shim): skipping directory: $1" 1>&2; return 0; }

   if test -n "$base_names_"; then
     for base_ in $base_names_; do
-- 
1.7.3.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]