From: Ralf Wildenhues Date: Sun, 19 Apr 2009 05:59:42 +0000 (+0200) Subject: Merge branch 'next' (early part) into mh-vala-support X-Git-Tag: v1.11~32^2^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c4b250d8697a342fd9897e86d92ca10f67bb1ed;p=thirdparty%2Fautomake.git Merge branch 'next' (early part) into mh-vala-support * 'next' (early part): (135 commits) parallel-tests: LOG_COMPILER for tests without known extension. More node renaming in the manual. Fix instdir-java.test failure. Fix testsuite failures due to nonexistent `dirlist' entries. Fix typo in manual. Avoid test failure due to paranoid TAR_OPTIONS envvar setting. Use more common spelling in diagnostic: s/canonic/canonical/. Post-release version bump. Version 1.10b. Minor NEWS update. Reorganize nodes in the manual. Update AM_RECURSIVE_TARGETS for parallel-tests. parallel-tests: New target recheck-html. Rewrite maintainer-check in separate tests, parallelizable. Fix maintainer-check failure. Fix latex warning in manual. Sync auxiliary files from upstream. parallel-tests: redo lazy checking: recheck and RECHECK_LOGS. parallel-tests: do not mark check-TESTS as `.MAKE'. parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS. ... --- 6c4b250d8697a342fd9897e86d92ca10f67bb1ed diff --cc ChangeLog index 161f64f9d,7eb5db7fd..00c6f5e1a --- a/ChangeLog +++ b/ChangeLog @@@ -1,46 -1,1324 +1,1367 @@@ +2008-10-10 Ralf Wildenhues + + Minor fixups for Vala support. + * automake.in: $(VALAFLAGS) comes after $(AM_VALAFLAGS). + * doc/automake.texi (Vala Support): Add some references, + document AM_VALAFLAGS, streamline a bit. + * lib/am/vala.am: Copyright blurb. + * m4/vala.m4 (AM_PROG_VALAC): Rewrite using AS_VERSION_COMPARE. + * tests/vala.test: Fix minor nits. + * tests/vala1.test: Likewise. + * tests/vala2.test: Likewise. + * tests/vala3.test: Likewise. + * tests/vala4.test: New test, for version argument of + AM_PROG_VALAC. + * tests/Makefile.am: Update. + +2008-10-09 Mathias Hasselmann + + * automake.in: Support Vala in non-recursive builds. Make sure + foo_VALAFLAGS really use used. Inject --library switch when building + Vala libraries. + * doc/automake.texi, NEWS: Document Vala support. + * m4/vala.m4: Rename AC_PROG_VALAC to AM_PROG_VALAC. + * tests/Makefile.am: Additional Vala tests. + * tests/vala.test: Also test VALAFLAGS support. + * tests/vala1.test: Test non-recursive Vala support. + * tests/vala2.test: Test _PKGNAME variables. + * tests/vala3.test: Test compiling of C code generated by Vala. + +2008-10-09 Mathias Hasselmann + + Initial support for the vala programming language. + * automake.in: Add %known_libraries, lang_vala_rewrite, + lang_vala_finish and lang_vala_target_hook to support the Vala + programming language. Register Vala language hooks. + * lib/am/vala.am: Empty rules file to prevent creation of depend2 + based rules for Vala code. + * lib/am/Makefile.am (dist_am_DATA): Add vala.am. + * m4/vala.m4: Provide AC_PROG_VALAC for detecting the Vala compiler. + * m4/Makefile.am (dist_m4data_DATA): Add vala.m4. + * tests/vala.test: Test Vala support. + * tests/Makefile.am: Update. + + 2009-04-04 Ralf Wildenhues + + parallel-tests: LOG_COMPILER for tests without known extension. + * automake.in (handle_tests): If we don't match a known + extension, define `LOG_COMPILER' as `$(LOG_COMPILE) + $(AM_LOG_FLAGS) $(LOG_FLAGS)' and use it as %COMPILE% in check2. + * doc/automake.texi (Simple Tests using parallel-tests): + Document it. In the examples, suggest using the AM_*LOG_FLAGS + flags in Makefile.am rather than the variables without `AM_' + prefix. + * lib/Automake/tests/Makefile.am (AM_PL_LOG_FLAGS): Renamed from + (PL_LOG_FLAGS): ... this variable, intended for the user. + * tests/parallel-tests7.test: Extend test. + * NEWS: Update. + Suggestion by Akim Demaille. + + More node renaming in the manual. + * doc/automake.texi (Top): Adjust menu to ... + (API Versioning): ... this node being renamed from ... + (API versioning): ... this, and ... + (Wildcards): ... this being renamed from ... + (wildcards): ... this. + Report by Karl Berry. + + 2009-04-03 Andreas Schwab + + * tests/instdir-java.test: Don't require gcj. Skip if javac is + not available. + + 2009-04-01 Ralf Wildenhues + + Fix testsuite failures due to nonexistent `dirlist' entries. + * tests/defs.in: When parsing `$aclocaldir/dirlist', only add + existing directories D to aclocal `-I D' flags, as aclocal + errors on nonexisting directories. + Report and analysis by Andreas Schwab. + + 2009-03-31 Akim Demaille + + Fix typo in manual. + * doc/automake.texi (Simple Tests using parallel-tests): Fix + typo. + + 2009-03-31 Jim Meyering + + Avoid test failure due to paranoid TAR_OPTIONS envvar setting. + * tests/txinfo18.test: Don't let a TAR_OPTIONS=--keep-old-files + environment variable setting cause test failure. Fixed in + texi2dvi 4.13. + + Use more common spelling in diagnostic: s/canonic/canonical/. + * automake.in (check_typos): s/canonic/canonical/. + + 2009-03-31 Ralf Wildenhues + + * configure.ac, NEWS: Bump version to 1.10c. + + 2009-03-29 Ralf Wildenhues + + * configure.ac, NEWS: Bump version to 1.10b. + * doc/automake.texi (Releases): Add statistics for 1.10b. + + * NEWS: Minor update. + + Reorganize nodes in the manual. + Avoid texinfo sectioning commands without nodes, by either + introducing new nodes along with menus, or using headings + commands. Adjust all references. + * doc/automake.texi: Throughout the manual, adjust references to + new or changed node names. Rename `non-configured' to + `unconfigured', capitalize headings and section names better. + (Top): List new menus and nodes introduced below. + (Length Limitations): Renamed from ... + (Length limitations): ... this. + (aclocal Options): Renamed from ... + (aclocal options): ... this. + (Macro Search Path): Renamed from ... + (Macro search path): ... this. Rename subsubsections to + subsubheadings. + (Public Macros, Obsolete Macros, Private Macros): Renamed from + (Public macros, Obsolete macros, Private macros): ... these. + (Conditional Subdirectories): Introduce sub menu and split ... + (SUBDIRS vs DIST_SUBDIRS, Subdirectories with AM_CONDITIONAL) + (Subdirectories with AC_SUBST, Unconfigured Subdirectories): + ... into these new nodes. Adjust subsection names to node + names. + (Conditional Sources): Rename subsubsections to subsubheadings. + (Conditional Programs): Likewise. + (Program Variables): Renamed from ... + (Program variables): ... this. + (Libtool Issues): Introduce sub menu and split into ... + (Required file ltmain.sh not found) + (Objects created both with libtool and without): ... these new + nodes. + (Other Objects, Built Sources): Renamed from ... + (Other objects, Built sources): ... these. + (Built Sources Example): Renamed from ... + (Built sources example): this. Rename unnumberedsubsecs to + subsubheadings. + (Man Pages): Renamed from ... + (Man pages): ... this. + (Install): Introduce sub menu and split into ... + (Basics of Installation, The Two Parts of Install) + (Extending Installation, Staged Installs) + (Install Rules for the User): ... these new nodes. + (Dist): Introduce sub menu and split into ... + (Basics of Distribution, Fine-grained Distribution Control) + (The dist Hook, Checking the Distribution) + (The Types of Distributions): ... these new nodes. + (Tests): Introduce sub menu and split into ... + (Simple Tests, Simple Tests using parallel-tests, DejaGnu Tests) + (Install Tests): ... these new nodes. + (Conditionals): Move the portability paragraph up, introduce sub + menu and split into ... + (Usage of Conditionals, Limits of Conditionals): ... these new + nodes. Link to several sections throughout the manual that deal + with specific usage of conditionals. + (CVS): Rename subsections to subheadings. + (maintainer-mode): Likewise. + (Limitations on File Names): Renamed from ... + (limitations on file names): ... this. + (Flag Variables Ordering): Rename subsections to subheadings. + (Renamed Objects): Renamed from ... + (Renamed objects): ... this. + (Dependency Tracking Evolution): Introduce sub menu and split + into ... + (First Take on Dependencies, Dependencies As Side Effects) + (Dependencies for the User, Techniques for Dependencies) + (Recommendations for Tool Writers) + (Future Directions for Dependencies): ... these new nodes. + Report by Karl Berry. + + 2009-03-29 Ralf Wildenhues + + Update AM_RECURSIVE_TARGETS for parallel-tests. + * lib/am/check.am [PARALLEL_TESTS] (AM_RECURSIVE_TARGETS): + Add check, recheck, check-html, recheck-html. + + 2009-03-29 Ralf Wildenhues + Akim Demaille + + parallel-tests: New target recheck-html. + * lib/am/check.am [PARALLEL_TESTS] (recheck-html): New phony, + recursive target. Factor common implementation with + `check-html'. + * doc/automake.texi (Tests): Document recheck-html. + * tests/parallel-tests2.test: Test it. + + 2009-03-28 Ralf Wildenhues + Akim Demaille + + parallel-tests: redo lazy checking: recheck and RECHECK_LOGS. + Replace the LAZY_TEST_SUITE API with a simpler yet more powerful + one: RECHECK_LOGS specifies those tests which are to be removed + in any case before testing. Provide a `recheck' convenience + target to set RECHECK_LOGS to all failed and unexpectedly passed + tests. Document several ways to limit the set of tests run. + * lib/am/check.am [PARALLEL_TESTS] (RECHECK_LOGS): New variable, + default to $(TESTS_LOGS). + (check-TESTS): Remove $(RECHECK_LOGS) not $(TEST_LOGS). Drop use + of LAZY_TEST_SUITE. + ($(TEST_SUITE_LOG)): Do not output note about lazy rerun, as + LAZY_TEST_SUITE is gone. + (recheck): New target. + (recheck-am, recheck-TESTS): New internal targets. + * doc/automake.texi (Tests): Update @vindex for TESTS and + TEST_LOGS. Replace description of LAZY_TEST_SUITE with a list + of ways the set of tests to be run can be modified. Document + RECHECK_LOGS and the recheck target. + * tests/defs.in: Unset RECHECK_LOGS not LAZY_TEST_SUITE. + * tests/parallel-tests.test: Adjust, replacing LAZY_TEST_SUITE + with corresponding RECHECK_LOGS settings. + * tests/parallel-tests9.test: New tests. + * tests/Makefile.am: Update. + Suggestion and different implementation by Akim Demaille. + + parallel-tests: do not mark check-TESTS as `.MAKE'. + * lib/am/check.am [PARALLEL_TESTS] (.MAKE): Remove check-TESTS. + This rule removes files, which should not be executed with BSD + `make -n'. + + parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS. + * automake.in (handle_tests): Warn about portability issue + concerning generated TESTS files listed with a `$(srcdir)/' + or `$(top_srcdir)/' prefix. + * doc/automake.texi (TESTS): Document this issue. Mention that + the parallel-tests driver is still experimental. + * tests/parallel-tests8.test: New test. + * tests/Makefile.am: Update. + + check-html: Always create HTML output, note conversion failure. + * lib/am/check.am (check-html): Create `$(TEST_SUITE_HTML)' in + any case. Exit unsuccessfully if HTML creation failed. + * tests/parallel-tests2.test: Amend test to expose this. + + 2009-03-24 Ralf Wildenhues + + parallel-tests: per-extension test driver: _LOG_COMPILER. + For test files with extension , introduce the internal + variable _LOG_COMPILE, which expands to + $(_LOG_COMPILER) $(AM__LOG_FLAGS) $(_LOG_FLAGS). + Turn also the lib/Automake/tests testsuite over to the new + test driver. + * doc/automake.texi (Tests): Document `EXT_LOG_COMPILER' and + `EXT_LOG_FLAGS'. + * lib/am/check2.am: Insert `%COMPILE%' right before test. + * automake.in (handle_tests): Substitute `COMPILE' for check2, + empty for tests without extension, and `$(ext_LOG_COMPILE)' for + extension `ext'. In the latter case, define it from the public + components. + * configure.ac (AM_INIT_AUTOMAKE): Use `parallel-test' globally. + * tests/Makefile.am (AUTOMAKE_OPTIONS): Remove, not needed here + any more. + * lib/Automake/tests/Makefile.am (TESTS_ENVIRONMENT): Split ... + (PL_LOG_COMPILER, PL_LOG_FLAGS): ... into these new variables. + (TESTS_EXTENSIONS): New variable, initialize to `.pl'. + * tests/parallel-tests7.test: New test. + * tests/Makefile.am: Update. + Suggestion by Akim Demaille. + + 2009-03-22 Ralf Wildenhues + + parallel-tests: also record logs of SKIPped tests. + * lib/am/check.am [PARALLEL_TESTS] ($(TEST_SUITE_LOG)): Record + SKIPs as well. + Suggested by Jim Meyering. + + Minor optimization in parallel-tests text box creation. + * lib/am/check.am [PARALLEL-TESTS] (am__text_box): Use only one + awk invocation, rather than several tools, to create a text box. + Suggestion from Akim Demaille. + + 2009-03-29 Ralf Wildenhues + + Rewrite maintainer-check in separate tests, parallelizable. + * Makefile.am (sc_diff_automake_in_automake, sc_perl_syntax) + (sc_no_brace_variable_expansions, sc_rm_minus_f) + (sc_no_for_variable_in_macro, sc_mkinstalldirs) + (sc_pre_normal_post_install_uninstall, sc_perl_no_undef) + (sc_perl_no_split_regex_space, sc_cd_in_backquotes) + (sc_cd_relative_dir, sc_perl_at_uscore_in_scalar_context) + (sc_perl_local_no_parens, sc_perl_local) + (sc_AMDEP_TRUE_in_automake_in, sc_tests_make_without_am_makeflags) + (sc_tests_plain_make, sc_tests_plain_autoconf) + (sc_tests_plain_autoupdate, sc_tests_plain_automake) + (sc_tests_here_document_format, sc_tests_Exit_not_exit) + (sc_tests_automake_fails, sc_tests_plain_aclocal) + (sc_tests_plain_perl, sc_tests_required_after_defs) + (sc_tests_overriding_macros_on_cmdline, sc_tests_plain_sleep) + (sc_tests_plain_egrep_fgrep, sc_mkdir_p, sc_perl_at_substs) + (sc_unquoted_DESTDIR, sc_tabs_in_texi, sc_at_in_texi): New rules, + all phony, all listed in ... + (syntax_check_rules): ... this new variable and split out from ... + (maintainer-check): ... this rule. Depend on $(syntax_check_rules). + + * Makefile.am (maintainer-check): Do not complain if DESTDIR is + passed as argument to `make'. + + * doc/automake.texi (Cross-Compilation): Fix underfull hbox. + + Sync auxiliary files from upstream. + * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub, + lib/texinfo.tex: Sync from upstream. + + 2009-03-28 Ralf Wildenhues + + manual: minor cleanups. + * doc/automake.texi (Yacc and Lex): Adjust spacing in example. + (Mixing Fortran 77 With C and C++): Drop unneeded @page breaks. + + Sane (un)install for empty directory variables. + This patch fixes all install and uninstall rules to behave + sanely when $(wheredir) is the empty string, but $(where_HOW) is + nonempty, for all kinds of values of `where' and `HOW'. + * lib/am/data.am (install-%DIR%%PRIMARY%, uninstall-%DIR%%PRIMARY%): + Do not touch the install tree if the corresponding directory variable + $(%NDIR%dir) is empty. + * lib/am/java.am (install-%DIR%JAVA, uninstall-%DIR%JAVA): Likewise. + * lib/am/libs.am (install-%DIR%LIBRARIES, uninstall-%DIR%LIBRARIES): + Likewise. + * lib/am/lisp.am (install-%DIR%LISP, uninstall-%DIR%LISP): Likewise. + * lib/am/ltlib.am (install-%DIR%LTLIBRARIES, uninstall-%DIR%LTLIBRARIES): + Likewise. + * lib/am/mans.am (install-man%SECTION%, uninstall-man%SECTION%): + Likewise. + * lib/am/progs.am (install-%DIR%PROGRAMS, uninstall-%DIR%PROGRAMS): + Likewise. + * lib/am/python.am (install-%DIR%PYTHON, uninstall-%DIR%PYTHON): + Likewise. + * lib/am/scripts.am (install-%DIR%SCRIPTS, uninstall-%DIR%SCRIPTS): + Likewise. + * lib/am/texinfos.am (install-dvi-am, install-html-am, install-pdf-am) + (install-ps-am, uninstall-dvi-am, uninstall-html-am, uninstall-pdf-am) + (uninstall-ps-am): Likewise. + * tests/instdir2.test, tests/instdir-java.test, + tests/instdir-lisp.test, tests/instdir-ltlib.test, + tests/instdir-prog.test, tests/instdir-python.test, + tests/instdir-texi.test: New tests. + * tests/Makefile.am: Update. + * NEWS: Update. + Suggestion by Akim Demaille. + + Ensure that empty directory variables work with empty content variables. + This test ensures that, if both $(wheredir) and $(where_HOW) are + the empty string, then the `install' and `uninstall' rules behave + sanely, for several directory variables `wheredir' and several + primaries `HOW'. + * tests/instdir.test: New test. + * tests/Makefile.am: Update. + + 2009-03-23 Ralf Wildenhues + + Use --tag=FC with libtool also for .f90 files. + * automake.in: Set 'libtool_tag' for language `fc'. + * tests/fort5.test: Grep for the tag. + * THANKS: Update. + Report by John R. Cary. + + 2009-03-22 Peter Breitenlohner + Ralf Wildenhues + + For PR automake/533: + DISTFILES containing a directory and files in that directory. + When the source tree contains non-writable files or directories + (as happens during distcheck), and directories or entries + thereof are listed multiple times in variables to be + distributed, then the corresponding directories below $(distdir) + need to be made writable recursively. Since file modes should + not change, they need to be copied recursively using `cp -f'. + * lib/am/distdir.am: Handle this situation. + * tests/distdir.test: Extend test to those cases. + * NEWS: Update. + Report by Peter Breitenlohner. + + 2009-03-22 Jim Meyering + + Fix a documentation typo. + * doc/automake.texi (Headers): Clarify the note telling when it's + better not to use noinst_HEADERS. + + 2009-03-22 Ralf Wildenhues + + Define AM_RECURSIVE_TARGETS, for gnulib's GNUmakefile. + This new macro lists all public targets which invoke `make' + recursively, or depend on targets which do so. It allows to + prevent parallelism selectively, when multiple targets are + passed on the `make' command line. + * lib/am/distdir.am [%?SUBDIRS%] (AM_RECURSIVE_TARGETS): New + macro. + * lib/am/subdirs.am (AM_RECURSIVE_TARGETS): Likewise. + * lib/am/tags.am [%?SUBDIRS%] (AM_RECURSIVE_TARGETS): + Likewise. + + 2009-03-11 Ralf Wildenhues + + 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 + + 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 + + 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 + Jim Meyering + Benoit Sigoure + Ralf Wildenhues + + 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 + + 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 + + `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 + + 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 + + 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 + + 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 + Ralf Wildenhues + + 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 + + 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 + + * NEWS: Update. + + 2009-03-12 Ralf Wildenhues + + 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 + + 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 + + * tests/compile2.test: Fix typo. + + 2009-03-07 Ralf Wildenhues + + Improve NetBSD 'make -n' output for many standard targets. + * automake.in (handle_tags): Let .MAKE depend on + `tags-recursive' and `ctags-recursive' if appropriate. + (handle_all): Likewise for `all'. + (do_check_merge_target): Likewise for `check-am' and `check'. + * lib/am/ansi2knr.am (.MAKE): Depend on %ANSI2KNR-DIR%/ansi2knr. + * lib/am/install.am [%?maybe_BUILT_SOURCES%] (.MAKE): Depend on + `install'. + * tests/maken3.test, tests/maken4.test: New tests. + * tests/Makefile.am: Update. + + Improve `make -n dist' and `make -n distcheck' for GNU make. + Ensure that `make -n dist' and `make -n distcheck' do not change + files, due to GNU make executing rules containing `$(MAKE)'. + * lib/am/distdir.am (distdir): Separate the creation of + `$(distdir)/$$subdir' for `$(DIST_SUBDIRS)' and the recursion + into the `$(DIST_SUBDIRS)' in two separate rule commands. + (distcheck): Exit recursive rule early when run with `make -n', + as detected by a witness file. + * tests/maken.test, tests/maken2.test: New tests. + * tests/Makefile.am: Update. + * NEWS: Update. + + 2009-03-07 Ralf Wildenhues + + Solaris make testsuite fixes. + * tests/check10.test: When a rule fails, Solaris make will + output the complete command that failed; in this case the test + suite driver. Adjust the test to not bogusly match lines from + the driver, rather than its output. + * tests/distcleancheck.test: Avoid triggering VPATH rewriting, + not desirable in this test. + * tests/specflg10.test: Use BUILT_SOURCES to specify an + intermediate target, so Solaris make knows what to do. + + testsuite: SKIP compile tests if configure found no compiler. + * tests/depend6.test: configure will exit 77 if AC_PROG_CC found + no working compiler. Allow the test to be SKIPped in that case. + * tests/postproc.test: Likewise. + * tests/pr243.test: Likewise. + * tests/pr266.test: Likewise. + + Fix maintainer-check fallout. + * tests/compile2.test: Use `Exit', not `exit'. + + 2009-03-07 Peter Breitenlohner + Ralf Wildenhues + + Extract correct man section from files in man_MANS. + * lib/am/mans.am: Extract correct man section in the presence of + multiple dots in the file base name and/or directory components. + * tests/man5.test: New test case. + * tests/Makefile.am: Update. + + 2009-03-06 Ralf Wildenhues + + * doc/automake.texi (maintainer-mode): Fix logic in + AM_MAINTAINER_MODE description. + * THANKS: Update. + Report by Daniel Kahn Gillmor. + + 2009-03-05 Ralf Wildenhues + + * lib/gnupload: Change conffile name to `.gnuploadrc'. + + 2009-03-04 William Pursell + + Replace bare `automake' with `@command{automake}' or `Automake'. + * doc/automake.texi: Avoid bare `automake' in the manual, + replacing occurrences with `@command{automake}' when the command + is meant, and `Automake' when speaking about the software + package in general. + + 2009-03-04 Ralf Wildenhues + + * lib/depcomp: Various portability and quoting nits. + + reformat gnupload script. + * lib/gnupload: Reformat and reindent. + + gnupload touchups. + * lib/gnupload (conffile): New variable. Use throughout. + (dry_run): Use `false' and `:' values. Show, don't execute, + gpg signing commands upon --dry-run. + (usage): Typo and formatting fixes. Mention that commands are + applied in order. + (argument loop): Factorize a bit, fix quoting. + (dprint, mkdirective, mksymlink, upload): Formatting and + portability fixes. + + 2009-03-04 Sergey Poznyakoff + + Various gnupload improvements. + Add support for uploading to download.gnu.org.ua. + Add support for a .gnupload configuration file. + Support creating and removing symlinks. + Allow for several operations in a single invocation. + Add debugging features. + * lib/gnupload: New options --delete, --symlink, --rmsymlink, + --symlink-regex, --dry-run; support `--' to separate options and + commands from files. New target download.gnu.org.ua. Expand + `.gnupload' file contents before command line arguments. + (usage): Expand. + (dprint, mkdirective, mksymlink, upload): New functions. + * THANKS: Update. + + 2009-03-03 Peter Rosin + + Add depmode=msvcmsys for Microsoft Visual C++ on MSYS. + * lib/depcomp [msvisualcpp]: Fork fewer processes. Filter out + libtool in the preprocessor invocation (as is done in + depmode=cpp). Silence compiler stderr. + [msvcmsys]: New depmode as a derivative of depmode=msvisualcpp. + msvcmsys transforms any backslashes into forward slashes to + make the grep in depend.m4 match, instead of the "cygpath -u" + that is used in msvisualcpp. + + 2009-03-03 Ralf Wildenhues + Peter Rosin + + Fix w32 path handling in the `compile' script. + * lib/compile: Handle colons and backslashes in win32 paths. + * tests/compile2.test: New test. + * tests/Makefile.am: Update. + Report and initial patch by Peter Rosin. + + 2009-03-03 Ralf Wildenhues + + Fix `use constant' usage for MSYS Perl 5.6.0. + * automake.in (QUEUE_MESSAGE, QUEUE_CONF_FILE, QUEUE_LOCATION) + (QUEUE_STRING): Define using one `use constant' each; as perl + 5.6.0 (on MSYS) does not understand `use constant { ... }'. + * THANKS: Update. + Report by Peter Rosin. + + 2009-03-01 Ralf Wildenhues + + Fix recursive html and install-* doc rules for BSD make. + * automake.in (%required_targets): Add html-am, + install-html-am, install-dvi-am, install-pdf-am, install-ps-am, + install-info-am. + * tests/txinfo32.test: New test. + * tests/Makefile.am: Update. + + Fix comment typo. + * lib/am/distdir.am (distcheck): Fix typo in comment. + + Ignore generated files below doc/amhello for git. + * doc/amhello/.gitignore: New file. + + 2009-02-17 Ralf Wildenhues + + * doc/automake.texi (Program variables): Add cross reference to + `Flag Variables Ordering' node. + Report by Karl Berry. + + 2009-01-31 Ralf Wildenhues + + Fix mmodely.test to work on Solaris 10. + * tests/mmodely.test: Define yylex, to satisfy needed symbol in + libfl. Return from main instead of using exit, undeclared. + * THANKS: Update. + Report by Chris Hoogendyk. + + 2009-01-30 Karl Berry + + * lib/gnupload: Add download URL to --help output. + + 2009-01-23 Eric Blake + + Use no-arg macros via AC_REQUIRE for consistency. + * m4/init.m4 (AM_INIT_AUTOMAKE): Require, rather than directly + expand, AM_PROG_INSTALL_SH and AM_PROG_INSTALL_STRIP. + * configure: Regenerate. + + 2009-01-20 Ralf Wildenhues + + Bump copyright years. + * aclocal.in (write_aclocal, version): Bump copyright years. + * automake.in (gen_copyright, version): Likewise. + * doc/automake.texi: Likewise. + + 2008-12-29 Chris Pickett (tiny change) + + * doc/automake.texi (LIBOBJS): Clarify overriding of + `*_DEPENDENCIES'. + * THANKS: Update. + + 2008-12-21 Ralf Wildenhues + + Revamp semantics for `missing help2man' and manpage distribution. + Previously, `missing help2man' would create a missing man page + containing an error message, and exit 1. This does not play + well with `make': the next run will see this particular man page + as being up to date, and will only error out on the next + generated man page, if any; repeat until all pages are done. + This patch changes `missing' to exit successfully in this case, + but `make dist' will ensure that no such man pages are packaged. + * lib/missing: Exit successfully even if we create a replacement + page due to missing help2man. + * automake.in (make_paragraphs): Define %HAVE-MANS% to be true + if this makefile deals with man pages. + * lib/am/distdir.am (distdir): If %INSTALL-MAN% and %HAVE-MANS%, + check that no man page in $(MANS) contains the replacement text + from `missing'. + * tests/man4.test: New test. + * tests/Makefile.am: Update. + * NEWS: Reorder a bit, update. + * THANKS: Update. + Report by Werner Lemberg and Karl Berry. + + Do not use 'global' for makefile-wide settings. + * doc/automake.texi (Linking, Libtool Flags) + (Program and Library Variables, Flag Variables Ordering): + Reword instances of `global variables' that really mean + makefile-wide ones. + * THANKS: Update. + Report by Andreas Bergmeier. + + Fix config.status depfiles failure. + * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Commands are + again a single shell brace group, so they are correctly skipped + when dependencies are turned off. The failure is noisy with + ksh only. + * tests/depend6.test: New test. + * tests/Makefile.am: Adjust. + * THANKS: Update. + Report and different suggested patch by Markus Duft. + + 2008-12-21 Zoltan Rado (tiny change) + + * doc/automake.texi (DESTDIR): Fix a couple of typos. + * THANKS: Update. + + 2008-12-13 Ralf Wildenhues + + Fix nonportable sed script in 'missing'. + * lib/missing: In sed script, do not use ';' after 't' commands. + + 2008-12-07 Ralf Wildenhues + + PR automake/531: + * doc/automake.texi (amhello Explained) + (Mixing Fortran 77 With C and C++): Fix broken links to + Autoconf manual. + Report by Michael Ploujnikov. + + 2008-12-07 Michael Ploujnikov (tiny change) + + * doc/automake.texi (Optional, Future of aclocal): Various + spelling and grammar fixes. + * THANKS: Update. + + 2008-12-03 William Pursell + + Simple typographical and grammar errors in automake.texi. + * doc/automake.texi: Fix object/article consistency (eg "an + flag" becomes "a flag"), correct minor punctuation errors, etc. + + * doc/automake.texi (Auxiliary Programs, Python, Rebuilding): + Replace 'configure' with '@command{configure}' as appropriate. + + 2008-11-29 Ralf Wildenhues + + Fixup release rules. + * Makefile.am (cvs-diff): Remove. + (git-dist): Do not use clcommit any more. Use new-style tag + name. Pass $(AM_MAKEFLAGS) to $(MAKE). + (git-diff): Adjust. + (git-release): Do not upload to sources.redhat.com. + + 2008-11-27 Ralf Wildenhues + + Fix portability issues in distcleancheck_listfiles doc example. + * doc/automake.texi (Dist): In the `distcleancheck_listfiles' + code example, add `.' path, for Solaris `find', also rewrite so + `{}' appears only once and as separate argument, for Posix. + * tests/distcleancheck.test: New test. + * tests/Makefile.am: Update. + * THANKS: Update. + Report by Jan Engelhardt and Andreas Schwab. + + 2008-11-27 Ralf Wildenhues + Jim Meyering + + Cope with whitespace in $MISSING and $install_sh. + * configure.ac (am_AUTOHEADER): New substitution, save the value + of $AUTOHEADER before AM_INIT_AUTOMAKE may add $MISSING. + * tests/defs.in: Use am_AUTOHEADER. + * lib/am/install.am: Fix typo. + * m4/install-sh.m4 (AM_PROG_INSTALL_SH): Add suitable + single-quote quoting to install_sh, but only if needed. + * m4/missing.m4 (AM_MISSING_HAS_RUN): Add suitable double-quote + quoting to MISSING, but only if needed. + * m4/sanity.m4 (AM_SANITY_CHECK): Abort configure if `pwd` or + $srcdir contain shell meta-characters that cannot be handled; + space and tab are allowed in the former only. + * tests/sanity.test: New test. + * tests/Makefile.am: Adjust. + * NEWS: Update. + Reports by Jim Meyering and others. + + 2008-11-24 Ralf Wildenhues + + Let `missing' also work with versioned and prefixed programs. + * lib/missing: Ignore prefixes of `gnu-', `gnu', and `g' when + testing for known programs; also, ignore suffixes. + * tests/missing.test: Amend test. + * NEWS, THANKS: Update. + Report by Tim Rice. + + 2008-11-23 William Pursell + + * doc/automake.texi (Macro search path, Extending aclocal) + (Local Macros, Serials, Public macros, Directories) + (Conditional Subdirectories, Nesting Packages) + (Building a program, Libtool Modules) + (Program and Library Variables, Default _SOURCES, LIBOBJS): + Correct verb/object tense agreement, swap some words, + and general trivial cleanup. + + 2008-11-22 William Pursell + Ralf Wildenhues + + * doc/automake.texi (VPATH Builds, Nested Packages) + (Length limitations, Auxiliary Programs, Invoking Automake) + (Requirements, Optional): Fix typos and grammaros, correct URL + to 'config' source repository. Rewrite description of AC_SUBST. + (true): Cross-reference to `Default _SOURCES' node. + + 2008-11-22 William Pursell + + * configure.ac: Quote APIVERSION. + + 2008-11-22 Jim Meyering + + * tests/xz.test: Fix typo introduced by Ralf in last patch. + + Add xz compression support. + * NEWS: Mention xz as well as lzma (xz will displace lzma). + * automake.in (handle_dist): Recognize dist-xz. + (make_paragraphs): Map XZ to dist-xz. + * doc/automake.texi (Dist): Add dist-xz. + (Options): Likewise. + * lib/Automake/Options.pm (_process_option_list): Accept + dist-xz. + * lib/am/distdir.am (dist-xz): New rule. + (dist dist-all): Add command to create an xz-compressed tarball. + (distcheck): Handle xz-compressed tarballs just like the others. + * tests/xz.test: New file, based on nogzip.test. + * tests/Makefile.am (TESTS): Add xz.test. + + 2008-11-22 Ralf Wildenhues + + When installing COPYING, recommend adding the file to VCS. + * automake.in (require_file_internal): If installing `COPYING', + mention that we install the GPLv3 file and recommend adding the + file to version control. + * doc/automake.texi (Invoking Automake): Point to `Gnits' node + for `--add-missing'. + (Gnits): Clarify semantics: that for strictness gnu or higher, + INSTALL is installed, and that COPYING is installed as GPLv3 + if no COPYING file exists. + * tests/license2.test: New test. + * tests/Makefile.am: Update. + * NEWS, THANKS: Update. + Report by Brian Cameron. + + 2008-11-20 William Pursell + + * doc/automake.texi (Timeline): Fix typos and grammaros. + + 2008-11-12 Karl Berry + + New gnupload option --delete to remove archive files. + * lib/gnupload: Accept --delete to remove files from + alpha.gnu.org or ftp.gnu.org. + + 2008-11-12 Ralf Wildenhues + + Testsuite fixes for ksh. + * tests/check10.test: Add ':' as last command in subshell, for + zero exit status of the subshell. + * tests/parallel-am.test: Do not let failing 'unset' of + nonexistent variable exit the test. + * tests/parallel-am2.test: Likewise. + * tests/parallel-am3.test: Likewise. + + 2008-11-11 Charles Wilson (tiny change) + Ralf Wildenhues + + Cleanup config.lt in case LT_OUTPUT is in use. + * lib/am/libtool.am [TOPDIR_P] (distclean-libtool): clean up + config.lt as well as libtool. + * tests/libtoo11.test: New test. + * tests/Makefile.am: Update. + * NEWS: Update. + + 2008-11-11 Ralf Wildenhues + + * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub, + lib/texinfo.tex: Sync from upstream. + + 2008-11-10 Ralf Wildenhues + + Update to GFDL 1.3. + * doc/fdl.texi: Update to GFDL 1.3. + * doc/automake.texi (GNU Free Documentation License): Adjust. + * NEWS: Update. + + * NEWS: Fix typos. + * automake.in: Fix typos in comments. Remove extraneous + whitespace. + + 2008-11-06 Ralf Wildenhues + + Cope with absent Perl modules threads and Thread::Queue. + * automake.in: Instead of `use threads', use `require threads; + import threads' inside a BEGIN section. Likewise for + Thread::Queue. + * lib/Automake/ChannelDefs.pm (Automake::ChannelDefs): Likewise. + * lib/Automake/tests/Condition-t.pl: Likewise. + * lib/Automake/tests/DisjConditions-t.pl: Likewise. + * configure.ac: Likewise, use `require' and `import'. + Report by Eric Blake, fix suggested by Ben Pfaff. + + 2008-11-04 Ralf Wildenhues + + Multiple 'make uninstall' should not fail even for TEXINFOS. + * lib/am/texinfos.am (uninstall-info-am): Do not fail due to + install-info if the installed file does not exist (any more). + * tests/txinfo26.test: Issue multiple `make uninstall'. + * tests/instmany-mans.test: Likewise. + * tests/instmany-python.test: Likewise. + * tests/instmany.test: Likewise. + * tests/txinfo26.test: Likewise. + * NEWS: Update. + + 2008-11-03 Ralf Wildenhues + + New public macro AM_SUBST_NOTMAKE. + * m4/substnot.m4 (AM_SUBST_NOTMAKE): New public macro; invoke + _AM_SUBST_NOTMAKE with arguments. + * doc/automake.texi (Optional): Document it. + * NEWS: Update. + * tests/subst4.test: New test. + * tests/Makefile.am: Update. + Suggestion by Bruno Haible. + + Fix regression introduced by AM_DEFAULT_SOURCE_EXT. + * automake.in (handle_source_transform): Use the right variable + when determining whether to apply the old rule for the libtool + library default source name. + Testsuite failure exposed by Bob Proulx' build daemon. + + 2008-11-02 Ralf Wildenhues + + New maintainer target release-stats. + * Makefile.am (release-stats): New target, to help computing the + entries in the statistics table in automake.texi. + * doc/automake.texi (Releases): Reformat a bit. Add number of + generated files. Add entry for 1.10.1. + + Choose default source extension: AM_DEFAULT_SOURCE_EXT. + * automake.in (handle_source_transform): Accept unconditional + literal extension in AM_DEFAULT_SOURCE_EXT as override for the + default source extension `.c'. If set, ignore the old default + source rule for libtool libraries. + * doc/automake.texi (Default _SOURCES): Document this. + * NEWS: Update. + * tests/specflg10.test: New test. + * tests/Makefile.am: Update. + Suggestion by Akim Demaille. + + Fix maintainer-check failure. + * tests/parallel-am.test: Rename variable to not match pattern + used in maintainer-check. + + 2008-10-27 Ralf Wildenhues + + * NEWS: Fix typo. + Spotted by Jim Meyering. + + 2008-10-26 Ralf Wildenhues + + Parallel automake --add-missing: serialized file installs. + * automake.in (QUEUE_CONF_FILE, QUEUE_LOCATION, QUEUE_STRING): + New serialization keys. + ($required_conf_file_queue): New file global. + (queue_required_conf_file, require_queued_conf_file): New + functions, to queue and dequeue requirements for aux dir files. + (require_conf_file): Enqueue if needed. + (get_number_of_threads): Can do threads with --add-missing now. + (handle_makefiles_threaded): Let worker threads enqueue, let + master attend to queued requirements at the right time. + * tests/parallel-am.test: Explain the purpose of the include + chain used here. + * tests/parallel-am2.test: Also cope with --add-missing. + * tests/parallel-am3.test: New test, test absence of races with + concurrent same-file installs stemming from --add-missing. + * tests/Makefile.am: Adjust. + + Implement serialization for Locations. + * lib/Automake/Location.pm (serialize, deserialize): New + functions. They allows to serialize a Location in an array, and + to restore a Location from a thread queue. The API is + unsymmetric (array vs. queue) because enqueuing data needs to + happen atomically. + + Parallel automake: ordered output messages. + * lib/Automake/Channels.pm (%_default_options): New options + `ordered' default enabled, `queue', default zero (no queue), + `queue_key' default undefined. + (_merge_options): Ensure `ordered' channels cannot have fatal + messages or backtrace output. + (_enqueue, _dequeue): New functions, to push messages onto a + Thread::Queue, and output messages from such a queue, suitably + weeded for duplicates in the same manner as _print_message. + (_print_message): If the channel is ordered and has an + associated queue, then enqueue messages instead of printing + them. + (setup_channel_queue, pop_channel_queue): New functions, + to set a Thread::Queue for channels, and to flush a queue. + * lib/Automake/ChannelDefs.pm: Unset channel option `ordered' + for fatal, automake, and verb channels. + * automake.in (QUEUE_MESSAGE): New global constant, used as + serialization key. + (handle_makefiles_threaded): Create message queues for each + input file; workers queue messages, and the master outputs them + ordered, using the new Channels.pm functions. + * tests/parallel-am.test: Also check for ordered output (in the + absence of --add-missing races). + * tests/parallel-am2.test: New test; check for ordered output of + warning and (regular) error messages. + * tests/Makefile.am: Adjust. + + Parallel automake execution: AUTOMAKE_JOBS. + * lib/Automake/Config.in (perl_threads): New global. + * automake.in: Use it. If the perl supports interpreter-based + threading, then use `threads' and `Thread::Queue'. + (handle_makefile, handle_makefiles_serial): New functions, + factored out from main. + (get_number_of_threads): New function, compute number of threads + to use, based on environment variable `AUTOMAKE_JOBS' and number + of independent makefiles. + (handle_makefiles_threaded): New function. Spawn threads, use + thread queue to distribute handling the different makefiles. + Collect $exit_code values from threads. + (main): Use new functions. + * aclocal.in: No threads here. + * configure.ac: Substitute PERL_THREADS; enabled with perl >= + 5.7.2 and when ithreads are available. + * bootstrap (dosubst): Likewise. + * Makefile.am (do_subst): Likewise. + * lib/Automake/Makefile.am (do_subst): Likewise. + * lib/Automake/ChannelDefs.pm: Use `Automake::Config' and + `threads'. + (verb): Prepend thread ID (tid) to verbose messages. + * lib/Automake/Channels.pm (msg): Before exiting, flush stderr, + needed for worker threads. + * lib/Automake/tests/Makefile.am (TESTS_ENVIRONMENT): Also + include the build tree path, so Config.pm is found. + * tests/parallel-am.test: New test. + * tests/Makefile.am: Update. + * doc/automake.texi (Invoking Automake): Document AUTOMAKE_JOBS. + * NEWS, THANKS: Update. + Report about long execution times by Joakim Tjernlund and others. + + 2008-10-26 Ralf Wildenhues + + Minor file checking optimization: set_dir_cache_file. + * lib/Automake/FileUtils.pm (set_dir_cache_file): New function. + * automake.in (require_file_internal): Instead of resetting the + cache when a file has been installed, simply correct the cache + using set_dir_cache_file. + + No uniquifying for fatal, prog_error, and verbose messages. + There is no point in dropping critical messages, even if they + are duplicates (unlikely to happen unless they have been sent + as non-critical messages before), and verbose messages should + enable to show progress, even using duplicate statements. + * lib/Automake/ChannelDefs.pm (fatal, automake, verb): Set + `uniq_part' to `UP_NONE' when registering these channels. + + Fix 'config.status --file=... depfiles' with new Autoconf. + * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Eval + $CONFIG_STATUS contents if we detect the quoting used by + Autoconf 2.62 and newer for --file=. + * tests/depend5.test: New test. + * tests/Makefile.am: Update. + * NEWS, THANKS: Update. + Report by Sam Steingold against gnulib. + + 2008-10-26 Johan Dahlin + + Support for Python 3.0, drop support for pre-2.0. + * lib/py-compile: Do not import string; use sys.stdout.write + instead of print, files.split instead of string.split. + * m4/python.m4 (AM_PATH_PYTHON): Also look for python3 and + phython3.0; do not look for python1.5. Use sys.stdout.write. + (AM_PYTHON_CHECK_VERSION): Do not use string; adjust to xrange + removal in Python 3.0, and changed semantics of map. + * doc/automake.texi (Python, Hard-Coded Install Paths): Update + Python versions mentioned in the manual, using 2.5 everywhere. + * NEWS, THANKS: Update. + + 2008-10-22 Ralf Wildenhues + + * lib/Automake/Channels.pm (@chain): Drop unused variable. + + Cleanup of per-input global variables in automake.in. + * automake.in ($output_vars, $output_all, $output_header) + ($output_rules, $output_trailer): Fix comment, and sort + declarations in the order they will appear in the output. + ($all_target): Unused variable, remove. + (Variables not reset by &initialize_per_input.): New section, + clarify that %am_file_cache is not reset. + (initialize_per_input): Reset $am_file_name, $am_relative_dir, + $in_file_name, $relative_dir, and $topsrcdir to `undef' rather + than the empty string; $topsrcdir was not reset at all. Sort + remaining variables in the same order as in the section + `Variables reset by &initialize_per_input'. + + Let stderr output end up on fd 2 in testsuite. + * tests/defs.in (AUTOMAKE_run): Output recorded stderr on file + descriptor 2. + * tests/getopt.test: Fix erroneous multiple redirection, + uncovered by above change. + + 2008-10-19 Ralf Wildenhues + + Fix DisjConditions module to be thread-safe for perl >= 5.7.2. + Self-hashes of blessed references are not correctly transported + through thread creation. This patch fixes that by recreating + the hashes upon thread creation with a CLONE special subroutine, + which is automatically invoked by new enough Perl versions. + * lib/Automake/DisjConditions.pm (CLONE): New special + subroutine to fix self hashes upon thread creation. + * lib/Automake/tests/Condition-t.pl: New, sister test to + Condition.pl, but spawns a new threads after each creation of a + new condition; skip test if perl is too old or ithreads are not + available. + * lib/Automake/tests/DisjConditions-t.pl: Likewise. + * lib/Automake/tests/Makefile.am (TESTS): Add them. + + 2008-10-18 Ralf Wildenhues + + Fix comment typos. + * automake.in (require_file_internal): Fix typos in comments. + * m4/amversion.in: Likewise. + * lib/Automake/Variable.pm: Likewise. + * lib/Automake/XFile.pm: Likewise. + + Diagnose unsupported uses of `backname' helper function. + * automake.in (backname): Error out if the path points outside + the directory it started in. + + 2008-10-12 Ralf Wildenhues + + Nicer 'make dist' output. + * lib/am/distdir.am (distdir): Hide the complex script + used for computing the relative subdirs; echo the sub-make + command. + + 2008-10-12 William Pursell (tiny patch) + + * tests/defs.in: Fix comment typo. + + 2008-10-12 William Pursell + Ralf Wildenhues + + Fix grammar w.r.t. plurals in test reports. + * lib/am/check.am: Fix singular/plural forms in test reports. + * tests/check10.test: New test. + * tests/Makefile.am: Update. + 2008-10-08 Ralf Wildenhues Require texi2dvi in tests, makeinfo may not be enough. diff --cc NEWS index 7142c4ad4,1f88963b8..4a0e13cdb --- a/NEWS +++ b/NEWS @@@ -1,4 -1,21 +1,25 @@@ - New in 1.10a: + New in 1.10c: + ++* Languages changes: ++ ++ - Vala source files are recognized now. ++ + * Miscellaneous Changes: + + - In 1.10b, the `parallel-tests' driver introduced per-extension test + driver variables `_LOG_COMPILER', defined as + + $(_LOG_COMPILE) $(AM__LOG_FLAGS) $(_LOG_FLAGS) + + for extensions `.ext' registered in `TEST_EXTENSIONS'. Now, for tests + without a known extension, add `LOG_COMPILER', defined as + + $(LOG_COMPILE) $(AM_LOG_FLAGS) $(LOG_FLAGS) + + to the rules. + + + New in 1.10b: * Version requirements: diff --cc automake.in index a014bd063,0460a44d2..e2e564334 --- a/automake.in +++ b/automake.in @@@ -543,9 -570,8 +570,9 @@@ my %dep_files my @dist_targets; # Keep track of all programs declared in this Makefile, without - # $(EXEEXT). @substitution@ are not listed. + # $(EXEEXT). @substitutions@ are not listed. my %known_programs; +my %known_libraries; # Keys in this hash are the basenames of files which must depend on # ansi2knr. Values are either the empty string, or the directory in