+ 2009-03-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Fix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recreation.
+ * lib/am/check.am (check-TESTS): Expand `$(TEST_LOGS)' only once
+ in the rule command, for systems with low command line limits.
+ Remove $(TEST_SUITE_LOG) even in LAZY_TEST_SUITE mode.
+ ($(TEST_SUITE_LOG)): Always recreate $(TEST_SUITE_LOG). Mention
+ lazy mode in the summary output.
+ * tests/parallel-tests.test: Test LAZY_TEST_SUITE semantics.
+
+ 2009-03-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Fix parallel-tests with empty $(TESTS) for BSD make.
+ * lib/am/check.am [PARALLEL_TESTS] ($(TEST_SUITE_LOG)): Ignore
+ empty line stemming from empty $(TEST_LOGS), to avoid counting
+ zero tests as one.
+ (check-TESTS): If `$(TESTS)' is empty, override TEST_LOGS to be
+ empty, rather than `.log', for BSD make.
+ * tests/parallel-tests6.test: New test.
+ * tests/Makefile.am: Update.
+
+ Mark check-html and check-TESTS as recursive for BSD make.
+ * lib/am/check.am [PARALLEL_TESTS] (.MAKE): Add check-TESTS
+ and check-html prerequisites.
+
+ Match XFAIL_TESTS correctly with Solaris make.
+ * lib/am/check.am [PARALLEL_TESTS]: VPATH rewriting may have
+ changed test names, so srcdir needs to be taken into account
+ explicitly when checking against the list of tests expected
+ to fail. Fixes spurious FAILures from XFAIL_TESTS.
+
+ Use append mode to capture parallel test output.
+ * tests/lisp8.test: Use append mode for output from `make -j',
+ to avoid dropped lines.
+ * tests/parallel-tests3.test: Likewise.
+
+ parallel-tests: Fix summary output.
+ * lib/am/check.am (am__text_box): Fix unportable sed script,
+ replacing `\n' in the right hand side of an `s' command with
+ a literal newline. Kudos to Bruno Haible for the newline idea.
+ * tests/parallel-tests.test: Update test to expose this.
+
+ 2009-03-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Overhaul of tests/README.
+ * tests/README: General overhaul. Mention parallel test suite
+ execution, the test-suite.log file; document `Exit' vs. `exit',
+ `defs' vs. `defs-p', the naming of `parallel-tests' tests.
+ * README: Simplify, point to tests/README.
+
+ Documentation for the parallel-tests driver.
+ * doc/automake.texi (Tests, Options): Document the `parallel-tests'
+ option, including new features of the test driver.
+ * NEWS: Update.
+
+ New tests for `parallel-tests'.
+ * tests/parallel-tests.test: New file, to expose a bunch of
+ features of `parallel-tests': VERBOSE, clean, TEST_SUITE_LOG,
+ test dependencies, DISABLE_HARD_ERRORS.
+ * tests/parallel-tests2.test: New file, test check-html.
+ * tests/parallel-tests3.test: New file, test concurrency.
+ * tests/parallel-tests4.test: New file, test suffix rules.
+ * tests/parallel-tests5.test: New file, demonstrate compile/test
+ concurrency.
+ * tests/defs.in: Add a `required' check for rst2html.
+ * tests/Makefile.am: Update.
+
+ parallel-tests: Ensure backward-compatible semantics.
+ For each test in Automake's test suite that uses TESTS, generate
+ an identical one that uses the `parallel-tests' option, for
+ coverage of backward-compatible functionality.
+ * tests/gen-parallel-tests: New file, generates distributed
+ Makefile.am snippet tests/parallel-tests.am to list all tests
+ that use the TESTS interface but not yet the `parallel-tests'
+ option, with names mangled to use suffix `-p.test', in ...
+ (parallel_tests): ... this new make macro.
+ * tests/Makefile.am ($(srcdir)/parallel-tests.am)
+ ($(parallel_tests), defs-p): New rules.
+ (TESTS): Add check11.test and $(parallel_tests).
+ (check_SCRIPTS): Add defs-p, $(parallel_tests).
+ (check-clean-local): Remove `defs-p'.
+ (EXTRA_DIST): Distribute gen-parallel-tests.
+ (MAINTAINERCLEANFILES): New variable, remove $(parallel_tests).
+ * bootstrap: Generate parallel-tests.am.
+ * tests/check8.test: Check for circular dependencies in rules.
+ * tests/check11.test: New test, check that SKIPs are not counted
+ as passed tests.
+ * tests/defs.in: Unset DISABLE_HARD_ERRORS, LAZY_TEST_SUITE,
+ VERBOSE, so the tests are not influenced by the way our test
+ suite is invoked.
+
+ 2009-03-08 Akim Demaille <akim@lrde.epita.fr>
+ Jim Meyering <jim@meyering.net>
+ Benoit Sigoure <tsuna@lrde.epita.fr>
+ Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Parallel test execution: new option `parallel-tests'.
+ * automake.in (handle_tests): Set new conditional PARALLEL_TESTS
+ when reading check.am. Handle option `parallel-tests' and all
+ its new semantics. Define macros TEST_SUFFIXES, TEST_SUITE_LOG,
+ TEST_SUITE_HTML, TEST_LOGS, TEST_LOGS_TMP, suffix rules if
+ applicable, and per-target rules for other tests. Add all log
+ files to %clean_files at the `MOSTLY_CLEAN' level.
+ * lib/Automake/Options.pm (_process_option_list): Accept
+ `parallel-tests'.
+ * lib/am/check.am [!PARALLEL_TESTS] (check-TESTS): Move existing
+ testsuite driver under this new conditional.
+ [PARALLEL_TESTS]
+ (am__rst_title, am__rst_section, am__text_box am__sh_e_setup)
+ (am__check_pre, am__check_post): New internal macros.
+ ($(TEST_SUITE_LOG), check-TESTS, .log.html, check-html): New
+ rules.
+ * lib/am/check2.am: New file.
+ * lib/am/Makefile.am (dist_am_DATA): Add check2.am.
+ * tests/Makefile.am (AUTOMAKE_OPTIONS): Use `parallel-tests'.
+ (clean-local): Renamed from distclean-local.
+ * tests/defs.in: Drop VERBOSE handling, not needed here any more.
+
+2009-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Rename `silent' mode to `silent-rules' mode.
+ * automake.in (define_verbose_var, verbose_flag)
+ (define_verbose_tagvar, handle_options, handle_languages)
+ (handle_configure, parse_arguments): Rename the `silent' option
+ to `silent-rules', so it coincides with the `--silent-rules'
+ command line option; adjust all code and comments.
+ * lib/Automake/Options.pm (_process_option_list): Likewise.
+ * doc/automake.texi (Invoking Automake, Libtool Flags, Options):
+ Likewise.
+ * NEWS: Adjust.
+ * tests/dollarvar.test, tests/silent.test, tests/silent2.test,
+ tests/silent3.test, tests/silent4.test, tests/silent5.test,
+ tests/silent6.test, tests/silent7.test: Likewise.
+ Suggestion by Jan Engelhardt.
+
+2009-03-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ `silent' mode unconditionally overrides portability-recursive.
+ * automake.in (parse_arguments): Don't handle a global `silent'
+ option here; instead, ...
+ (handle_options): ... handle the "normal" `silent' option here.
+ Override `portability-recursive' here, at the last point we deal
+ with options, instead ...
+ * lib/Automake/Options.pm (_process_option_list): ... of here.
+ * tests/silent6.test: Replace unportable make snippet, remove
+ FIXME note, add more test cases of options passed in the various
+ locations.
+
+ Drop extra line from compile rules when `silent' is not used.
+ * lib/am/depend2.am [!%FASTDEP%]: Only use the `%VERBOSE%
+ @AM_BACKSLASH@' extra line if ?VERBOSE?.
+ Report by Ralf Corsepius.
+
+2009-03-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Keep `--silent-rules' across triggered automake reruns.
+ * automake.in (usage): Reformat to be a bit clearer.
+ (handle_configure): Remove substitutions %STRICTNESS% and
+ %USE-DEPS% in favor of a new substitution %AUTOMAKE-OPTIONS%
+ that carries over all needed flags.
+ * lib/am/configure.am (%MAKEFILE-IN%): Adjust rule.
+ * tests/flavor.test: New test, to ensure --$flavor (gnu,
+ gnits, foreign, cygnus), --ignore-deps, and --silent-rules are
+ preserved across automake reruns.
+ * tests/Makefile.am: Update.
+
+2009-03-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Provide variables for silencing of user rules.
+ * automake.in (handle_languages): Always define `AM_V_GEN' and
+ `AM_V_at'.
+ * doc/automake.texi (Options): Document these flags.
+ * tests/silent7.test: New test.
+ * tests/Makefile.am: Update.
+
+ Redo variable naming for `silent' machinery.
+ The public variables are named `AM_V_' plus the compiler
+ short-hand now, e.g.: AM_V_CC, AM_V_CXXLD, AM_V_GEN. The
+ dispatch variables are internal details and begin with
+ `am__v_'.
+ * automake.in (verbose_var): Update comment.
+ (verbose_private_var): New function. Order functions so that
+ ones not needed outside this section are listed first.
+ (verbose_dispatch): Remove, no need to factor this.
+ (define_verbose_var, define_verbose_libtool): Use
+ verbose_private_var.
+ (define_verbose_tagvar): Likewise; and simplify.
+ Report by Jan Engelhardt.
+
+ Let -Wportability turn on/off the portability-recursive channel.
+ * lib/Automake/ChannelDefs.pm (switch_warning): switch
+ `portability-recursive' channel as well if changing the
+ `portability' channel.
+ * tests/dollarvar2.test: New test.
+ * tests/Makefile.am: Update.
+
+2009-03-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ New automake command line option `--silent-rules'.
+ * automake.in (parse_arguments): Accept `--silent-rules; let it
+ override command line warning settings.
+ (usage): Document it.
+ * doc/automake.texi (Invoking Automake): Document it.
+ * NEWS: Update.
+ * tests/dollarvar.test: Also test `--silent-rules'.
+ * tests/pr300-ltlib.test: Use `$MAKE V=1' to enable verbose
+ output, which is matched later in the test.
+ * tests/silent6.test: New test.
+ * tests/Makefile.am: Update.
+
+ Documentation and tests for the `silent' option.
+ * NEWS: Update.
+ * doc/automake.texi (Invoking Automake): `silent' turns off some
+ portability warnings.
+ (Libtool Flags): `silent' silences libtool.
+ (Options): Document the `silent' flag.
+ * tests/dollarvar.test, tests/silent.test, tests/silent2.test,
+ tests/silent3.test, tests/silent4.test, tests/silent5.test: New
+ tests.
+ * tests/Makefile.am: Update.
+ * Makefile.am (maintainer-check): Ignore `DESTDIR' and `V' when
+ checking for make variables that should not be overridden from
+ the command line.
+
+2009-03-07 Jan Engelhardt <jengelh@medozas.de>
+ Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Implement `silent' build rules.
+ * automake.in (ccer): New field in the language structure.
+ Initialize it for all registered languages.
+ (verbose_var, verbose_flag, verbose_dispatch)
+ (silent_flag, define_verbose_var, define_verbose_tagvar)
+ (define_verbose_libtool): New functions.
+ (handle_languages, handle_programs, handle_libraries)
+ (handle_ltlibraries, handle_configure)
+ (define_compiler_variable, define_linker_variable)
+ (define_per_target_linker_variable): Use them where appropriate
+ to define variables to implement the silent output machinery.
+ * lib/Automake/Options.pm (_process_option_list): Accept
+ `silent', turning off `portability-recursive'.
+ * lib/am/depend2.am: Add %VERBOSE% and %SILENT% prefixes where
+ appropriate.
+ * lib/am/lex.am: Likewise.
+ * lib/am/library.am: Likewise.
+ * lib/am/ltlibrary.am: Likewise.
+ * lib/am/program.am: Likewise.
+ * lib/am/yacc.am: Likewise.
+ * m4/init.m4 (AM_INIT_AUTOMAKE): Substitute, but do not define,
+ AM_BACKSLASH.
+ * tests/defs.in: Unset `V', to avoid influencing inner tests.
+
+2009-03-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ New channel `portability-recursive'.
+ Add new channel for portability warnings about recursive make
+ variable expansions `$(var1$(var2))'. Enable it alongside
+ `-Wportability'.
+ * lib/Automake/ChannelDefs.pm (Automake::ChannelDefs): Register
+ channel `portability-recursive'.
+ * lib/Automake/Variable.pm (_VARIABLE_CHARACTERS)
+ (_VARIABLE_RECURSIVE_PATTERN): New variables.
+ (check_variable_expansions): Diagnose recursive variable
+ expansions through the new channel.
+
+2009-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * NEWS: Update.
+
+2009-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Ignore warnings from autom4te about Libtool macros.
+ * tests/ltinstloc.test: When testing for presence of warnings,
+ filter out any that are not interesting for this test, e.g.,
+ warnings about installed files or about bogusly named cache
+ variables in libtool.m4, emitted by recent Autoconf when older
+ Libtool is used.
+
+2009-03-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Relax depcomp test for MSVC to not require minuso.
+ * m4/depend.m4 (_AM_DEPENDENCIES): When checking the msvisualcpp
+ and msvcmsys depmodes, do not require `-c -o' to work just yet.
+ It is not needed by the depcomp script for these depmodes, and
+ works around the ordering issue between the tests.
+ Report by Peter Rosin.
+
+2009-03-09 Peter Rosin <peda@lysator.liu.se>
+
+ * tests/compile2.test: Fix typo.
+
2009-03-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improve NetBSD 'make -n' output for many standard targets.