From: Stefano Lattarini Date: Fri, 13 Jul 2012 12:58:17 +0000 (+0200) Subject: Merge branch 'maint' X-Git-Tag: v1.12b~79 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7eccbf44fcee432c20ccd95b384f1c3494e4712c;p=thirdparty%2Fautomake.git Merge branch 'maint' * 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 --- 7eccbf44fcee432c20ccd95b384f1c3494e4712c diff --cc Makefile.am index 8e6689437,5aa543e9c..a5332d373 --- a/Makefile.am +++ b/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 index c5ea50fc2,a18e36e28..d2fc46d22 --- a/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 @@@ -139,6 -66,12 +139,14 @@@ 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