+ 2011-10-18 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: fix spurious failure with FreeBSD make and Yacc in VPATH
+ * tests/subpkg.test: Some cosmetic adjustments. Move the tests
+ checking that $(YLWRAP) is defined and installed properly when
+ ylwrap is in a default auxdir found in a parent package ...
+ * tests/subpkg-yacc.test: ... into this new test, which carefully
+ avoids to trigger the known bug#7884 (combo FreeBSD make plus Yacc
+ plus VPATH build).
+ * tests/Makefile.am (TESTS): Update.
+
+ 2011-10-18 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: avoid spurious failure in 'parallel-tests3.test'
+ This fixes automake bug#8788.
+ * tests/parallel-tests3.test: To ensure that the serial run of
+ the dummy testsuite is still ongoing when the parallel run has
+ terminated, use `kill -0', not a bare `kill'. This will prevent
+ a testsuite crash on NetBSD 5.1, and a testsuite hang on FreeBSD
+ 8.2. Also, since we are at it, try harder to avoid possible
+ hangs of the script in other unusual situations.
+
+ 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: fix spurious failures with "chatty" make implementations
+ * tests/distcheck-missing-m4.test: On failure, some make
+ implementations (such as Solaris make) print the whole failed
+ recipe on standard output. This was causing a spurious failure
+ in the checks grepping the output from make. Work around this.
+ * tests/distcheck-outdated-m4.test: Likewise.
+
+ 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: fix spurious failure on fast machines
+ * tests/aclocal-path-precedence.test: Also remove the `configure'
+ script between different test runs, to ensure it is always remade
+ by autoconf. Add proper explicative comments.
+
+ 2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
+ * tests/uninstall-fail.test: All the Solaris 10 shells (/bin/sh,
+ /bin/ksh, and /usr/xpg4/bin/sh), upon failing to chdir to a
+ directory with the `cd' builtin, print a message like:
+ "sh: /root: permission denied"
+ which doesn't report the `cd' builtin anywhere. Relax the grepping
+ of the error message accordingly.
+
+ 2011-10-20 Jim Meyering <meyering@redhat.com>
+
+ tests: fix aclocal-print-acdir.test
+ * tests/aclocal-print-acdir.test: Adjust to pass.
+
+ 2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
+ * tests/uninstall-fail.test: Be sure to really skip this test
+ on systems that allows files to be removed from unwritable
+ directories. Motivated by a spurious failure on Cygwin 1.5.
+
+ 2011-10-17 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: fix spurious failure with autoconf 2.62
+ * tests/aclocal-path-precedence.test: Rewrite configure.in,
+ rather than appending to it, to avoid spurious failures (at
+ least with autoconf 2.62) due to repeated calls to AC_INIT.
+ Also, add package name and version arguments to AC_INIT, to
+ avoid spurious errors from automake.
+
+ 2011-10-16 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ docs: avoid using colon character inside arguments of @pxref
+ Fixes automake bug#9753
+ * doc/automake.texi (VPATH Builds): Avoid using colon character
+ `:' inside arguments of @pxref, as this can cause problems in
+ the generated `.info' files, and such an usage will be explicitly
+ forbidden by future texinfo documentation.
+ * THANKS: Update.
+ Reported by Дилян Палаузов.
+
+ 2011-10-17 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ refactor: improve signature of 'check_directory' sub in automake
+ * automake.in (check_directory): Take the relative directory
+ the directory to be checked is expected to be found into as
+ an optional parameter, rather than reading it from the global
+ variable `$relative_dir'.
+ (scan_autoconf_traces, check_directories_in_var): Adjust.
+
+2011-10-17 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ cosmetics: remove obsolete comment
+ * automake.in (push_required_file): Remove "FIXME" comment stating
+ that the special handling of `$config_aux_dir' breaks threaded
+ automake: this is not true anymore after the recent commits (see
+ in particular commit `v1.11-1225-gf672944').
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: fix spurious failure with Solaris /bin/sh
+ * tests/dist-auxfile.test: Don't use redirected `:' in a loop,
+ it hits a bug in Solaris 10 /bin/sh.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ threaded-am: better serialization for required config files
+ With this change, we make serialization/de-serialization of
+ required config files installs more granular, and in the process
+ fix the bug introduced by commit `v1.11-1219-g326ecba'.
+ * automake.in ($required_conf_file_queue): Move its declaration
+ earlier.
+ (require_file_internal): Add a new argument telling whether the
+ function should act immediately or queue its action for the master
+ thread to handle.
+ (queue_required_conf_file): Renamed ...
+ (queue_required_file_check_or_copy): ... to this.
+ (require_queued_conf_file): Renamed ...
+ (require_queued_file_check_or_copy): ... to this, and make it call
+ `required_file_check_or_copy' instead of `require_file_internal'.
+ (require_conf_file, handle_makefiles_threaded): Adjust and simplify
+ accordingly.
+ * tests/Makefile.am (XFAIL_TESTS): Remove `parallel-am.test'.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ automake: refactor, break up 'require_file_internal'
+ This refactoring is only required in view of future changes.
+ * automake.in (require_file_internal): Move the guts of this
+ function ...
+ (required_file_check_or_copy): ... into this new function. This
+ ensures that calls to `push_required_file' and code that copies
+ required files are placed in separate functions; this will be
+ very useful for reorganizing de-serialization of file installs
+ in future changes.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ dist: separate auxiliary file instantiation from DIST_COMMON update
+ This change simplifies the automake internals dealing with the
+ checking, copying and distributing of required auxiliary files.
+ With this change, a required auxiliary file is *unconditionally*
+ added to the contents of the DIST_COMMON variable in the generated
+ Makefile.in, before checking whether it exists, or trying to copy
+ it (if `--add-missing' is in use). This shouldn't be a problem,
+ since if the checking or copying of the file fails, automake will
+ bail out, the Makefile.in won't be created, and thus its content
+ will not matter. OK, this is not completely true when threaded
+ automake is in use, but then, such a situation was also possible
+ before this patch, so no regression here, which is enough for us.
+ This change is the first of a series of steps aimed at fixing
+ the regression introduced in threaded automake usage by commit
+ `v1.11-1219-g326ecba'.
+ * automake.in (require_file_internal): Add the required file to
+ DIST_COMMON unconditionally.
+ * tests/missing-auxfile-stops-makefiles-creation.test: New test.
+ * tests/Makefile.am (TESTS): Add it.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ refactor: rename a subroutine to a more proper name
+ * automake.in (maybe_push_require_file): Renamed ...
+ (push_required_file): ... to this.
+ All callers adjusted.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ dist: truly always distribute files in AC_REQUIRE_AUX_FILE
+ This change fixes automake bug#9651.
+ * automake.in (handle_dist): Files whose distribution is required
+ by configure.ac are now correctly distributed even if the build-aux
+ directory coincides with the top-level directory.
+ * tests/Makefile.am (XFAIL_TESTS): Remove `dist-auxfile.test'.
+ * NEWS: Update.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ dist: simplify automake code accordingly to the previous changes
+ After the previous change `v1.11-1219-g326ecba', every Makefile.am
+ requiring a file in the "config auxdir" will cause it to be listed
+ in the DIST_COMMON variable of the corresponding generated
+ Makefile.in, not only of the top-level Makefile.in. Thus we don't
+ need to worry anymore about trying to distribute files in the
+ config auxdir from the top-level Makefile or the Makefile in
+ config auxdir (if any). This allows us to carry out some useful
+ simplifications in the automake script.
+ This will however cause some changes in the generated Makefile;
+ for example, if the `PROGRAMS' primary is used only in a subdir
+ Makefile.am, the `depcomp' script will be distributed only by
+ `subdir/Makefile', not by the top-level Makefile. This change
+ can be seen as an internal detail though, and definitely warranted
+ by the nice simplifications the current commit provides.
+ * automake.in ($automake_will_process_aux_dir): Variable removed.
+ (scan_autoconf_files): Adjust and simplify.
+ (handle_makefiles_threaded): Likewise.
+ (get_number_of_threads): Likewise.
+ (require_file_internal): Likewise.
+ (maybe_push_required_file): Its return value is not used anymore,
+ so return nothing. Add special handling for distributed files from
+ `$config_libobj_dir'. Also, catch "this can't happen" situations,
+ and abort accordingly. Fix function description to better fit its
+ new role.
+ * tests/libobj19.test: Extend to also check situations where the
+ Makefile.am using $(LIBOBJS) is not the top-level one.
+ * tests/distcom6.test: Delete, merged into ...
+ * tests/distcom2.test: ... this test, which has been update to
+ account for the changed automake semantics.
+ * tests/Makefile.am (TESTS): Update.
+ * NEWS: Update.
+
+2011-10-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ dist: auxiliary files can be distributed from subdir Makefiles
+ With this change, we make it possible for a subdir Makefile.am
+ to distribute files in the config auxdir; while this means that
+ some files might be copied multiple times, it simplify some logic
+ in the automake script, and fix at least one important bug. In
+ fact, before this change, the auxiliary script `test-driver' was
+ not being distributed as expected when TESTS was defined only in
+ a subdir Makefile (which is a pretty common setup indeed). Now
+ this does not happen anymore: so the present change fixes automake
+ bug#9546.
+ Another welcome collateral effect is that `dist-auxfile-2.test'
+ now passes.
+ OTOH, the present changes *breaks threaded automake*. The reason
+ is that automake needs to serialize file installations spawned
+ by `--add-missing' (this isn't for cosmetic reasons, but is
+ really needed to avoid possible race conditions and botched output
+ files). Currently the code that installs required files is
+ intertwined with the code that declares the DIST_COMMON variables;
+ so, upon de-serialization, the definition of DIST_COMMON might get
+ emitted in the wrong Makefile.in.
+ Some follow-up refactoring in automake will soon take care of
+ remedying this situation. For the moment, we just declare some
+ "parallel-am" tests as xfailing.
+ * automake.in (maybe_push_required_file): Add ad-hoc handling for
+ the case where the directory part of the required file is different
+ from the subdir where the current Makefile.am resides, but is equal
+ to the "config-aux directory" ($config_auxdir). This is needed to
+ allow a construct in a non-top-level Makefile.am to require a file
+ in the config-aux directory.
+ * tests/test-driver-is-distributed.test: Extend and adjust. This
+ test now passes.
+ * tests/java-compile-run-nested.test: Call automake with the `-a'
+ option to ensure that the `test-driver' auxiliary script gets
+ correctly installed. This test now passes.
+ * tests/distcom-subdir.test: New test.
+ * tests/dist-readonly.test: Likewise.
+ * tests/dist-repeated.test: Likewise.
+ * tests/dist-auxdir-many-subdirs.test: Likewise.
+ * tests/distcom7.test: Removed, it's obsolete now.
+ * tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
+
+2011-10-11 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ coverage: conditional contents in LOG_DRIVER variables
+ * tests/test-driver-cond.test: New test.
+ * tests/Makefile.am (TESTS): Add it.
+
+2011-10-11 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ coverage: LOG_DRIVER variables can be defined through AC_SUBST
+ * tests/test-driver-acsubst.test: New test.
+ * tests/Makefile.am (TESTS): Add it.
+
2011-10-07 Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: warn on conditional TEST_EXTENSIONS definition