+ 2011-09-06 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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 <stefano.lattarini@gmail.com>
+
+ 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 <stefano.lattarini@gmail.com>
+
+ 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 <stefano.lattarini@gmail.com>
tests: fix spurious failures due to ignored signals
- 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 <ext>_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 `<ext>_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.