2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ More stable configure output from sanity check.
+ * m4/sanity.m4 (AM_SANITY_CHECK): Always print check line
+ about ensuring newer files, even if we don't actually need
+ to wait any more.
+
++2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Rebuild menus in the manual.
+ * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
+ Thanks to Ian Lance Taylor for the suggestion.
+
+ Fix install-strip when $(STRIP) contains several words.
+ * lib/am/install.am (install-strip): Update comment. Use
+ separate sub-make invocations for empty and nonempty $(STRIP),
+ to fix quoting issues.
+ * tests/strip2.test, tests/strip3.test: New tests.
+ * tests/Makefile.am (TESTS): Adjust.
+
+2010-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Fix yaccdry.test failure: require bison.
+ * tests/yaccdry.test: Require bison.
+ Found by NixOS Hydra.
+
+2010-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Fix bug in test `backcompat6.test' (MSYS portability).
+ * tests/backcompat6.test (Makefile.am): Grep the output from the
+ test program, rather than diffing it, to avoid spurious failures
+ on MinGW/MSYS due to LF vs. CRLF line endings.
+ Reported by Ralf Wildenhues.
+
+2010-11-13 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Deprecate obsolete macro AM_WITH_REGEX.
+ * m4/regex.m4: Document the `AM_WITH_REGEX' macro as obsolete,
+ and state that it should be removed two years from now.
+ (AM_WITH_REGEX): Raise an m4-time warning of the "obsolete"
+ category when this macro is used.
+ * doc/automake.texi (Public Macros): Move description of
+ `AM_WITH_REGEX' from here ...
+ (Obsolete Macros): ... to here, and declare it as obsolete
+ and "to be removed in a future version".
+ * tests/regex-obsolete.test: New test.
+ * tests/Makefile.am (TESTS): Update.
+
+2010-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Improve and extend tests on man pages support.
+ * tests/man.test: Enable `errexit' shell flag, and related changes.
+ Make grepping of generated Makefile.in slighty stricter.
+ * tests/man3.test: Add trailing `:' command.
+ * tests/man5.test: Prefer cat + here-doc over echo to append to
+ configure.in.
+ * tests/man2.test: Likewise, and add trailing `:' command.
+ * tests/man4.test: More thorough and consistent checking of make
+ error messages. Place fake `help2man' program in a new `bin'
+ directory rather than in `.'. Move the checks using the real
+ `help2man' program to ...
+ * tests/man6.test: ... this new test, and extend them. This test
+ passes with GNU make and Solaris make, still fails with BSD make.
+ * tests/man7.test: New test, extracted from old man4.test, which
+ checks for a bug in maintainer-clean w.r.t. generated manpages.
+ * tests/man8.test: New test, extracted from old man4.test, which
+ checks for a bug in distcheck w.r.t. generated manpages. Passes
+ with GNU make and Solaris make, still fails with BSD make.
+
+2010-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Minor improvements and extensions to various tests.
+ * tests/defun.test: Also run autoconf and grep the generated
+ configure to make sure that aclocal truly picks up all the
+ required macros.
+ * tests/compile_f_c_cxx.test: Prefer trailing `:' over trailing
+ `Exit 0'. Do not create useless dummy source files. Do not set
+ useless `$(foo_LDADD)' variable in `Makefile.am'. Do not call
+ useless macro `AC_F77_LIBRARY_LDFLAGS' in `configure.in'.
+ * tests/compile_f90_c_cxx.test: Likewise.
+ * tests/suffix10.test: Slighty stricter grepping of make output.
+ * tests/compile.test: Add trailing `:' command.
+ * tests/defun2.test: Likewise.
+ * tests/vars3.test: Likewise.
+ * tests/vartar.test: Likewise.
+ * tests/vars.test: Likewise. Also, extend test by checking
+ that the definition of `MY_FLAGS*' variables is preserved in
+ the generated `Makefile.in'.
+ * tests/stamph2.test: Prefer trailing `:' over trailing `Exit 0'.
+ Use proper m4 quoting in `configure.in'.
+
+2010-11-11 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Tests defs: improve messages for skipped tests.
+ * tests/defs: Give meaningful messages about the reasons of a
+ test skip; this is especially useful as this file is run without
+ verbose xtraces on. Related reorderings in the code and new
+ comments.
+
+2010-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Tests defs: move static definitions in a new file `defs-static'.
+ The new file is meant to be idempotent w.r.t. mutiple inclusions.
+ * tests/defs.in: Removed, its contents split among ...
+ * tests/defs-static.in: ... this new file ...
+ * tests/defs: ... and this new file, including the former.
+ * configure.ac (AC_CONFIG_FILES): Remove `tests/defs', add
+ `tests/defs-static'.
+ (AC_CONFIG_LINKS): Add `tests/defs'.
+ * tests/Makefile.am ($(parallel_tests)): Update.
+ ($(instspc_tests)): Likewise.
+ * tests/.gitignore: Update.
+
+ Tests defs: $testsbuilddir is now AC_SUBST'ed.
+ * tests/defs.in ($testsbuilddir): Substitute from @abs_builddir@.
+ Add sanity check on $testsbuilddir, similar to those on
+ $testsrcdir and $top_testsrcdir.
+
+ Tests defs: do not print message "Running test $0" anymore.
+ * tests/defs.in: Printing the message "=== Running test $0" at
+ the beginning of each tests made sense when Automake used the old
+ test-driver, which sent all the output directly to stdout/stderr.
+ Now that the parallel test-driver is used, which saves output of
+ each test in its correspoding log file, that old message is just
+ useless noise.
+
+ Tests defs: rename $curdir -> $testbuilddir
+ * tests/defs.in: Rename $curdir to $testbuildir, for clarity and
+ consistency with $testsrcdir and $top_testsrcdir.
+
+ Tests defs: prefer "$curdir" over "`pwd`".
+ * tests/defs.in: We already save the value of `pwd` in $curdir
+ early in the file, so there no need to recalculate it later, when
+ the current working directory is not changed.
+
+ Tests defs: use `$me' in more error messages.
+ * tests/defs.in: Also use `$me' in error messages referring to
+ missing `defs' or `defs.in', since that variable is now defined
+ before those checks.
+
+ Tests defs: do not use `Exit' where plain `exit' suffices.
+ * tests/defs.in: Use "exit 77" rather than "Exit 77" to skip the
+ test when required libtool/gettext macros are not found, since
+ such skips would take place before the exit trap is installed.
+
+ Tests defs: improve and extends comments.
+ * tests/defs.in: Improve and extends some comments, especially in
+ relation with the changes introduced by the previous reordering.
+
+ Tests defs: various reorderings.
+ * tests/defs.in: Reordered various snippets of code in a
+ clearer way.
+
+2010-11-09 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Fix bug in test `backcompat4.test' (stale autom4te cache).
+ * tests/backcompat4.test: Remove stale autom4te cache directory
+ before re-running aclocal and automake. Also, since we are at
+ it, be more verbose in displaying contents of generated files,
+ to ease debuggability.
+ Reported by Ralf Wildenhues.
+
+2010-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Fix a bug in variable concatanation with `+='.
+ * lib/Automake/VarDef.pm (append): Since the content of the
+ "appended-to" variable is going to be unconditionally normalized
+ later, simply separate the appended value with a single whitespace
+ character, instead of trying to be uselesssly smarter by using
+ escaped newlines. This fixes a bug in which extra backslashes
+ where erroneously inserted in the variable's final value.
+ * tests/pluseq11.test: New test, exposing the bug.
+ * tests/Makefile.am (TESTS): Update.
+ Reported by Andy Wingo.
+
+2010-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Modernize, improve and/or tweak various test scripts.
+ * tests/stamph2.test: Improve m4 quoting in `configure.in', and
+ prefer trailing `:' over trailing `Exit 0'.
+ * tests/syntax.test: Escape literal dots in grep regexps.
+ * tests/copy.test: Enable `errexit' shell flag. Extend test by
+ checking with `test' utility that the script `install-sh' is
+ copied, but not symlinked.
+ * tests/depdist.test: Move setting of `errexit' shell flag earlier
+ in the script (just after inclusion of ./defs). Avoid obsoleted
+ constructs in generated `configure.in'. Prefer to do our checks
+ by running configure and make over grepping Makefile.in.
+ * tests/target-cflags: Move setting of `errexit' shell flag
+ earlier in the script (just after inclusion of ./defs). Use the
+ `configure.in' stub created by `./defs', rather than writing it
+ from scratch.
+ * tests/target-clash: Do not uselessly run autoconf.
+ * tests/ctarget1.test: Renamed ...
+ * tests/cond-basic.test: ... to this. Use the `configure.in' stub
+ created by `./defs', rather than writing it from scratch.
+ Move setting of `errexit' shell flag earlier in the script (just
+ after inclusion of ./defs). Other minor cosmetic changes.
+ * tests/Makefile.am (TESTS): Updated.
+
+2010-11-06 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ New tests on obsoleted usages of automake/autoconf macros (such
+ as AC_INIT, AM_INIT_AUTOMAKE and AC_OUTPUT).
+ * tests/backcompat.test: New test script.
+ * tests/backcompat2.test: Likewise.
+ * tests/backcompat3.test: Likewise.
+ * tests/backcompat4.test: Likewise.
+ * tests/backcompat5.test: Likewise.
+ * tests/backcompat6.test: Likewise.
+ * tests/init.test: Extended and improved, esp. by trying more
+ combinations of calls to AC_INIT and AM_INIT_AUTOMAKE with few
+ arguments.
+ * tests/Makefile.am (TESTS): Updated.
+
+2010-11-06 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Fix bug in rules for creating vala vapi/header files.
+ * automake.in (lang_vala_finish_target): Add forgotten "fi" in an
+ if control structure in a generated make rules. Bug introduced
+ by previous commit `v1.11-221-gd7c1679', and revealed by failure
+ of test `vala2.test'.
+
+2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Fix and document rules to not touch the tree with `make -n'.
+ * doc/automake.texi (Multiple Outputs): Document the problem of
+ modifications during dry-run execution, propose solution.
+ * NEWS: Update.
+ * automake.in (lang_vala_finish_target): Split recipe so the
+ stamp file is not removed with GNU `make -n'.
+ (lang_yacc_target_hook): Separate removal of parser output file
+ and header remaking.
+ * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
+ passed to make, take care not to remove any files in that case.
+ * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
+ %STAMP% file from induced remaking of config header.
+ * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
+ New tests.
+ * tests/Makefile.am (TESTS): Update.
+
+2010-11-05 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Fix potential bug in generated tests `instpc-*.test'.
+ This bug is due to the changes introduced by the recently-merged
+ "tests-init" branch. In that branch, `tests/defs' didn't define
+ anymore `$srcdir', instead defininig directly `$testsrcdir'; but
+ the generated tests were using `$srcdir', hence the bug.
+ Luckily, since the Automake parallel test driver automatically
+ exports `srcdir' to a proper value, that prevented the bug from
+ manifesting itself.
+ * tests/Makefile.am ($(instspc_tests)): In the generated test
+ scripts, use `$testsrcdir', not `$srcdir'.
+
+2010-11-03 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Overhauled and modularized tests in `instspc.test'.
+ The test `instspc.test' was way too big and fragile. Its running
+ time was very long. It also produced a log that was nearly
+ unreadable due to its length, making it very difficult to find
+ out the reason for failures.
+ Also, it was too much monolithic, with a single (maybe spurious)
+ failure in a corner case causing the whole test to fail (even if
+ everything worked as expected in the other 99% of cases).
+ The present change should solve these problems, by separating
+ `instspc.test' into many smaller, self-contained, auto-generated
+ tests.
+ * tests/instspc.test: Removed.
+ * tests/instspc-tests.sh: New script, fulfilling a double role:
+ 1. it generates a Makefile.am snippet `tests/instspc-tests.am',
+ containing the definition of a list of new tests which will take
+ over the older `instspc.test', and
+ 2. it is sourced by said generated tests with proper parameters
+ pre-set, to run the "meat" of the checks.
+ This apparent abuse is indeed required because the test generation
+ code and test execution code are inevitably intertwined.
+ * tests/Makefile.am ($(srcdir)/instspc-tests.am): Include this
+ snippet, which (among the other things) defines ...
+ (instspc_tests): ... this new macro, containing the list of the
+ newly generated `instspc*.test' tests, and ...
+ (instspc_xfail_tests): ... this new macro, containing the list
+ of the `instspc*.test' tests expected to fail.
+ ($(instspc_tests)): New rule, generates the `instspc*.test' tests.
+ ($(instspc_tests:.test=.log)): New rule, registers the dependency
+ of all `instspc*.test' tests on the `instspc-tests.sh' script.
+ (TESTS): Add `$(instspc_tests)', remove `instspc.test'.
+ (XFAIL_TESTS): Add `$(xfail_instspc_tests)'.
+ (EXTRA_DIST): Distribute instspc-tests.sh.
+ (MAINTAINERCLEANFILES): Added $(instspc_tests).
+ Other minor cosmetic changes.
+ * bootstrap: Generate instspc-tests.am.
+ * tests/.gitignore: Updated.
+
+2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Add FAQ entry for bug reporting instructions.
+ * doc/automake.texi (Reporting Bugs): New section.
+ (Introduction): Refer to it.
+
+2010-10-07 Peter Rosin <peda@lysator.liu.se>
+
+ depcomp: add new one-pass depmode for MSVC 7 and later.
+ * lib/depcomp: Add new depmodes 'msvc7' and 'msvc7msys' which
+ make use of the -showIncludes option added in MSVC 7.
+ * m4/depend.m4 (_AM_DEPENDENCIES): Handle the new depmodes
+ similarly to 'msvisualcpp' and 'msvcmsys' as MSVC does not
+ support the -o option.
+
+2010-10-05 Jim Meyering <meyering@redhat.com>
+
+ dist-xz, dist-bzip2: don't hard-code -9: honor envvar settings
+ * lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that
+ made it impossible to override. Instead, use its XZ_OPT envvar,
+ defaulting to -9 if not defined. Thus no change in behavior
+ when XZ_OPT is not set, and now, this rule honors the setting
+ of that envvar when it is set. Suggested by Lasse Collin.
+ (dist-bzip2): Likewise for it's corresponding envvar: BZIP2.
+ * NEWS (Miscellaneous changes): Mention it.
+ * doc/automake.texi (The Types of Distributions): Describe the
+ newly enabled environment variables.
+
+2010-10-04 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Add support for newer python versions.
+ * m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
+ _AM_PYTHON_INTERPRETER_LIST. Since we are at it, break a long
+ line and fix indentation.
+ * THANKS: Updated.
+ From a report by Thomas Klausner.
+
+ Add test for `AM_WITH_DMALLOC' macro.
+ * tests/dmalloc.test: New test.
+ * tests/Makefile.am (TESTS): Update.
+
+ Fix nits and bugs in tests `help*.test'.
+ * tests/help4.test: Fix broken sed commands used to strip `-W...'
+ flags away from "$AUTOMAKE" and "$ACLOCAL".
+ * tests/help3.test: Likewise, and fix a botched comment.
+ * tests/help.test: Likewise. Also, use "AUTOMAKE_fails ..."
+ instead of "$AUTOMAKE ... && Exit 1", for consistency and to
+ please maintainet-check.
+ * tests/help2.test: Likewise.
+
+2010-10-03 Stefano Lattarini <stefano.lattarini@gmail.com>
+ Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Improve tests `help*.test' (also fixes maintcheck failures).
+ * tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
+ flags stripped away rather than hard-coded `automake-$APIVERSION',
+ to better honour user-overrides. Similarly for aclocal.
+ * tests/help2.test: Likewise.
+ * tests/help3.test: Likewise.
+ * tests/help4.test: Likewise.
+
+2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ tests: fix ar-lib.test for echo that interprets backslashes.
+ * tests/ar-lib.test: Use printf instead of echo. Avoid test -a.
+ More robust quoting.
+
+2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ maintainer-check coverage for variables before rules.
+ * Makefile.am (sc_ensure_testsuite_has_run): Suggest keeping
+ around the test directories.
+ (sc_tests_makefile_variable_order): New rule with a heuristic to
+ catch ordering violations.
+
+ Document and fix expansion of variables before rules.
+ * doc/automake.texi (General Operation): Document that variables
+ are expanded before rules.
+ * lib/am/check.am (am__check_post): Reword a bit so it does not
+ get matched as a rule.
+ Suggestion by Ben Pfaff.
+
2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+ Coverage and minor fixes for variable typo detection.
+ * automake.in (check_typos): Remove `EXTRA_' prefix when
+ computing canonical name.
+ * tests/vartypo2.test, tests/vartypos.test: New tests.
+ * tests/Makefile.am (TESTS): Update.
+
+ Implement EXTRA_maude_DEPENDENCIES for programs and libraries.
+ * automake.in (handle_programs, handle_libraries)
+ (handle_ltlibraries): Mark EXTRA_*_DEPENDENCIES as recognized.
+ * doc/automake.texi (Linking, Program and Library Variables)
+ (LIBOBJS): Document EXTRA_*_DEPENDENCIES.
+ * lib/am/library.am (%LIBRARY%): Also depend on
+ $(EXTRA_%XLIBRARY%_DEPENDENCIES).
+ * lib/am/ltlibrary.am (%LTLIBRARY%): Also depend on
+ (%XLTLIBRARY%_DEPENDENCIES).
+ * lib/am/program.am (%PROGRAM%%EXEEXT%): Also depend on
+ $(EXTRA_%XPROGRAM%_DEPENDENCIES).
+ * tests/extradep.test, tests/extradep2.test: New tests.
+ * tests/Makefile.am (TESTS): Update.
+ * NEWS: Update.
+ Suggested by Eric Blake.
+
tests: avoid running into timing issues due to sanity change.
* tests/acloca10.test, tests/acloca18.test, tests/aclocal9.test:
Insert strategic sleep before aclocal reruns, to ensure files