automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.13.1b-12


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.13.1b-127-gf0d1288
Date: Fri, 26 Apr 2013 18:54:27 +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=f0d1288f3a2033577ee4e374d203bcb5d8477a9d

The branch, maint has been updated
       via  f0d1288f3a2033577ee4e374d203bcb5d8477a9d (commit)
       via  3fd147d8cf435e337bc9c6270da23633993967cf (commit)
       via  526df875677f9e67b86c89ad1c611a77cb924662 (commit)
       via  13ca4c137dd5b33778861b82dfd1738fd601fb4f (commit)
       via  ad5816114582e329cfaf6df84ebfd6ddba190e34 (commit)
       via  fa55c5d8b1f37114c7c908957e9165b5accdd655 (commit)
       via  d23c55c2ef93c4678c5ded559663aa70699ff1d6 (commit)
       via  cfe0abc7fcedfac86c8928a7dce41aeb41f461a9 (commit)
       via  df375ef1c7f57bea5140b446ddd8ffb255913480 (commit)
       via  334a2e0b46c3d17ffb24f415cbec2e13e48b6c94 (commit)
       via  3de27839c88bda6c755f00c7142620080b725be0 (commit)
       via  2d47361d9b5a8f313408c940ed23a24592db88f7 (commit)
       via  40f949c71a05c411989746e74e661323b62ce083 (commit)
      from  6d457d8143f257f3af2f39fdfe5481816b40a5d0 (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 f0d1288f3a2033577ee4e374d203bcb5d8477a9d
Merge: ad58161 3fd147d
Author: Stefano Lattarini <address@hidden>
Date:   Fri Apr 26 20:39:40 2013 +0200

    Merge branch 'branch-1.13.2' into maint
    
    * branch-1.13.2:
      docs: issues with configure substitutions in TESTS
      tests: avoid possible autotools caching issues (automake bug#13832)
      docs: add myself and Ralf Wildenhues as authors
      authors: add myself
      dry-run: don't get confused by '-I' option
      tests: avoid a spurious failure with the Korn Shell
      dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
      header vars: can determine whether we are running under GNU make
      NEWS: improve wording for automake bug#13514 fix
      NEWS: document fix for automake bug#13514

commit ad5816114582e329cfaf6df84ebfd6ddba190e34
Author: Stefano Lattarini <address@hidden>
Date:   Thu Apr 25 22:02:14 2013 +0200

    tests: rename some with more descriptive names
    
    * t/tar3.sh: Rename ...
    * t/tar-opts-errors.sh: ... like this.
    * t/tar2.sh: Rename...
    * t/tar-pax.sh: ... like this.
    * t/tar.sh: Rename ...
    * t/tar-ustar.sh: ... like this.
    * t/list-of-tests.mk: Adjust.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

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

Summary of changes:
 AUTHORS                                 |    6 +++
 NEWS                                    |   23 ++++++++---
 doc/automake.texi                       |    8 ++++
 lib/am/header-vars.am                   |   57 ++++++++++++++++++-------
 t/ar-lib4.sh                            |    2 +
 t/lisp-flags.sh                         |    2 +-
 t/list-of-tests.mk                      |    9 ++--
 t/make-dryrun.tap                       |    4 +-
 t/{objext-pr10128.sh => make-is-gnu.sh} |   68 +++++++++++++++++-------------
 t/{tar3.sh => tar-opts-errors.sh}       |    0
 t/{tar2.sh => tar-pax.sh}               |    0
 t/{tar.sh => tar-ustar.sh}              |    0
 12 files changed, 120 insertions(+), 59 deletions(-)
 copy t/{objext-pr10128.sh => make-is-gnu.sh} (52%)
 rename t/{tar3.sh => tar-opts-errors.sh} (100%)
 rename t/{tar2.sh => tar-pax.sh} (100%)
 rename t/{tar.sh => tar-ustar.sh} (100%)

diff --git a/AUTHORS b/AUTHORS
index e63f8b7..a3c5c01 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -19,3 +19,9 @@ Alexandre Duret-Lutz
 Ralf Wildenhues
   Random breakage.
   Maintenance since 2006.
+
+Stefano Lattarini
+  Testsuite overhaul.
+  TAP support and custom testsuite drivers.
+  Random breakage.
+  De-facto maintenance since 2012.
diff --git a/NEWS b/NEWS
index 1d0d789..8e31050 100644
--- a/NEWS
+++ b/NEWS
@@ -206,12 +206,23 @@ New in 1.13.2:
     Automake 1.13, has turned out to be a similarly very bad idea,
     for exactly the same reason.
 
-  - Aclocal no longer error out if the first local m4 directory (as
-    specified by the '-I' option or the 'AC_CONFIG_MACRO_DIRS' or
-    'AC_CONFIG_MACRO_DIR' macros) doesn't exist; it merely report a
-    warning in the 'unsupported' category.  This is done to support
-    some pre-existing real-world usages; refer to automake bug#13514
-    for more details.
+  - aclocal will no longer error out if the first local m4 directory
+    (as specified by the '-I' option or the 'AC_CONFIG_MACRO_DIRS' or
+    'AC_CONFIG_MACRO_DIR' macros) doesn't exist; it will merely report
+    a warning in the 'unsupported' category.  This is done to support
+    some pre-existing real-world usages.  See automake bug#13514.
+
+  - aclocal will no longer consider directories for extra m4 files more
+    than once, even if they are specified multiple times.  This ensures
+    packages that specify both
+
+        AC_CONFIG_MACRO_DIR([m4])       in configure.ac
+        ACLOCAL_AMFLAGS = -I m4         in Makefile.am
+
+    will work correctly, even when the 'm4' directory contains no
+    package-specific files, but is used only to install third-party
+    m4 files (as can happen with e.g., "libtoolize --install").
+    See automake bug#13514.
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
diff --git a/doc/automake.texi b/doc/automake.texi
index d420d28..dda78a5 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -53,6 +53,8 @@ section entitled ``GNU Free Documentation License.''
 @author David MacKenzie
 @author Tom Tromey
 @author Alexandre Duret-Lutz
address@hidden Ralf Wildenhues
address@hidden Stefano Lattarini
 @page
 @vskip 0pt plus 1filll
 @insertcopying
@@ -9099,6 +9101,12 @@ followed by any number of alphabetic characters.
 For example, @samp{.sh}, @samp{.T} and @samp{.t1} are valid extensions,
 while @samp{.x-y}, @samp{.6c} and @samp{.t.1} are not.
 
address@hidden Configure substitutions in @code{TESTS}
+It is important to note that, due to current limitations (unlikely to be
+lifted), configure substitutions in the definition of @code{TESTS} can
+only work if they will expand to a list of tests that have a suffix listed
+in @code{TEST_EXTENSIONS}.
+
 @vindex _LOG_COMPILE
 @vindex _LOG_COMPILER
 @vindex _LOG_FLAGS
diff --git a/lib/am/header-vars.am b/lib/am/header-vars.am
index 9fda37c..d2f0984 100644
--- a/lib/am/header-vars.am
+++ b/lib/am/header-vars.am
@@ -26,32 +26,57 @@ VPATH = @srcdir@
 ## a vendor make.
 ## DESTDIR =
 
+## Shell code that determines whether we are running under GNU make.
+## This is somewhat of an hack, and might be improved, but is good
+## enough for now.
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+
 ## Shell code that determines whether make is running in "dry mode"
 ## ("make -n") or not.  Useful in rules that invoke make recursively,
 ## and are thus executed also with "make -n" -- either because they
 ## are declared as dependencies to '.MAKE' (NetBSD make), or because
 ## their recipes contain the "$(MAKE)" string (GNU and Solaris make).
-
 am__make_dryrun = \
   { \
     am__dry=no; \
-    case $$MAKEFLAGS in \
-## If we run "make TESTS='snooze nap'", GNU make will export MAKEFLAGS
-## to "TESTS=foo\ nap", so that the simpler loop below (on word-splitted
+    if $(am__is_gnu_make); then \
+## GNU make: $(MAKEFLAGS) is quite tricky there, and the older
+## $(MFLAGS) variable behaves much better.
+      for am__flg in $$MFLAGS; do \
+        case $$am__flg in \
+          *=*|--*) ;; \
+          -*n*) am__dry=yes; break;; \
+        esac; \
+      done; \
+    else \
+## Non-GNU make: we must rely on $(MAKEFLAGS).  This is tricky and brittle,
+## but is the best we can do.
+      case $$MAKEFLAGS in \
+## If we run "make TESTS='snooze nap'", FreeBSD make will export MAKEFLAGS
+## to " TESTS=foo\ nap", so that the simpler loop below (on word-splitted
 ## $$MAKEFLAGS) would see a "make flag" equal to "nap", and would wrongly
 ## misinterpret that as and indication that make is running in dry mode.
-## This has already happened in practice.  So we need this hack.
-      *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
-    esac; \
+## This has already happened in practice.  So we need this unpleasant hack.
+         *\\[\ \       ]*) \
+           echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+             | grep '^AM OK$$' >/dev/null || am__dry=yes ;; \
+         *) \
+          am__skip_next=no; \
+           for am__flg in $$MAKEFLAGS; do \
+            if test $$am__skip_next = yes; then \
+              am__skip_next=no; \
+              continue; \
+            fi; \
+             case $$am__flg in \
+               *=*|--*) ;; \
+## Quite ugly special-casing.  We might need other similar, but let's
+## wait until the need arises.
+              -I) am__skip_next=yes;; \
+               *n*) am__dry=yes; break;; \
+             esac; \
+           done ;;\
+       esac; \
+    fi; \
     test $$am__dry = yes; \
   }
 
diff --git a/t/ar-lib4.sh b/t/ar-lib4.sh
index 68615e8..4d3c40a 100755
--- a/t/ar-lib4.sh
+++ b/t/ar-lib4.sh
@@ -39,6 +39,8 @@ AUTOMAKE_fails
 
 grep 'requires.*AM_PROG_AR' stderr
 
+rm -rf autom4te*.cache
+
 cp X configure.ac
 
 cat >> configure.ac << 'END'
diff --git a/t/lisp-flags.sh b/t/lisp-flags.sh
index a31bcfd..1ea5b8e 100755
--- a/t/lisp-flags.sh
+++ b/t/lisp-flags.sh
@@ -20,7 +20,7 @@
 
 # Don't get fooled when running as an Emacs subprocess.  This is
 # for the benefit of the "make -e" invocation below.
-unset EMACS
+EMACS=; unset EMACS
 
 cat > Makefile.am << 'EOF'
 lisp_LISP = foo.el
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index 679fe5d..860aff1 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -666,8 +666,9 @@ t/makej.sh \
 t/makej2.sh \
 t/maken.sh \
 t/maken3.sh \
-t/make-dryrun.tap \
 t/makevars.sh \
+t/make-dryrun.tap \
+t/make-is-gnu.sh \
 t/man.sh \
 t/man2.sh \
 t/man3.sh \
@@ -1156,9 +1157,9 @@ t/tags.sh \
 t/tags2.sh \
 t/tagsub.sh \
 t/tags-pr12372.sh \
-t/tar.sh \
-t/tar2.sh \
-t/tar3.sh \
+t/tar-ustar.sh \
+t/tar-pax.sh \
+t/tar-opts-errors.sh \
 t/tar-override.sh \
 t/target-cflags.sh \
 t/targetclash.sh \
diff --git a/t/make-dryrun.tap b/t/make-dryrun.tap
index 1459a9f..208b421 100755
--- a/t/make-dryrun.tap
+++ b/t/make-dryrun.tap
@@ -112,10 +112,10 @@ check_make --dry -C using_gmake "\$MAKE is not GNU make" 
--dry-run -k
 
 pr='bug#13760'
 
-check_make --run -X -C make_supports_option_I "-I make option unsupported" \
+check_make --run -C make_supports_option_I "-I make option unsupported" \
                  -M "$pr" -I none
 
-check_make --run -X -C using_gmake "\$MAKE is not GNU make" \
+check_make --run -C using_gmake "\$MAKE is not GNU make" \
                  -M "$pr" -I none --include dry-run 
 
 check_make --dry -C make_supports_option_I "-I make option unsupported" \
diff --git a/t/objext-pr10128.sh b/t/make-is-gnu.sh
similarity index 52%
copy from t/objext-pr10128.sh
copy to t/make-is-gnu.sh
index 6fb64ab..c37cc17 100755
--- a/t/objext-pr10128.sh
+++ b/t/make-is-gnu.sh
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2012-2013 Free Software Foundation, Inc.
+# Copyright (C) 2013 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
@@ -14,45 +14,53 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Test for automake bug#10128: $(OBJEXT) redefinition causes
-# $(foo_OBJECTS) to be defined as empty.
+# Check that $(am__is_gnu_make) can be used to correctly determine if
+# we are running under GNU make.
 
 . test-init.sh
 
+if using_gmake; then
+ as_expected () { test $1 -eq 0 && test -f ok && test ! -e ko; }
+else
+ as_expected () { test $1 -gt 0 && test -f ko && test ! -e ok; }
+fi
+
 echo AC_OUTPUT >> configure.ac
 
 cat > Makefile.am <<'END'
-LINK = echo >$@ Linked $@ from
-OBJEXT = fasl
-EXEEXT =
-
-noinst_PROGRAMS = foo zardoz
-foo_SOURCES = foo.lisp
-zardoz_SOURCES = mu1.lisp mu2.lisp
-
-## Un-commenting this is enough to make the test pass.  Weird!
-##.lisp.o:
-
-.lisp.fasl:
-       touch $@
-
-.PHONY: test
-test:
-       is $(foo_OBJECTS) == foo.fasl
-       is $(zardoz_OBJECTS) == mu1.fasl mu2.fasl
+all: file
+       $(am__is_gnu_make)
+file:
+       if $(am__is_gnu_make); then : > ok; else : > ko; fi 
 END
 
 $ACLOCAL
-$AUTOMAKE
 $AUTOCONF
-
+$AUTOMAKE
 ./configure
-$MAKE test
-touch foo.lisp mu1.lisp mu2.lisp
-$MAKE all
-cat foo
-cat zardoz
-test "$(cat foo)"    = "Linked foo from foo.fasl"
-test "$(cat zardoz)" = "Linked zardoz from mu1.fasl mu2.fasl"
+
+st=0; $MAKE || st=$?
+if using_gmake; then
+ test $st -eq 0
+ test -f ok
+ test ! -e ko
+else
+ test $st -gt 0
+ test -f ko
+ test ! -e ok
+fi
+
+rm -f ok ko
+
+$MAKE -s file >output 2>&1
+cat output
+if using_gmake; then
+ test -f ok
+ test ! -e ko
+else
+ test -f ko
+ test ! -e ok
+fi
+test ! -s output
 
 :
diff --git a/t/tar3.sh b/t/tar-opts-errors.sh
similarity index 100%
rename from t/tar3.sh
rename to t/tar-opts-errors.sh
diff --git a/t/tar2.sh b/t/tar-pax.sh
similarity index 100%
rename from t/tar2.sh
rename to t/tar-pax.sh
diff --git a/t/tar.sh b/t/tar-ustar.sh
similarity index 100%
rename from t/tar.sh
rename to t/tar-ustar.sh


hooks/post-receive
-- 
GNU Automake



reply via email to

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