Merge branch 'maint'
authorStefano Lattarini <stefano.lattarini@gmail.com>
Fri, 13 Jul 2012 12:58:17 +0000 (14:58 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Fri, 13 Jul 2012 12:58:17 +0000 (14:58 +0200)
* maint:
  news: mention fixed testsuite weaknesses
  news: bump, for future 1.12.3
  tests: verify the shell test scripts are syntactically valid
  tests: don't use C instead of C++ compiler on case-insensitive platforms
  tests: avoid spurious TAP errors on Mac OS X 10.7
  tests: fix spurious failure in aclocal7.sh on fast machines

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
1  2 
Makefile.am
NEWS
configure.ac

diff --cc Makefile.am
@@@ -426,8 -426,43 +426,43 @@@ check-no-repeated-test-name
  check-local: check-no-repeated-test-name
  .PHONY: check-no-repeated-test-name
  
+ # Check that our test cases are syntactically correct.
+ # See automake bug#11898.
+ check-tests-syntax:
+       @st=0; \
+       err () { echo "$@: $$*" >&2; st=1; }; \
+ ## The user might do something like "make check TESTS=t/foo" or
+ ## "make check TESTS_LOGS=t/foo.log" and expect (say) the test
+ ## 't/foo.sh' to be run; this has worked well until today, and
+ ## we want to continue supporting this use case.
+       bases=`for log in : $(TEST_LOGS); do echo $$log; done \
+         | sed -e '/^:$$/d' -e 's/\.log$$//'`; \
+       for bas in $$bases; do \
+         for suf in sh tap pl; do \
+           tst=$$bas.$$suf; \
+ ## Emulate VPATH search.
+           if test -f $$tst; then \
+             break; \
+           elif test -f $(srcdir)/$$tst; then \
+             tst=$(srcdir)/$$tst; \
+             break; \
+           else \
+             tst=''; \
+           fi; \
+         done; \
+         test -n "$$tst" || err "couldn't find test '$$bas'"; \
+ ## Don't check that perl tests are valid shell scripts!
+         test $$suf = pl && continue; \
+         $(AM_V_P) && echo " $(AM_TEST_RUNNER_SHELL) -n $$tst"; \
+         $(AM_TEST_RUNNER_SHELL) -n "$$tst" \
+           || err "test '$$tst' syntactically invalid"; \
+       done; \
+       exit $$st
+ check-local: check-tests-syntax
+ .PHONY: check-tests-syntax
  ## Checking the list of tests.
 -test_subdirs = t t/pm t/perf
 +test_subdirs = t t/pm t/perf contrib/t
  include $(srcdir)/t/CheckListOfTests.am
  
  # Run the testsuite with the installed aclocal and automake.
diff --cc NEWS
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
@@@ -42,87 -43,8 +42,87 @@@ New in 1.13
                            of the now-removed automatic de-ANSI-fication
                            support of Automake)
  
 -  - All the "old alias" macros in 'm4/obsolete.m4' will be removed in
 -    the next major Automake version (1.13).
 +  - All the "old alias" macros in 'm4/obsolete.m4' have been removed.
 +
 +* Changes to Automake-generated testsuite harnesses:
 +
 +  - The parallel testsuite harness (previously only enabled by the
 +    'parallel-tests' option) is the default one; the older serial
 +    testsuite harness will still be available through the use of the
 +    'serial-tests' option (introduced in Automake 1.12).
 +
 +* Silent rules support:
 +
 +  - Support for silent rules is now always active in Automake-generated
 +    Makefiles.  So, although the verbose output is still the default,
 +    the user can now always use "./configure --enable-silent-rules" or
 +    "make V=0" to enable quieter output in the package he's building.
 +
 +  - The 'silent-rules' option has now become a no-op, preserved for
 +    backward-compatibility only.  In particular, its use does not disable
 +    the warnings in the 'portability-recursive' category anymore.
 +
 +* Texinfo Support:
 +
 +  - The rules to build PDF and DVI files from Texinfo input now use the
 +    ' --build-dir' option, to keep the auxiliary files used by texi2dvi
 +    and texi2pdf around without cluttering the build directory, and to
 +    make it possible to run the "dvi" and "pdf" recipes in parallel.
 +
 +* Automatic remake rules and 'missing' script:
 +
 +  - The 'missing' script does not try anymore to update the timestamp
 +    of out-of-date files that require a maintainer-specific tool to be
 +    remade, in case the user lacks such a tool (or has a too-old version
 +    of it).  It just give a useful warning, and in some cases also a tip
 +    about how to obtain such a tool.
 +
 +  - The missing script has thus become useless as a (poor) way to work
 +    around the sketched-timestamps issues that can happen for projects
 +    that keep generated files committed in their VCS repository.  Such
 +    projects are now encouraged to write a custom "fix-timestamps.sh"
 +    script to avoid such issues; a simple example is provided in the
 +    "CVS and generated files" chapter of the automake manual.
 +
 +* Recursive targets:
 +
 +  The user can now define his own recursive targets that recurse
 +  in the directories specified in $(SUBDIRS).  This can be done by
 +  specifying the name of such targets in invocations of the new
 +  'AM_EXTRA_RECURSIVE_TARGETS' m4 macro.
 +
 +* Improvements to aclocal and related rebuilds rules:
 +
 +  - The Autoconf-provided macro AC_CONFIG_MACRO_DIR is now traced by
 +    aclocal, and can be used to declare the local m4 include directory.
 +    Formerly, one had to specify it with an explicit '-I' option to the
 +    'aclocal' invocation.
 +
 +  - The special make variable ACLOCAL_AMFLAGS is deprecated; future
 +    Automake versions will warn about its use, and later version will
 +    remove support for it altogether.
 +
 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 +
- New in 1.12.2:
++New in 1.12.3:
 +
 +* WARNING: Future backward-incompatibilities!
 +
 +  - Future versions of Automake will likely drop support for the
 +    long-deprecated 'configure.in' name for the Autoconf input file.
 +    You are advised to use the recommended name 'configure.ac' instead.
 +
 +  - Starting from the next major Automake version (1.13), the rules to
 +    build pdf, ps and dvi output from Texinfo input will use the '--tidy'
 +    option by default.  Since such an option was introduced in Texinfo
 +    4.9, this means that Makefiles generated by future Automake versions
 +    will require at least that version of Texinfo.
 +
 +  - Starting from the next major Automake version (1.13), the parallel
 +    testsuite harness (previously only enabled by the 'parallel-tests'
 +    option) will become the default one; the older serial testsuite
 +    harness will still be available through the use of the 'serial-tests'
 +    option.
  
    - Support for the two- and three-arguments invocation forms of the
      AM_INIT_AUTOMAKE macro is deprecated, and will be removed in the
      giving more useful warnings than a bare "command not found" from a
      make recipe would.
  
+ * Automake Testsuite:
+   - Some testsuite weaknesses and spurious failures have been fixed.
++~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++
+ New in 1.12.2:
  * Warnings and deprecations:
  
    - Automake now issues a warning (in the 'portability' category) if
diff --cc configure.ac
Simple merge