From: Stefano Lattarini Date: Thu, 8 Sep 2011 15:52:22 +0000 (+0200) Subject: Merge branch 'master' into test-protocols X-Git-Tag: ng-0.5a~89^2~65^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=95d11c290f223a8aa3f3e2e3474020e8a10585aa;p=thirdparty%2Fautomake.git Merge branch 'master' into test-protocols * master: aclocal: more granularity in acdir overriding --- 95d11c290f223a8aa3f3e2e3474020e8a10585aa diff --cc ChangeLog index a3777fe32,0152bfc8c..72ae7dd74 --- a/ChangeLog +++ b/ChangeLog @@@ -1,20 -1,42 +1,59 @@@ + 2011-09-06 Stefano Lattarini + + aclocal: more granularity in acdir overriding + Before this change, using the `--acdir' option caused aclocal to + redefine both the directory of automake-provided m4 macros and the + directory of third-party system-wide m4 macros. With this change, + we deprecate the `--acdir' aclocal option, and introduce two new + options `--automake-acdir' and `--system-acdir', to allow for more + granularity. + * aclocal.in (@automake_includes, @system_includes, + @user_includes): Fix and extend comments. + (usage): Update. + (handle_acdir_option): New function. + (parse_arguments): Recognize new options `--system-acdir' and + `automake-acdir', and handle `--acdir' using the new function + above. Simplify logic by assuming that the directory of + third-party system-wide m4 files always exists. + * tests/aclocal.in: Update to use the new options, instead of + the deprecated. `--acdir'. + * m4/dirlist: Move ... + * m4/acdir/dirlist: ... here. + * m4/Makefile.am (EXTRA_DIST): Update. + (m4datadir): Rename ... + (automake_acdir): ... to this. Accordingly, ... + (dist_m4data_DATA): ... rename this ... + (dist_automake_ac_DATA): ... to this. + (system_acdir): New, directory. + (dist_system_ac_DATA): New, defined to an empty value; this will + ensure that the $(system_acdir) directory will be created by + "make install". + * tests/aclocal.test: Remove check about the `--print-ac-dir' + option of aclocal, it has been moved into ... + * tests/aclocal-print-acdir.test: ... this new test, and quite + extended. + * tests/aclocal-acdir.test: New test. + * tests/Makefile.am (TESTS): Add the new tests. + * NEWS, bootstrap: Update. + * doc/automake.texi (aclocal Options, Macro Search Path): Update. + +2011-09-07 Stefano Lattarini + + tap/perl: be more portable to older perl versions + * lib/tap-driver.pl (trap_perl_warnings_and_errors): Do not use + the three-args version of the `open' builtin, it is not well + supported by older perl versions (at least perl 5.6.2). + (start): Add a no-op statement to pacify a "possible typo ... used + only once" perl warning. + +2011-09-07 Stefano Lattarini + + tap/perl: be more portable to older TAP::Parser versions + * lib/tap-driver.pl (start): Do not call the `ignore_exit' method + on our TAP parser: it is not supported in older TAP::Parser + versions (e.g., 3.10), and is not really required by our usage of + the parser object. + 2011-09-06 Stefano Lattarini tests: fix spurious failures due to ignored signals diff --cc NEWS index b16a3235e,60b89d5ab..d885b5431 --- a/NEWS +++ b/NEWS @@@ -7,82 -7,18 +7,87 @@@ New in 1.11a - The deprecated options `--output-dir', `--Werror' and `--Wno-error' have been removed. -* New targets: - - - New `cscope' target to build a cscope database for the source tree. - - - The `--acdir' option of aclocal is deprecated, and will probably be - removed in the next major Automake release (1.12). - + * Changes to aclocal: + + - The `--acdir' option is deprecated. Now you should use th new options + `--automake-acdir' and `--system-acdir' instead. + +* New targets: + + - New `cscope' target to build a cscope database for the source tree. + +* Changes to Automake-generated testsuite harnesses: + + - Test scripts that exit with status 99 to signal an "hard error" (e.g., + and unexpected or internal error, or a failure to set up the test case + scenario) have their outcome reported as an 'ERROR' now. Previous + versions of automake reported such an outcome as a 'FAIL' (the only + difference with normal failures being that hard errors were counted + as failures even when the test originating them was listed in + XFAIL_TESTS). + + - The testsuite summary displayed by the parallel-test harness has a + completely new format, that always list the numbers of passed, failed, + xfailed, xpassed, skipped and errored tests, even when these numbers + are zero (but using smart coloring when the color-tests option is in + effect). + + - The default testsuite driver offered by the 'parallel-tests' option is + now implemented (partly at least) with the help of automake-provided + auxiliary scripts (e.g., `test-driver'), instead of relying entirely + on code in the generated Makefile.in. + This has two noteworthy implications. The first one is that projects + using the `parallel-tests' option should now either run automake with + the `--add-missing' option, or manually copy the `test-driver' script + into their tree. The second, and more important, implication is that + now, when the `parallel-tests' option is in use, TESTS_ENVIRONMENT can + not be used anymore to define a test runner, and the command specified + in LOG_COMPILER (and _LOG_COMPILER) must be a *real* executable + program or script. For example, this is still a valid usage (albeit + a little contorted): + + TESTS_ENVIRONMENT = \ + if test -n '$(STRICT_TESTS)'; then \ + maybe_errexit='-e'; \ + else \ + maybe_errexit=''; \ + fi; + LOG_COMPILER = $(SHELL) $$maybe_errexit + + while this is not anymore: + + TESTS_ENVIRONMENT = \ + $(SHELL) `test -n '$(STRICT_TESTS_CHECKING)' && echo ' -e'` + + neither is this: + + TESTS_ENVIRONMENT = \ + run_with_perl_or_shell () \ + { \ + if grep -q '^#!.*perl' $$1; then + $(PERL) $$1; \ + else \ + $(SHELL) $$1; \ + fi; \ + } + LOG_COMPILER = run_with_per_or_shell + + - The package authors can now use customary testsuite drivers within + the framework provided by the 'parallel-tests' testsuite harness. + Consistently with the existing syntax, this can be done by defining + special makefile variables `LOG_DRIVER' and `_LOG_DRIVER'. + + - A new developer-reserved variable `AM_TESTS_FD_REDIRECT' can be used + to redirect/define file descriptors used by the test scripts. + + - The parallel-tests harness generates now, in addition the `.log' files + holding the output produced by the test scripts, a new set of `.trs' + files, holding "metadata" derived by the execution of the test scripts; + among such metadata are the outcomes of the test cases run by a script. + + - Initial and still experimental support for the TAP test protocol is + now provided. + * Miscellaneous changes: - The `dist' and `dist-all' targets now can run compressors in parallel. diff --cc tests/Makefile.am index 4c3046d5d,1814e43e6..f2062264d --- a/tests/Makefile.am +++ b/tests/Makefile.am @@@ -136,7 -131,14 +136,9 @@@ acloca20.test acloca21.test \ acloca22.test \ acloca23.test \ +ac-output-old.tap \ + aclocal-acdir.test \ + aclocal-print-acdir.test \ -acoutnoq.test \ -acoutpt.test \ -acoutpt2.test \ -acoutqnl.test \ -acoutbs.test \ -acoutbs2.test \ acsilent.test \ acsubst.test \ acsubst2.test \ diff --cc tests/Makefile.in index 55355cc40,98bdb5ab5..0e226d1c4 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@@ -394,7 -403,14 +394,9 @@@ acloca20.test acloca21.test \ acloca22.test \ acloca23.test \ +ac-output-old.tap \ + aclocal-acdir.test \ + aclocal-print-acdir.test \ -acoutnoq.test \ -acoutpt.test \ -acoutpt2.test \ -acoutqnl.test \ -acoutbs.test \ -acoutbs2.test \ acsilent.test \ acsubst.test \ acsubst2.test \