automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, branch-1.11, updated. v1.11


From: Ralf Wildenhues
Subject: [Automake-commit] [SCM] GNU Automake branch, branch-1.11, updated. v1.11.1-331-g5cb3469
Date: Sat, 22 Jan 2011 17:32:32 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=5cb3469bee764fda74215df0c2071afd9eedebac

The branch, branch-1.11 has been updated
       via  5cb3469bee764fda74215df0c2071afd9eedebac (commit)
       via  e9cb6db11693a39051b43574405c651ce91ab37d (commit)
       via  92c4c0c0a073fee1497ae70b8d269fc81f3884c7 (commit)
       via  4a492566abfbecd896073dc62e4099e182e5e69c (commit)
       via  c876b0e062a41150a667470e250794efed83f721 (commit)
       via  7e2e93d82b46e743c68a821684fc5afc54bfef54 (commit)
       via  e9b44d82fd9d4d55223f11a4fff011c2c7036175 (commit)
       via  4e1ab202ca72822803463aa71e676b938210f0f5 (commit)
       via  15a6e56f4a8f9e262631419dbfc46483c0b69428 (commit)
       via  10315b6dc8fe65f86a901ee9692271b2e8e4f541 (commit)
      from  49d4ef13d8071c9353354fd13df28ebd33db1b11 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 5cb3469bee764fda74215df0c2071afd9eedebac
Merge: 49d4ef1 e9cb6db
Author: Ralf Wildenhues <address@hidden>
Date:   Sat Jan 22 18:30:36 2011 +0100

    Merge branch 'maint' into branch-1.11

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                  |   50 ++++++++++++++++++++++++++++++++++++++++++++
 doc/automake.texi          |   14 ++++++++---
 lib/am/check.am            |    4 +++
 lib/install-sh             |   23 +++++++++++--------
 tests/fn99.test            |    5 +++-
 tests/fn99subdir.test      |    5 +++-
 tests/instsh2.test         |   36 +++++++++++++++++++++++++++++-
 tests/parallel-tests8.test |    4 +-
 tests/spy.test             |   16 ++++++++-----
 tests/suffix13.test        |    6 ++--
 tests/yflags.test          |    6 ++++-
 tests/yflags2.test         |    6 ++++-
 12 files changed, 144 insertions(+), 31 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 59534aa..7c8d481 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,53 @@
+2011-01-22  Ralf Wildenhues  <address@hidden>
+
+       tests: fix VPATH auto-expansion workarounds.
+       * tests/parallel-tests8.test, tests/suffix13.test:
+       Ensure $< is not surrounded by white space, to prevent Solaris
+       make from applying automatic VPATH text expansion.
+
+2011-01-22  Stefano Lattarini  <address@hidden>
+
+       tests: fix spurious failures in yflags*.test
+       * tests/yflags.test: Remove 'YACC' from the environment, so
+       that it won't be erroneously picked up by `make -e'.
+       * tests/yflags2.test: Likewise.
+
+2011-01-22  Ralf Wildenhues  <address@hidden>
+
+       tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
+       * tests/fn99.test, tests/fn99subdir.test: Skip if an initial
+       `cp -R' of the subdir tree already fails; AIX 5.3 cp messes
+       up its internal memory when copying this tree.
+
+2011-01-22  Ralf Wildenhues  <address@hidden>
+           Stefano Lattarini  <address@hidden>
+
+       Add comment to check-TESTS rule working around make 3.80 bug.
+       * lib/am/check.am (check-TESTS): Update comment.
+
+2011-01-20  Ralf Wildenhues  <address@hidden>
+
+       tests: less strict double-colon spy.test again.
+       * tests/spy.test: We know BSD make doesn't invoke more than one
+       double-colon rule, so no need to expose that failure.
+
+2011-01-19  Ralf Wildenhues  <address@hidden>
+
+       install-sh: avoid Tru64 sh `test' operator precedence issues.
+       * lib/install-sh: Protect file names and directory components
+       that consist of `=', `(', `)', or `!'.  Move protection as early
+       as possible, to avoid errors such as with Tru64 sh `test -z ='.
+       * tests/instsh2.test: Extend test to cover more possibilities.
+       Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
+
+2011-01-19  Stefano Lattarini  <address@hidden>
+           Ralf Wildenhues  <address@hidden>
+
+       docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
+       * doc/automake.texi (Simple Tests): Do not claim Automake uses
+       TESTS_ENVIRONMENT for the perl driver.  Instead, point to the
+       parallel-tests driver.
+
 2011-01-19  Ralf Wildenhues  <address@hidden>
 
        Allow _AM_DEPENDENCIES to be used later in configure.
diff --git a/doc/automake.texi b/doc/automake.texi
index 62540c5..bb6891a 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -8596,13 +8596,19 @@ variables for the test run; the environment variable 
@env{srcdir} is
 set in the rule.  If all your test programs are scripts, you can also
 set @code{TESTS_ENVIRONMENT} to an invocation of the shell (e.g.
 @samp{$(SHELL) -x} can be useful for debugging the tests), or any other
-interpreter.  For instance the following setup is used by the Automake
-package to run four tests in Perl.
+interpreter.  For instance, the following setup may be used to run tests
+with Perl:
+
 @example
-TESTS_ENVIRONMENT = $(PERL) -Mstrict -I $(top_srcdir)/lib -w
-TESTS = Condition.pl DisjConditions.pl Version.pl Wrap.pl
+TESTS_ENVIRONMENT = $(PERL) -Mstrict -w
+TESTS = foo.pl bar.pl baz.pl
 @end example
 
+Note that the @option{parallel-tests} driver provides a more elegant
+way to achieve the same effect, freeing the @code{TESTS_ENVIRONMENT}
+variable for the user to override (@pxref{Simple Tests using
+parallel-tests}).
+
 
 @cindex Tests, expected failure
 @cindex Expected test failure
diff --git a/lib/am/check.am b/lib/am/check.am
index 5728081..4d10ce9 100644
--- a/lib/am/check.am
+++ b/lib/am/check.am
@@ -235,6 +235,10 @@ check-TESTS:
 ## OTOH, this means that, in the rule for `$(TEST_SUITE_LOG)', we
 ## cannot use `$?' to compute the set of lazily rerun tests, lest
 ## we rely on .PHONY to work portably.
+##
+## Trailing whitespace in `TESTS = foo.test $(empty)' causes GNU make
+## 3.80 to erroneously expand $(TESTS_LOGS) to `foo.log .log'.
+## Work around this bug.
        @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
        @list='$(TEST_LOGS)';                                           \
        list=`for f in $$list; do                                       \
diff --git a/lib/install-sh b/lib/install-sh
index 3f83ce9..a9244eb 100755
--- a/lib/install-sh
+++ b/lib/install-sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2010-02-06.18; # UTC
+scriptversion=2011-01-19.21; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -156,6 +156,10 @@ while test $# -ne 0; do
     -s) stripcmd=$stripprog;;
 
     -t) dst_arg=$2
+       # Protect names problematic for `test' and other utilities.
+       case $dst_arg in
+         -* | [=\(\)!]) dst_arg=./$dst_arg;;
+       esac
        shift;;
 
     -T) no_target_directory=true;;
@@ -186,6 +190,10 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
     fi
     shift # arg
     dst_arg=$arg
+    # Protect names problematic for `test' and other utilities.
+    case $dst_arg in
+      -* | [=\(\)!]) dst_arg=./$dst_arg;;
+    esac
   done
 fi
 
@@ -232,9 +240,9 @@ fi
 
 for src
 do
-  # Protect names starting with `-'.
+  # Protect names problematic for `test' and other utilities.
   case $src in
-    -*) src=./$src;;
+    -* | [=\(\)!]) src=./$src;;
   esac
 
   if test -n "$dir_arg"; then
@@ -256,12 +264,7 @@ do
       echo "$0: no destination specified." >&2
       exit 1
     fi
-
     dst=$dst_arg
-    # Protect names starting with `-'.
-    case $dst in
-      -*) dst=./$dst;;
-    esac
 
     # If destination is a directory, append the input filename; won't work
     # if double slashes aren't ignored.
@@ -389,7 +392,7 @@ do
 
       case $dstdir in
        /*) prefix='/';;
-       -*) prefix='./';;
+       [-=\(\)!]*) prefix='./';;
        *)  prefix='';;
       esac
 
@@ -407,7 +410,7 @@ do
 
       for d
       do
-       test -z "$d" && continue
+       test X"$d" = X && continue
 
        prefix=$prefix$d
        if test -d "$prefix"; then
diff --git a/tests/fn99.test b/tests/fn99.test
index 982a989..a63f2ca 100755
--- a/tests/fn99.test
+++ b/tests/fn99.test
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2004, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2004, 2008, 2011 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
@@ -34,6 +34,9 @@ do
   touch x
 done) || Exit 77
 
+# AIX 5.3 `cp -R' is too buggy for `make dist'.
+cp -R 12345678 t || Exit 77
+
 $ACLOCAL
 $AUTOCONF
 $AUTOMAKE
diff --git a/tests/fn99subdir.test b/tests/fn99subdir.test
index 465f2af..33ac663 100755
--- a/tests/fn99subdir.test
+++ b/tests/fn99subdir.test
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008, 2011 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
@@ -55,6 +55,9 @@ do
   touch x
 done)
 
+# AIX 5.3 `cp -R' is too buggy for `make dist'.
+cp -R ${subdirname} t || Exit 77
+
 for init_dir in ${subdirname} .; do
        (
                cd ${init_dir} || Exit 1
diff --git a/tests/instsh2.test b/tests/instsh2.test
index 778c1a3..927edeb 100755
--- a/tests/instsh2.test
+++ b/tests/instsh2.test
@@ -1,5 +1,6 @@
 #! /bin/sh
-# Copyright (C) 2002, 2004, 2006, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2002, 2004, 2006, 2008, 2011 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
@@ -77,9 +78,40 @@ test -f d3/y
 ./install-sh -T x d3 && Exit 1
 ./install-sh -T x d4// && Exit 1
 
-# Ensure that install-sh works with names that include spaces
+# Ensure that install-sh works with names that include spaces.
 touch 'a  b'
 mkdir 'x  y'
 ./install-sh 'a  b' 'x  y'
 test -f x\ \ y/a\ \ b
 test -f 'a  b'
+
+# Ensure we do not run into `test' operator precedence bugs with Tru64 sh.
+for c in = '(' ')' '!'; do
+  ./install-sh $c 2>stderr && { cat stderr >&2; Exit 1; }
+  cat stderr >&2
+  grep 'test: ' stderr && Exit 1
+  # Skip tests if the file system is not capable.
+  mkdir ./$c || continue
+  rmdir ./$c
+  ./install-sh -d $c/$c/$c
+  rm -rf ./$c
+  ./install-sh -d $c d5/$c/$c
+  test -d ./$c
+  test -d d5/$c/$c
+  ./install-sh x $c
+  test -f ./$c/x
+  rm -f ./$c/x
+  ./install-sh -t $c x
+  test -f ./$c/x
+  rm -rf ./$c
+  ( : > ./$c ) || continue
+  ./install-sh $c x d5/$c/$c
+  test -f d5/$c/$c/x
+  test -f d5/$c/$c/$c
+  rm -f d5/$c/$c/?
+  ./install-sh -t d5/$c/$c $c x
+  test -f d5/$c/$c/x
+  test -f d5/$c/$c/$c
+done
+
+:
diff --git a/tests/parallel-tests8.test b/tests/parallel-tests8.test
index 43e67df..524b82b 100755
--- a/tests/parallel-tests8.test
+++ b/tests/parallel-tests8.test
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2009, 2010  Free Software Foundation, Inc.
+# Copyright (C) 2009, 2010, 2011 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
@@ -39,7 +39,7 @@ TESTS = foo.test
 TESTS += $(srcdir)/bar.test $(top_srcdir)/baz.test
 .in.test:
 ## Account for VPATH issues on weaker make implementations (e.g. IRIX 6.5)
-       cp `test -f $< || echo $(srcdir)/`$< $@
+       cp `test -f '$<' || echo $(srcdir)/`$< $@
        chmod +x $@
 check_SCRIPTS = $(TESTS)
 EXTRA_DIST = foo.in foo.test
diff --git a/tests/spy.test b/tests/spy.test
index ab68a61..5f1a87b 100755
--- a/tests/spy.test
+++ b/tests/spy.test
@@ -94,11 +94,15 @@ $sleep
 touch c
 $MAKE
 test "`cat a`" = rule2
-: > a
-$sleep
-touch b c
-$MAKE
-grep rule1 a
-grep rule2 a
+
+# Unfortunately, the following is not portable to FreeBSD/NetBSD/OpenBSD
+# make, see explanation above.
+
+#: > a
+#$sleep
+#touch b c
+#$MAKE
+#grep rule1 a
+#grep rule2 a
 
 :
diff --git a/tests/suffix13.test b/tests/suffix13.test
index aa5a3ed..8120024 100755
--- a/tests/suffix13.test
+++ b/tests/suffix13.test
@@ -1,6 +1,6 @@
 #! /bin/sh
-# Copyright (C) 2002, 2003, 2006, 2009, 2010 Free Software Foundation,
-# Inc.
+# Copyright (C) 2002, 2003, 2006, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
 #
 # This file is part of GNU Automake.
 #
@@ -39,7 +39,7 @@ SUFFIXES = .baz .c
 .baz.c:
        case $@ in sub/*) $(MKDIR_P) sub;; *) :;; esac
 ## Account for VPATH issues on weaker make implementations (e.g. IRIX 6.5)
-       cp `test -f $< || echo $(srcdir)/`$< $@
+       cp `test -f '$<' || echo $(srcdir)/`$< $@
 
 DISTCLEANFILES = sub/bar.c
 
diff --git a/tests/yflags.test b/tests/yflags.test
index fcb0c64..dbc3a73 100755
--- a/tests/yflags.test
+++ b/tests/yflags.test
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2010 Free Software Foundation, Inc.
+# Copyright (C) 2010, 2011 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
@@ -30,6 +30,10 @@ echo 'extern int dummy;' >> y.tab.c
 END
 chmod a+x fake-yacc
 
+# Remove Yacc from the environment, so that it won't interfere
+# with `make -e' below.
+unset YACC || :
+
 cat >> configure.in <<'END'
 AC_PROG_CC
 # Simulate presence of Yacc using our fake-yacc script.
diff --git a/tests/yflags2.test b/tests/yflags2.test
index 346c2e4..02aed8d 100755
--- a/tests/yflags2.test
+++ b/tests/yflags2.test
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2010 Free Software Foundation, Inc.
+# Copyright (C) 2010, 2011 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
@@ -31,6 +31,10 @@ echo 'extern int dummy;' >> y.tab.c
 END
 chmod a+x fake-yacc
 
+# Remove Yacc from the environment, so that it won't interfere
+# with `make -e' below.
+unset YACC || :
+
 cat >> configure.in <<'END'
 AC_PROG_CXX
 # Simulate presence of Yacc using our fake-yacc script.


hooks/post-receive
-- 
GNU Automake



reply via email to

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