automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, test-protocols, updated. v1


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, test-protocols, updated. v1.11-1002-g02dfe16
Date: Tue, 09 Aug 2011 21:36:20 +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=02dfe16d6d4e2738f00e168bc7f5c3a664e02530

The branch, test-protocols has been updated
       via  02dfe16d6d4e2738f00e168bc7f5c3a664e02530 (commit)
       via  b3c532b0a3dfb7129bf2119b31e87cc01b49e3d1 (commit)
       via  1f9b3058c7bb5166dd9f269f7c334797846a67cf (commit)
       via  18fb6351e0d7ffe88aac6043e43bcc5163a1dd53 (commit)
       via  f501499a97946794fe2e5f264e2276ffe826ec07 (commit)
       via  fe1b11ebe22d45eac5625b237d5dd4d20e0d03c8 (commit)
      from  6a50baf30f92cdcb393f801e8265eddf17ce00ac (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 -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 .gitignore                              |   16 ++++----
 ChangeLog                               |   45 +++++++++++++++++++++++++
 doc/.gitignore                          |   54 +++++++++++++++---------------
 doc/amhello/.gitignore                  |   23 ++++++++----
 lib/Automake/.gitignore                 |    2 +-
 lib/Automake/tests/.gitignore           |    5 +--
 lib/Automake/tests/Makefile.in          |    2 +-
 lib/am/check.am                         |    2 +-
 tests/.gitignore                        |   26 +++++++-------
 tests/Makefile.am                       |    1 +
 tests/Makefile.in                       |    3 +-
 tests/defs                              |   35 ++++++++++++++++++++
 tests/{colon.test => suffix-chain.test} |   38 ++++++++++++++--------
 tests/suffix10.test                     |    2 +
 tests/suffix11.test                     |    3 ++
 tests/suffix3.test                      |    2 +
 tests/suffix8.test                      |    1 +
 17 files changed, 183 insertions(+), 77 deletions(-)
 copy tests/{colon.test => suffix-chain.test} (60%)

diff --git a/.gitignore b/.gitignore
index 716ef8b..68a7fde 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,12 +1,12 @@
-autom4te.cache
+/autom4te.cache
+/aclocal
+/automake
+/config.cache
+/config.log
+/config.status
+/config.status.lineno
+/configure.lineno
 Makefile
-aclocal
-automake
-config.cache
-config.log
-config.status
-config.status.lineno
-configure.lineno
 cscope.files
 cscope.in.out
 cscope.out
diff --git a/ChangeLog b/ChangeLog
index 03bd202..0be0272 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,50 @@
 2011-08-09  Stefano Lattarini  <address@hidden>
 
+       test harness: recursive make invocations must use $(AM_MAKEFLAGS)
+       * lib/am/check.am ($(TEST_SUITE_LOG)): Pass $(AM_MAKEFLAGS)
+       to $(MAKE) when issuing a recursive make call.
+       Problem detected by the `sc_tests_make_without_am_makeflags'
+       maintainer check.
+
+2011-08-09  Stefano Lattarini  <address@hidden>
+
+       tests: fix various blunders in 'suffix-chain.test'
+       * tests/suffix-chain.test: Fix various blunders that were causing
+       this test to fail spuriously: append to `configure.in', not to
+       `configure.ac'; add a `;' character after the `return' statement
+       in an input file; use tabs, not spaces, to indent Makefile recipes;
+       and use more uncommon suffixes that don't trigger built-in recipes
+       with FreeBSD make.
+
+2011-08-09  Stefano Lattarini  <address@hidden>
+
+       tests: don't let a known Solaris make bug poison too many tests
+       See automake bug#7670 and bug#7824.
+       * tests/defs (make_can_chain_suffix_rules): New function, tell
+       whether the make implementation in use can chain suffix rules
+       automatically or not.
+       * tests/suffix3.test: Use it to avoid issuing calls to make that
+       are unportable to make implementations that are not smart enough
+       to chain suffix rules automatically.
+       * tests/suffix8.test: Use it to avoid issuing calls to make that
+       * tests/suffix10.test: Use it to avoid issuing calls to make that
+       * tests/suffix11.test: Use it to avoid issuing calls to make that
+       * tests/suffix-chain.test: New test, exposes the limitation that
+       we have papered over in the tests above.
+
+2011-08-09  Stefano Lattarini  <address@hidden>
+
+       gitignore: more use of anchors
+       * .gitignore: Anchor files that are intended to be ignored only
+       if found in the same directory of the `.gitignore' file, not also
+       in its subdirectories.
+       * doc/.gitignore, doc/amhello/.gitignore, lib/Automake/.gitignore,
+       lib/Automake/tests/.gitignore, tests/.gitignore: Likewise.  Also,
+       where needed, add new entries that were once implied by the
+       non-anchored entries in the upper-level `.gitignore' files.
+
+2011-08-09  Stefano Lattarini  <address@hidden>
+
        testsuite: avoid spurious failure of self checks on Solaris
        This is just a quick workaround to prevent having too much noise
        in the testsuite; more proper fixes have been committed into the
diff --git a/doc/.gitignore b/doc/.gitignore
index 2554ab9..66b9b42 100644
--- a/doc/.gitignore
+++ b/doc/.gitignore
@@ -1,27 +1,27 @@
-amhello-*.tar.gz
-automake.info
-automake.info-[0-9]
-automake*.1
-aclocal*.1
-stamp-vti
-version.texi
-automake.ac
-automake.aux
-automake.cm
-automake.cp
-automake.cps
-automake.dvi
-automake.fn
-automake.fns
-automake.html
-automake.ky
-automake.log
-automake.op
-automake.pdf
-automake.pg
-automake.ps
-automake.toc
-automake.tp
-automake.tr
-automake.vr
-automake.vrs
+/amhello-*.tar.gz
+/automake.info
+/automake.info-[0-9]
+/automake*.1
+/aclocal*.1
+/stamp-vti
+/version.texi
+/automake.ac
+/automake.aux
+/automake.cm
+/automake.cp
+/automake.cps
+/automake.dvi
+/automake.fn
+/automake.fns
+/automake.html
+/automake.ky
+/automake.log
+/automake.op
+/automake.pdf
+/automake.pg
+/automake.ps
+/automake.toc
+/automake.tp
+/automake.tr
+/automake.vr
+/automake.vrs
diff --git a/doc/amhello/.gitignore b/doc/amhello/.gitignore
index 466b7a6..cdd9777 100644
--- a/doc/amhello/.gitignore
+++ b/doc/amhello/.gitignore
@@ -1,8 +1,15 @@
-Makefile.in
-aclocal.m4
-config.h.in
-config.h.in~
-configure
-depcomp
-install-sh
-missing
+/Makefile.in
+/Makefile
+/autom4te.cache
+/aclocal.m4
+/config.h.in
+/config.h.in~
+/configure
+/configure.lineno
+/config.status
+/config.status.lineno
+/config.cache
+/config.log
+/depcomp
+/install-sh
+/missing
diff --git a/lib/Automake/.gitignore b/lib/Automake/.gitignore
index d539f93..f99f508 100644
--- a/lib/Automake/.gitignore
+++ b/lib/Automake/.gitignore
@@ -1 +1 @@
-Config.pm
+/Config.pm
diff --git a/lib/Automake/tests/.gitignore b/lib/Automake/tests/.gitignore
index bc2e76d..56e8f36 100644
--- a/lib/Automake/tests/.gitignore
+++ b/lib/Automake/tests/.gitignore
@@ -1,3 +1,2 @@
-*.log
-*.log-t
-*.trs
+/*.trs
+/*.log
diff --git a/lib/Automake/tests/Makefile.in b/lib/Automake/tests/Makefile.in
index fff8f6e..c898f49 100644
--- a/lib/Automake/tests/Makefile.in
+++ b/lib/Automake/tests/Makefile.in
@@ -375,7 +375,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
          redo_bases="$$redo_bases" \
          redo_logs="$$redo_logs" \
          redo_results="$$redo_results" \
-           $(MAKE) am--redo-logs || exit 1; \
+           $(MAKE) $(AM_MAKEFLAGS) am--redo-logs || exit 1; \
        else :; fi;
        @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
        ws='[   ]'; \
diff --git a/lib/am/check.am b/lib/am/check.am
index 2b58c57..76c5273 100644
--- a/lib/am/check.am
+++ b/lib/am/check.am
@@ -170,7 +170,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
          redo_bases="$$redo_bases" \
          redo_logs="$$redo_logs" \
          redo_results="$$redo_results" \
-           $(MAKE) am--redo-logs || exit 1; \
+           $(MAKE) $(AM_MAKEFLAGS) am--redo-logs || exit 1; \
        else :; fi;
 ## We need a new subshell to work portably with "make -n", since the
 ## previous part of the recipe contained a $(MAKE) invocation.
diff --git a/tests/.gitignore b/tests/.gitignore
index 0d5a032..eac67e6 100644
--- a/tests/.gitignore
+++ b/tests/.gitignore
@@ -1,13 +1,13 @@
-aclocal-*
-automake-*
-defs-static
-instspc-tests.am
-parallel-tests.am
-*.dir
-*.log
-*.trs
-*.log-t
-*-p.test
-instspc-*-build.test
-instspc-*-install.test
-*.test-t
+/aclocal-*
+/automake-*
+/defs-static
+/instspc-tests.am
+/parallel-tests.am
+/*.dir
+/*.log
+/*.trs
+/*.log-t
+/*-p.test
+/instspc-*-build.test
+/instspc-*-install.test
+/*.test-t
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 57d46f4..6f2e91a 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1001,6 +1001,7 @@ suffix10.test \
 suffix11.test \
 suffix12.test \
 suffix13.test \
+suffix-chain.test \
 symlink.test \
 symlink2.test \
 syntax.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 3573bb0..0d2bbf8 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -1259,6 +1259,7 @@ suffix10.test \
 suffix11.test \
 suffix12.test \
 suffix13.test \
+suffix-chain.test \
 symlink.test \
 symlink2.test \
 syntax.test \
@@ -1529,7 +1530,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
          redo_bases="$$redo_bases" \
          redo_logs="$$redo_logs" \
          redo_results="$$redo_results" \
-           $(MAKE) am--redo-logs || exit 1; \
+           $(MAKE) $(AM_MAKEFLAGS) am--redo-logs || exit 1; \
        else :; fi;
        @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
        ws='[   ]'; \
diff --git a/tests/defs b/tests/defs
index b682c5e..533c881 100644
--- a/tests/defs
+++ b/tests/defs
@@ -203,6 +203,41 @@ using_gmake ()
   esac
 }
 
+# make_can_chain_suffix_rules
+# ---------------------------
+# Return 0 if $MAKE is a make implementation that can chain suffix rules
+# automatically, return 1 otherwise.  Caches the result for speed reasons.
+make_can_chain_suffix_rules ()
+{
+  if test -z "$am__can_chain_suffix_rules"; then
+    if using_gmake; then
+      am__can_chain_suffix_rules=yes
+      return 0
+    else
+      mkdir am__chain.dir$$
+      cd am__chain.dir$$
+      unindent > Makefile << 'END'
+        .u.v: ; cp $< $@
+        .v.w: ; cp $< $@
+END
+      echo make can chain suffix rules > foo.u
+      if $MAKE foo.w && diff foo.u foo.w; then
+        am__can_chain_suffix_rules=yes
+      else
+        am__can_chain_suffix_rules=no
+      fi
+      cd ..
+      rm -rf am__chain.dir$$
+    fi
+  fi
+  case $am__can_chain_suffix_rules in
+    yes) return 0;;
+     no) return 1;;
+      *) fatal_ "make_can_chain_suffix_rules: internal error";;
+  esac
+}
+am__can_chain_suffix_rules="" # Avoid interferences from the environment.
+
 # count_test_results total=N pass=N fail=N xpass=N xfail=N skip=N error=N
 # -----------------------------------------------------------------------
 # Check that a testsuite run driven by the parallel-tests harness has
diff --git a/tests/colon.test b/tests/suffix-chain.test
similarity index 60%
copy from tests/colon.test
copy to tests/suffix-chain.test
index ff44e0b..82f0fa2 100755
--- a/tests/colon.test
+++ b/tests/suffix-chain.test
@@ -1,6 +1,5 @@
 #! /bin/sh
-# Copyright (C) 1996, 2000, 2001, 2002, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 2002, 2003, 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
@@ -15,33 +14,44 @@
 # 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 bug reported by Nyul Laszlo.  When using the ":" syntax in
-# AC_OUTPUT, Automake fails to find the correct file.
+# Check that Automake can emit code that work round the inability of
+# some make implementations to automatically chain suffix rules.
+# See automake bug#7824 and bug#7670.
 
 . ./defs || Exit 1
 
 cat >> configure.in <<'END'
-AC_CONFIG_FILES([foo.h:foo.hin])
+AC_PROG_CC
 AC_OUTPUT
 END
 
-: > foo.hin
-
 cat > Makefile.am <<'END'
-.PHONY: test
-test: distdir
-       ls -l . $(distdir)
-       test -f foo.h
-       test -f $(distdir)/foo.hin
+bin_PROGRAMS = foo
+foo_SOURCES = foo.c1
+.c1.c0:
+       (echo 'int main (void)' && echo '{' && cat $<) > $@
+.c0.c:
+       (cat $< && echo '}') > $@
+CLEANFILES = foo.c0 foo.c
 END
 
+echo 'return 0;' > foo.c1
+
 $ACLOCAL
 $AUTOMAKE
 $AUTOCONF
-
 ./configure
 
-$MAKE test
+$MAKE
 $MAKE distcheck
 
+$MAKE clean
+
+cat >> Makefile <<'END'
+foo.c: foo.c0
+foo.c0: foo.c1
+END
+
+$MAKE
+
 :
diff --git a/tests/suffix10.test b/tests/suffix10.test
index 026da24..091ca9f 100755
--- a/tests/suffix10.test
+++ b/tests/suffix10.test
@@ -61,6 +61,8 @@ $AUTOMAKE --add-missing
 
 ./configure
 $MAKE test
+
+make_can_chain_suffix_rules || skip_ "make doesn't chain suffix rules"
 $MAKE all
 
 :
diff --git a/tests/suffix11.test b/tests/suffix11.test
index daeba1c..8979bbe 100755
--- a/tests/suffix11.test
+++ b/tests/suffix11.test
@@ -68,6 +68,9 @@ $AUTOMAKE -a -Wno-portability
 
 OBJEXT=foo $MAKE -e test-fake
 $MAKE test-real
+
+make_can_chain_suffix_rules || skip_ "make doesn't chain suffix rules"
+
 $MAKE
 $MAKE distcheck
 
diff --git a/tests/suffix3.test b/tests/suffix3.test
index e0c01f6..029e5bd 100755
--- a/tests/suffix3.test
+++ b/tests/suffix3.test
@@ -47,6 +47,8 @@ $FGREP foo.c Makefile.in && Exit 1
 # transformed into foo.o, and use this latter file (to link foo).
 $FGREP 'foo.$(OBJEXT)' Makefile.in
 
+make_can_chain_suffix_rules || skip_ "make doesn't chain suffix rules"
+
 $AUTOCONF
 ./configure
 
diff --git a/tests/suffix8.test b/tests/suffix8.test
index 921c641..99582d7 100755
--- a/tests/suffix8.test
+++ b/tests/suffix8.test
@@ -79,6 +79,7 @@ $AUTOMAKE -a
 
 OBJEXT=foo $MAKE -e test0
 $MAKE test1
+make_can_chain_suffix_rules || skip_ "make doesn't chain suffix rules"
 $MAKE test2
 $MAKE all
 $MAKE distcheck


hooks/post-receive
-- 
GNU Automake



reply via email to

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