2009-12-29 Ralf Wildenhues Fix and complete copyright notices in Makefile.am files. * Makefile.am: Use single-`#' comment for copyright notice, so that it also appears in the generated Makefile.in file. * doc/Makefile.am: Likewise. * doc/amhello/Makefile.am: Likewise. * doc/amhello/src/Makefile.am: Likewise. * lib/Automake/Makefile.am: Likewise. * lib/Automake/tests/Makefile.am: Likewise. * lib/Makefile.am: Likewise. * lib/am/Makefile.am: Likewise. * m4/Makefile.am: Likewise. * tests/Makefile.am: Add copyright notice. Report of missing copyright notice by Stefano Lattarini. 2009-12-27 Stefano Lattarini Fixed typo in Makefile.am (extra semicolon removed) * Makefile.am (sc_diff_automake_in_automake): Removed an extra semicolon in target's rules, which prevented a stdout redirection from working. 2009-12-21 Julien Danjou (tiny change) Add support for newer python version * m4/python.m4 (AM_PATH_PYTHON): Add python3.1 to _AM_PYTHON_INTERPRETER_LIST. 2009-12-21 Karl Berry mention ncftpput in gnupload --help * lib/gnupload: Mention ncftpput in `--help' output. Report by Bruce Korb. 2009-12-06 Ralf Wildenhues * NEWS: Update. 2009-12-05 Antonio Diaz Diaz Replace unlzma, gunzip, bunzip2 with pack tool -d invocation. * lib/am/distdir.am (distcheck): Use lzma -d, gzip -d, bzip2 -d, instead of the respective un$tool invocation, to avoid depending on another tool. * THANKS: Update. 2009-12-05 Ralf Wildenhues Use $DJDIR rather than $DJGPP to detect running on DJGPP. * automake.in (Language): Use $ENV{'DJDIR'} for the $ENV{'SHELL'} override. * bootstrap: Use $DJDIR for setting BOOTSTRAP_SHELL, to fix bootstrapping under MinGW when $DJGPP has been set. Do not rely on Perl symlink status, for MSYS perl. * automake.in (require_file_internal): Ensure presence of symlink target file; MSYS perl symlink doesn't return an error status when the file could not be created (copied, on this system). Fixes symlink.test failure. 2009-12-04 Stefano Lattarini Ralf Wildenhues Avoid Solaris sh `set -e' bug in vala4.test. * tests/vala4.test: New variable $cwd, holding the full path of the current directory. Use it instead of `pwd` command substitution, to avoid Heirloom/Solaris Sh bug with `set -e'. 2009-12-05 Ralf Wildenhues Fix requirements of silent8.test. * tests/silent8.test: Require makeinfo --html, tex, texi2dvi -o, dvips. 2009-12-04 Stefano Lattarini File `automake.in' is not meant to be executed (only to be preprocessed into `automake'), so don't leave it executable. * automake.in: Remove executable bit. 2009-12-04 Stefano Lattarini Don't make the generated Automake's Config.pm executable. * lib/Automake/Makefile.am (Config.pm): Don't make the generated `Config.pm' file executable. 2009-11-28 Jim Meyering do not put world-writable directories in distribution tarballs * lib/am/distdir.am (distdir): Do not make all directories group- or world-writable. Instead, use 755. * tests/subpkg4.test (test-distdir-is-readable): Check for new, more restricted permissions. 2009-11-29 Karl Berry Rewrite `gnupload --help' examples. * lib/gnupload: Use GNU style version numbers, a generic package name, and more useful examples. 2009-11-28 Jim Meyering avoid a warning from perl-5.11 * lib/Automake/Wrap.pm (_tab_length): Remove useless use of tr's "/d" modifier. 2009-11-14 Ralf Wildenhues Distribute the Automake bootstrap script. * Makefile.am (EXTRA_DIST): Add bootstrap. Report by Jan Engelhardt. 2009-11-14 Ralf Wildenhues Coverage for corner cases in derive_suffix. Ensure unrelatex SUFFIXES entries and unrelated inference rules are ignored silently. * tests/ext3.test: New test. * tests/Makefile.am: Update. Coverage for user-provided _LINK variables. * tests/link_override.test: New test. * tests/Makefile.am: Adjust. Coverage: warn about substitutions that need EXTRA_PRIMARY. * tests/extra9.test: New test. * tests/Makefile.am: Adjust. Coverage: warn about configure substitution in EXTRA_PRIMARY. * tests/subst5.test: New test. * tests/Makefile.am: Update. Coverage for syntax errors with conditionals in included fragments. * tests/condinc2.test: Amend test. Coverage: diagnose variables with forbidden dist_ prefix. * tests/candist.test: New test. * tests/Makefile.am: Update. Coverage for conditional `else' and `endif' arguments. * tests/cond46.test: New test. * tests/Makefile.am: Update. 2009-10-31 Jim Meyering Ralf Wildenhues Don't let an envvar setting of "$fail" cause build failure. Without this change, in a project using an automake-generated Makefile, "make fail=anything" would fail inappropriately, due to the `test -z "$$fail"' at the end of this emitted rule: * lib/am/subdirs.am ($(RECURSIVE_TARGETS)): Initialize "fail=" to keep an envvar setting of that variable from causing unwarranted failure. ($(RECURSIVE_CLEAN_TARGETS)): Likewise. * tests/subdir10.test: New test. * tests/Makefile.am: Update. 2009-10-18 Ralf Wildenhues Simplify Variable::_check_ambiguous_condition. * lib/Automake/Variable.pm (_check_ambiguous_condition): No need to check for $def since ambiguous_p returns an empty $message if there is no other condition which is ambiguous to $cond. Coverage for DisjConditions.pm. * lib/Automake/tests/DisjConditions.pl (test_basics): Increase test coverage: test ->human, ->merge, ->simplify, ->multiply. * lib/Automake/tests/DisjConditions-t.pl (test_basics): Likewise changes, but including state copies across thread creation. * lib/Automake/tests/DisjCon2.pl: New test. * lib/Automake/tests/DisjCon3.pl: Likewise. * lib/Automake/tests/Makefile.am (TESTS, XFAIL_TESTS): Adjust. Coverage and fixes for Condition.pm. * lib/Automake/Condition.pm (new): Catch common programming errors better by checking type of passed argument before munging them to all be strings through split. * lib/Automake/tests/Condition.pl (test_basics): Also test ->human. (test_merge): New function, test ->merge, ->merge_conds, ->strip. * lib/Automake/tests/Condition-t.pl (test_basics, test_merge): Likewise changes, but including state copies across thread creation. * lib/Automake/tests/Cond2.pl: New test for programming error. * lib/Automake/tests/Cond3.pl: Likewise. * lib/Automake/tests/Makefile.am (TESTS, XFAIL_TESTS): Update. Coverage for Wrap.pm. * lib/Automake/tests/Wrap.pl (@tests): Add test for word with trailing space. (test_makefile_wrap, @makefile_tests): New function, new list of tests, to test makefile_wrap. Coverage for Version.pm. * lib/Automake/tests/Version.pl (test_version_compare): Also try Automake::Version::check for the version pairs, taking into account the special-case naming of code forks. (@tests): Add more test cases. (test_bad_versions, @bad_versions): New function, new test cases, to ensure bad version strings are rejected. * lib/Automake/tests/Version2.pl: New test. * lib/Automake/tests/Version3.pl: Likewise. * lib/Automake/tests/Makefile.am (TESTS): Add tests here ... (XFAIL_TESTS): ... and here, new. Pod coverage for Perl modules. * lib/Automake/ChannelDefs.pm (parse_warnings): Fix typo in Pod documentation. * lib/Automake/Condition.pm: Add a couple of missing `=back' lines. (_has): Renamed from ... (has): ... this, as this is an internal method. (strip, false, true_when): Adjust callers. * lib/Automake/Configure_ac.pm: Add Pod `Functions' section with documentation for find_configure_ac and require_configure_ac. * lib/Automake/Location.pm: Fix typo in Pod. Add `Methods' section, document methods. * lib/Automake/RuleDef.pm: New `Methods' Pod section. * lib/Automake/VarDef.pm: Document `raw_value'. * lib/Automake/Wrap.pm (_tab_length): Rename from ... (tab_length): ... this, as this is an internal method. (wrap): Adjust callers. * lib/Automake/XFile.pm: Reorganize Pod a bit, add `Methods' section. 2009-10-17 Ralf Wildenhues Perl coverage support using Devel::Cover. This introduces makefile rules to run the testsuite with Perl coverage enabled. It skips tests that use perl ithreads, by unsetting AUTOMAKE_JOBS and setting WANT_NO_THREADS to make the threaded tests skip. * Makefile.am (PERL_COVERAGE_DB, PERL_COVERAGE_FLAGS) (PERL_COVER): New variables. (check-coverage, recheck-coverage, clean-coverage): New phony targets. (check-coverage-run, recheck-coverage-run): New phony helper targets. (clean-local): New, depend on clean-coverage. * lib/Automake/tests/Condition-t.pl: Skip if WANT_NO_THREADS is set. * lib/Automake/tests/DisjConditions-t.pl: Likewise. * tests/defs.in: New required entry 'perl-threads'. * tests/parallel-am.test: Use it to skip if WANT_NO_THREADS is set. * tests/parallel-am2.test: Likewise. * tests/parallel-am3.test: Likewise. Add convenience `recheck' target to our toplevel Makefile.am. * Makefile.am (recheck): New convenience target. * tests/README: Give examples for running only failed or outdated or otherwise selected tests. dist: allow running several compressors in parallel. * lib/am/distdir.am (am__post_remove_distdir): New internal variable. (DIST_TARGETS): New variable, set to list of chosen distribution formats. Order formats by expected duration, slowest first, for better parallelism. (dist-gzip, dist-bzip2, dist-lzma, dist-xz, dist-tarZ) (dist-shar, dist-zip): Use $(am__post_remove_distdir). (dist, dist-all): Do not depend on distdir. Instead of replicating each compression command, use a recursive invocation to allow running all $(DIST_TARGETS) in parallel. * NEWS: Update. Report by Peter Breitenlohner. Fix license headers of cscope tests to be GPLv2+. * tests/cscope.test: Revert to GPL version 2. * tests/cscope2.test: Likewise. * tests/cscope3.test: Likewise. Sync auxiliary files from upstream. * INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub, lib/texinfo.tex: Sync from upstream. Doc and comment typos. * automake.in (handle_ltlibraries): Fix typo in comment. * tests/distcom7.test: Likewise. * tests/lisp5.test: Likewise. * doc/automake.texi (Usage of Conditionals): Fix typo. 2009-10-11 Ralf Wildenhues Fix race condition in werror2.test due to sanity sleep change. * tests/werror2.test: Generate Makefile.in before configure so that a Makefile.am update after configure has run is guaranteed to be newer than Makefile.in. * tests/subdir5.test: Document why this test does not need to be fixed. * tests/subdir8.test: Likewise. Improve description of the various *LINK variables. * doc/automake.texi (Program and Library Variables): _LINK also receives libraries to link against. _LINK may be generated. (Program Variables): Document reasons when per-target _LINK is used instead of LINK. (How the Linker is Chosen): Document how a per-target _LINK variable and per-target link flags override linker selection. * THANKS: Update. Report by Dave Korn against gcc/libstdc++-v3. Allow variable override of, rather than by, silent variables. When overriding variables, check the VAR_SILENT status of the old condition, not the new one: we allow non-silent overrides of silent variables (these do not hit ordering bugs in the automake output), but there is no use case for doing so the other way round. Fixes conditional overrides of variables annotated AM_SUBST_NOTMAKE in configure.ac. * lib/Automake/Variable.pm (_check_ambiguous_condition): Check for VAR_SILENT in $ambig_cond not $cond. * tests/cond44.test, tests/cond45.test: New tests, analogous to cond23.test and cond24.test. * tests/Makefile.am: Update. Spotted originally in binutils/bfd. Fix `make clean check' for the Automake package. * lib/Automake/Makefile.am (SUBDIRS): Add `.' before `tests', so that Config.pm is built first. Fix in-tree `recheck' after failed test that runs `check'. If a test like pr401b-p.test fails for some reason, a `make recheck' would cause another reason for failure because it sets AM_MAKEFLAGS which gets propagated into the test and causes its `make check' to fail. * tests/defs.in: Also unset AM_MAKEFLAGS. 2009-10-11 Stefano Lattarini Updated code enabling Bourne-compatibility in test scripts. * tests/defs.in: updated the code enabling Bourne-compatibility mode in the shell (now it's copied from autoconf 2.64). Avoid leaking TEST_LOG_COMPILER in environment of test scripts. * tests/defs.in: Unset variable `TEST_LOG_COMPILER'. 2009-10-07 Stefano Lattarini Testsuite: do not use `chmod -R' when cleaning up. * tests/Makefile.am (clean-local-check): Do not use `chmod -R' on the test directories, as that may change or try to change the mode of installed files: the test directory may contain symlinks to ltmain.sh files from a Libtool installation, and Solaris `chmod -R' touches symlink targets. Instead, use the cleanup strategy used in distdir.am (which is also employed in tests/defs.in). 2009-10-06 Bruno Haible Ralf Wildenhues Fix 'compile' script to not call mv when target equals source. * lib/compile: Don't attempt to move the generated file to its target destination when it is already at the target destination. Avoids an mv failure with subdir-objects. * tests/ccnoco3.test: New test. * tests/Makefile.am: Adjust. 2009-10-01 Stefano Lattarini (tiny change) Fix recommended way to run automake's test scripts with Zsh. * tests/README (Supported shells): Changed the recommended way to run automake's test scripts with Zsh. Now we tell to use the Zsh's command line option `-o no_function_argzero', not `--no-function-argzero', since the latter does not work with versions 3.x of Zsh. 2009-09-26 Ralf Wildenhues Fixups and tests for cscope functionality. It seems cscope is not able to take into account relative file names of included cscope.files files, but it is able to canonicalize file names containing '../' sequences. This patch makes the cscope references relative again, and fixes some corner cases. * NEWS: Reword a bit. * THANKS: Update. * automake.in (handle_tags): Use $(am__cd). Provide default empty rule for the `cscope' target, for empty sources. * lib/am/tags.am (cscopelist): Construct relative path to files in $(srcdir) if $(srcdir) is relative. [TOPDIR_P] (cscope): Do not depend on cscope-clean. Only invoke $(CSCOPE) if cscope.files is nonemtpy. (clean-cscope): Rename from ... (cscopeclean): ... this. (cscope.files): Depend on clean-cscope. (distclean-tags) [!TOPDIR_P]: No need to remove cscope files here. * tests/cscope.test, tests/cscope2.test, tests/cscope3.test: New tests. * tests/Makefile.am: Adjust. 2009-09-25 Debarshi Ray New target to generate cscope database. * automake.in (handle_tags): Handle cscope. * doc/automake.texi (Tags): Document cscope. * lib/am/tags.am (CSCOPE): New macro. [TOPDIR_P] (AM_RECURSIVE_TARGETS): Add cscope. (cscope): New target. (cscopeclean): Likewise. (cscope.files): Likewise. (cscopelist): Likewise. (distclean-tags): Remove `cscope.out', `cscope.in.out', `cscope.po.out' and `cscope.files'. * NEWS: Update. Based upon earlier patch from Jesse Barnes. 2009-09-25 Ralf Wildenhues Use silent-rules for building the Automake package. * configure.ac (AM_INIT_AUTOMAKE): Add silent-rules option. * Makefile.am (automake, aclocal, INSTALL): Add silencing variables to recipe. * doc/Makefile.am (update_mans, $(srcdir)/aclocal.1) ($(srcdir)/automake.1, $(srcdir)/amhello-1.0.tar.gz): Likewise. * lib/Automake/Makefile.am (Config.pm): Likewise. * tests/Makefile.am ($(srcdir)/parallel-tests.am) ($(parallel_tests), defs-p): Likewise. 2009-09-25 Jack Kelly Add silent rules support for texinfo outputs. * automake.in (define_verbose_texinfo): Define several new verbose tagvars and verbose vars. (define_verbose_tagvar): Increase spacing to 8 to accommodate MAKEINFO, TEXI2DVI, TEXI2PDF. (handle_texinfo): Additional substitution for silencing dvips. (output_texinfo_build_rules): Additional substitutions for silencing texi2dvi and texi2pdf. * lib/am/texibuild.am: Add silencing to makeinfo, makeinfo --html, texi2dvi and texi2pdf rules. * lib/am/texinfos.am: Add silencing to .dvi.ps rule. * tests/Makefile.am: Add silent8.test. * tests/silent8.test: New test: tests that silent texinfo rules produce quiet messages. * NEWS: Update. 2009-09-18 Peter Johansson (tiny change) Fix link to "Recursive Make Considered Harmful" paper. * doc/automake.texi (Alternative): Fix broken URL. 2009-09-11 Reuben Thomas (tiny patch) Fix outdated reference to sh-utils in the manual. * doc/automake.texi (Options): The reference to `sh-utils' should be to `coreutils'. 2009-09-06 Ralf Wildenhues Avoid sleeping for one second most of the time in sanity check. * m4/sanity.m4 (AM_SANITY_CHECK): Try sanity check first without sleeping for a second, and only if that failed, sleep and try again, to avoid the delay in the common case of a configure script that is older than a second, or a system with sub-second time stamp granularity. Report and different patch by Jim Meyering. 2009-09-06 Stefano Lattarini (tiny change) tests/README: warn about zsh incompatibilities. * tests/README (User interface, Getting details from failures): Explicitly state that every test is a "shell script", not just a "script", and that it's run by `/bin/sh' by default. * tests/README (User interface, Supported shells): New subsection, telling about expected portability of the automake test scripts, describing a zsh incompatibility (w.r.t. $0), and a workaround to it (with the `--no-function-argzero' option). testsuite: fix a minor glitch. * tests/defs.in (exit trap): Use `$me', not `$as_me', as the name of the current test (used in error messages). * THANKS: Update. 2009-07-08 Jim Meyering manual: fix a trivial grammar error. * doc/automake.texi (Invoking aclocal): Fix grammar. 2009-06-07 Ralf Wildenhues AM_PROG_GCJ: use AC_CHECK_TOOLS for gcj, for cross compilation. * m4/gcj.m4 (AM_PROG_GCJ): Use AC_CHECK_TOOLS, rather than AC_CHECK_PROGS, when searching for `gcj'. * NEWS: Update. Report by Jack Kelly. 2009-05-24 Jack Kelly (tiny change) Ralf Wildenhues AM_PROG_GCJ currently fails to define OBJEXT and EXEEXT. * tests/gcj6.test: New test. * tests/Makefile.am: Update; mark gcj6.test as XFAIL. * THANKS: Update. 2009-05-24 Ralf Wildenhues parallel-tests: avoid GNU make 3.80 substitution bug. * lib/am/check.am [PARALLEL_TESTS] (check-TESTS): Remove any `.log' entries from `$(TEST_LOGS)' even if the list is nonempty, to work around GNU make 3.80 substitution reference issue with trailing white space in the variable. * tests/parallel-tests10.test: New test. * tests/parallel-tests6.test: Update comment. * tests/Makefile.am: Update. * NEWS: Update. Report by Bob Friesenhahn. 2009-05-23 Ralf Wildenhues testsuite: unset installation directory variables. * tests/defs.in: Before test execution, be sure to unset all installation directory variables, so they cannot have an effect on a `make -e install' command within a test. Report by Dagobert Michelsen. testsuite: do not change the mode of installed Libtool files. * tests/defs.in: Do not use `chmod -R' on the test directory, as that may change or try to change the mode of installed files: the test directory may contain symlinks to ltmain.sh files from a Libtool installation, and Solaris `chmod -R' touches symlink targets. Instead, use the cleanup strategy used in distdir.am. * NEWS: Update. Report by Dagobert Michelsen. testsuite: do not fail in cleanup code. * tests/defs.in: Turn off errexit in the cleanup trap, to avoid a test failure due to a nonzero command. * THANKS: Update. Report by Dagobert Michelsen. 2009-05-23 Peter O'Gorman python: do not install in system directories on Darwin 9. On Darwin 9, get_python_lib returns a path below `/Library/Python' regardless of the `prefix' argument it was passed, causing `make install' to target the system directories regardless of `--prefix' argument used. Work around this Darwin bug by ignoring the result of get_python_lib if it points outside of the passed prefix, and the prefix was not a system directory. * m4/python.m4 (AM_PATH_PYTHON): If the prefix does not match the initial portion of the pythondir returned by get_python_lib, then ignore it unless the configured prefix is `/usr' or starts with `/System'. Fixes instmany-python.test failure on Mac OS X 10.5.7. * NEWS: Update. 2009-05-23 Ralf Wildenhues Clarify how to enable `silent-rules' and other global options. * doc/automake.texi (Options): When introducing options, be more careful to note that not all of them can be specified in AUTOMAKE_OPTIONS statements, and that some do not make sense in subdirectories. Note more prominently that `silent-rules' can only be specified in configure.ac. * lib/Automake/Options.pm (_process_option_list): Improve error message for `silent-rules', `tar-v7', `tar-ustar', `tar-pax' options specified in Makefile.am files. Report by Bruno Haible. 2009-05-21 Ralf Wildenhues Skip specflg10.test without a C++ compiler. * tests/specflg10.test: Require g++. Report by Thien-Thi Nguyen. 2009-05-19 Ralf Wildenhues Revert last patch, IRIX has an editor named `jot'. * tests/instmany-mans.test: Do not try `jot'. * tests/instmany-python.test: Likewise. * tests/instmany.test: Likewise. Report by Peter O'Gorman. 2009-05-18 Ralf Wildenhues testsuite: also try `jot' as `seq' replacement. * tests/instmany-mans.test: Try BSD `jot' before resorting to a slow but portable shell loop. * tests/instmany-python.test: Likewise. * tests/instmany.test: Likewise. Suggestion by Peter O'Gorman. Fix test failure when pkg.m4 is not found, only pkg-config. * tests/vala5.test: Update comment, this test is not expected to fail any more. Require valac version 0.7.0. Skip if configure fails, could be due to unexpanded PKG_CHECK_MODULES or too old valac. Report by Simon Josefsson. 2009-05-17 Ralf Wildenhues Post-release version bump. * configure.ac, NEWS: Bump version to 1.11a. 2009-05-17 Ralf Wildenhues Automake 1.11. * configure.ac: Bump version to 1.11. * doc/automake.texi (Releases): Add line for 1.11. Remove line for 1.10b. Fix maintainer-check failures. * automake.in (lang_vala_finish_target): Use `$(am__cd)' instead of plain `cd'. * tests/vala2.test: Use `rm -f' instead of `rm'. Revert Automake license to GPLv2+. Automake will move to GPLv3+ once the Exception statement has been rewritten to use the new GPLv3 exception language. This change does not impact the COPYING file that may be installed by `automake --add-missing'. * COPYING: Revert to GPLv2. All uses changed. * NEWS: Update. Rewrite NEWS for 1.11. * NEWS: Rewrite, merging 1.10b and 1.10c entries. Sync auxiliary files from upstream. * lib/config.guess, lib/config.sub, lib/texinfo.tex: Sync from upstream. Update release statistics, improve release-stats rule. * Makefile.am (release-stats): Output stderr of pstops in addition to catching it, for better debugging. * doc/automake.texi (Releases): Add line for 1.10.2. Cope with parallel BSD make -jN semantics. When BSD `make -jN' is used without `-B' which enables backwards compatible semantics, it may reuse the same shell for several commands within a rule; so ensure we do not leave it in a different directory, nor `exit 0' early in a multi-command rule. * lib/am/distdir.am (distcheck): After running `distcleancheck', change back to original working directory. * lib/am/remake-hdr.am (%CONFIG_HIN%): Run autoheader in a subshell. * lib/am/mans.am (uninstall-man%SECTION%): Do not `exit 0' early in a rule that consists of several shell invocations. Parallel NetBSD `make -jN' without `-B' will use only one shell for all commands, but won't respawn one after `exit 0'. Fixes notrans.test failure. * tests/makej2.test: New test. * tests/Makefile.am: Update. Fix typo in comment. * lib/am/install.am: Fix typo. 2009-05-17 Matthias Klose (tiny change) Ralf Wildenhues Let AM_PATH_PYTHON honor python's idea about the site directory. * m4/python.m4 (AM_PATH_PYTHON): When computing pythondir and pyexecdir, pass the expanded prefix resp. exec_prefix as `prefix' to get_python_lib, so python can determine the name of the site directory depending on the install location. Afterwards, replace the directory names with the unexpanded values of $PYTHON_PREFIX resp. $PYTHON_EXEC_PREFIX again, to allow override according to the documentation. Fixes site directory computation for Debian and Ubuntu (`dist-packages' for a prefix of `/usr' or `/usr/local', `site-packages' elsewhere). * NEWS, THANKS: Update. 2009-05-17 Ralf Wildenhues Vala: for now, require GNU make. * doc/automake.texi (Vala Support): GNU make is currently required for Vala sources. * tests/vala2.test, tests/vala3.test, tests/vala5.test: Require GNU make. 2009-05-17 Jürg Billeter Vala: Use $(srcdir) in rebuild rules. valac is always run in srcdir as the generated files are distributed. So srcdir needs to be taken into account in the rebuild rules to not wrongly trigger a rebuild in the wrong directory. * automake.in (lang_vala_finish_target): Rebuild files in $(srcdir). * tests/vala2.test: Test rebuild rules from VPATH build. Vala: Add and test rebuild rules for generated header and vapi files. valac will generate additional files when using, for example, -H in VALAFLAGS. We need to recognize these options and add appropriate rebuild rules to fix parallel build. * automake.in (lang_vala_finish_target): Recognize -H, -h, --header, --internal-header, --vapi, --internal-api, --gir flags to valac and rebuild rules for generated headers; distribute and maintainer-clean them. * tests/vala2.test: Test rebuild rules. 2009-05-17 Jürg Billeter Ralf Wildenhues Vala: Fix build when using per-target VALAFLAGS. This does not yet implement full per-target support for VALAFLAGS, however, this change at least fixes building when there is only one target per source file, which is the most common situation. * automake.in: Remove `VALAFLAGS' from `flags' in language struct. (lang_vala_finish_target): Handle `*_VALAFLAGS rewriting' manually here; check `VALAFLAGS' user variables. * tests/Makefile.am (XFAIL_TESTS): Remove vala5.test. * doc/automake.texi (Vala Support): Document per-target flag limitations. 2009-05-11 Ralf Wildenhues For PR automake/540: Document some formatting restrictions for Makefile.am files. * doc/automake.texi (General Operation, Usage of Conditionals): Variable assignments should not be indented by TABs, rule commands should. Conditional keyword statements should not be indented. * THANKS: Update. Report by Luo Yi. 2009-05-03 Ralf Wildenhues Fix copyright years in *.am files. * lib/am/check.am, lib/am/check2.am, lib/am/distdir.am, lib/am/program.am, lib/am/tags.am: Fix copyright years. distdir: avoid duplicate `find' traversal with subpackages. * lib/am/distdir.am (distdir) [%?SUBDIRS%]: When recursing, set `am__skip_mode_fix'. [%?TOPDIR_P%]: When `$(am__skip_mode_fix)' is set, avoid tree walk. * tests/subpkg4.test: New test, to ensure that we still walk the whole tree while fixing permissions. We don't ensure it is walked once only. * tests/Makefile.am: Update. Disable test cleanup trap with OSF1/Tru64 sh. * configure.ac: Test whether /bin/sh has working 'set -e' in conjunction with an exit trap. Set $am_cv_sh_errexit_works accordingly, substitute sh_errexit_works, and warn about leftover test directories with broken shells like Tru64 /bin/sh. * tests/defs.in: Do not install any traps with broken shells. 2009-05-02 Bruno Haible Ralf Wildenhues Recommend *-local hooks without commands, for extensibility. * doc/automake.texi (Clean): Show how to write the clean-local extension with separate phony target. * tests/Makefile.am (clean-local-check): Practice what we preach by marking this phony. For consistency, rename from ... (check-clean-local): ... this. 2009-04-28 Eric Blake scripts: normalize all timestamps to UTC * lib/compile (scriptversion): Update emacs hook. * lib/depcomp (scriptversion): Likewise. * lib/elisp-comp (scriptversion): Likewise. * lib/gnupload (scriptversion): Likewise. * lib/install-sh (scriptversion): Likewise. * lib/mdate-sh (scriptversion): Likewise. * lib/missing (scriptversion): Likewise. * lib/mkinstalldirs (scriptversion): Likewise. * lib/py-compile (scriptversion): Likewise. * lib/ylwrap (scriptversion): Likewise. 2009-04-27 Ralf Wildenhues silent-rules: fix alignment of less verbose output. * automake.in (define_verbose_var): Define `$silent_var' as VAR_ASIS, not VAR_PRETTY, to avoid squashing of multiple adjacent spaces. * tests/silent.test: Amend test. Report by Jan Engelhardt. 2009-04-25 Ralf Wildenhues manual: fix trivial grammar errors. * doc/automake.texi (Subpackages, Vala Support, Java) (Checking the Distribution, Timeline): Fix `a' vs. `an' errors and duplicate `the'. Report by Eric Blake. Indent rule commands consistently with a TAB. * lib/am/check.am ($(TEST_SUITE_LOG)): Consistently use TAB, not spaces, for indentation of commands, even if indentation may not be needed at all. * lib/am/texinfos.am (install-info-am): Likewise. * THANKS: Update. Prompted by report from John Calcote. parallel-tests: fix recheck* targets for non-GNU make. * lib/am/check.am (recheck recheck-html): Override AM_MAKEFLAGS to portably transport the TEST_LOGS settings through the recursive `make' invocations. Fixes parallel-tests9.test failure with Solaris make. * tests/parallel-tests9.test: Also ensure that the test summary is correct for `recheck'. Suggestion by Akim Demaille. 2009-04-22 Ralf Wildenhues Avoid racy depmodes with universal builds. * m4/depend.m4 (_AM_DEPENDENCIES): If universal builds are used, avoid racy depmodes. * lib/depcomp: Ignore `-arch' argument for makedepend depmode. Report by Bruno Haible, analysis by Bruno Haible, Peter O'Gorman, and Eric Blake. 2009-04-21 Fabian Alenius (tiny change) Fix link to autotools tutorial. * doc/automake.texi (Autotools Introduction): Fix broken link. * THANKS: Update. 2009-04-19 Ralf Wildenhues testsuite: minor w32 fixes. * tests/depend5.test: Don't fail if the system or file system cannot handle weird characters, instead just try a few. * tests/parallel-tests3.test: Really wait until the serial test has finished, before letting the cleanup trap do its work. Report by Bruno Haible. Avoid nonportable `./FILE' instead of `FILE' in test. * tests/libtool3.test: Do not use `$(top_builddir)/sub/libname.la' in *_LDADD entry if `$(top_builddir)' is `.'. Fixes test failure with parallel NetBSD make. Detect make `include' style also with parallel non-GNU make. Parallel NetBSD make outputs `--- $target ---' messages, parallel HP-UX make outputs `Making target"$target"'. Just ignore all additional output for the include test. * m4/make.m4 (AM_MAKE_INCLUDE): Ignore additional output produced by `make' to relax `include' style detection. manual: add FAQ `Debugging Make Rules'. * doc/automake.texi (Debugging Make Rules): New FAQ section. (Top, FAQ): Adjust menus, and capitalization of the description of the `Hard-Coded Install Paths' node. (Multiple Outputs): Add comment to restore font-lock for vim. Suggestion by Karl Berry. Let XFile::lock warn and fail with parallel non-GNU make, too. * lib/Automake/XFile.pm (lock): Also match `-j' for parallel BSD make, and `-P' for parallel HP-UX make. Fix AM_PROG_VALAC version requirement detection. * m4/vala.m4 (AM_PROG_VALAC): Remove `Vala ' from valac --version string before comparing versions. * tests/vala2.test: Require version 0.7.0 for the test. Fixes failures of vala2.test and vala3.test with older valac. Correctly treat all assignments with bogus trailing comments. Before this patch, automake would silently fail to diagnose and to copy into the output those variable assignments which are preceded by a comment, and end in backslash newline comment. * automake.in (read_am_file): When determining whether an escaped newline followed by a comment is an error, correctly use the parser state, not the contents of a saved comment, which could still be carried over from a comment before an assignment. * NEWS: Update. * tests/commen11.test: New test. * tests/Makefile.am: Update. Report by Karl Berry. 2009-04-14 Karl Berry manual: improve markup: itemize list in `Extending'. * doc/automake.texi (Extending): Use `@item's for user override semantics. 2009-04-13 Ralf Wildenhues bin_PROGRAMS = $(EXTRA_PROGRAMS) should work. * automake.in (am_install_var): For `PROGRAMS' primary, strip `$(EXEEXT)' here already, so the name uniquifying works even when we look at names repeatedly, with inconsistent executable extension; through variable references, we might have added the extension ourselves earlier. (handle_programs): No need to strip `$(EXEEXT)' here any more. * tests/extra8.test: New test. * tests/Makefile.am: Update. * THANKS: Update. Report by Daniel Richard G. 2009-04-10 Jim Meyering Fix grammar in comments and documentation. * doc/automake.texi (API versioning): Fix grammar. * automake.in: Fix grammar in comment. * lib/Automake/ChannelDefs.pm: Likewise. * tests/ext2.test: Likewise. 2009-04-19 Ralf Wildenhues More minor fixups to vala support. * automake.in (lang_vala_finish_target): Fix typo in comment. * doc/automake.texi (Vala Support): Fix typo. Declare vala support as "initial". * NEWS: Likewise, declare vala support as "initial". 2009-04-05 Jürg Billeter Improve Vala support. * automake.in: Update to Vala 0.7.0 semantics, recover from removal of built sources, support silent-rules, drop _PKGNAME variables * doc/automake.texi, NEWS: Update. * lib/am/vala.am: Bump copyright years. * m4/vala.m4: Likewise. * tests/vala.test: Remove obsolete grep tests. * tests/vala1.test: Likewise. * tests/vala2.test: Test full build, distcheck, and distclean. * tests/vala3.test: Likewise, also test with subdir-objects. * tests/vala4.test: Bump copyright years. * tests/vala5.test: New test for per-target flags, expected to fail. * tests/Makefile.am: Update. * THANKS: Update. 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-14 Ralf Wildenhues testsuite: do not fail on systems without read permissions. * tests/instfail-info.test: Do not use the `non-root' requirement for testing whether files may be made unreadable; instead use `test -r' and skip the test if that still works. * tests/instfail-java.test: Likewise. * tests/instfail-libtool.test: Likewise. * tests/instfail.test: Likewise. * tests/instmany-mans.test: Likewise. * tests/instmany-python.test: Likewise. * tests/instmany.test: Likewise. * tests/parallel-tests9.test: Likewise. testsuite: parallel make fixes. This patch fixes a couple of testsuite bugs exposed with `MAKE=make\ -jN make check'. * tests/libtoo10.test: Do not run `clean' in same $MAKE invocation as `all check'. Fixes test failure with parallel NetBSD `make -jN'. * tests/nobase.test: Be sure to create a directory before creating files in it. Fixes test failure with MAKE=`make -jN' for NetBSD make. This issue is hidden with parallel GNU make due to its parallel breadth first update order. * tests/parallel-tests3.test: Skip if $MAKE contains `-j', GNU make will use the environment variable $MAKE for recursion and thus run in parallel even if `$MAKE -j1' was used on the command line in the test. Also, after running the test proper, wait long enough so that background jobs have finished and there are no open files left when the cleanup code runs. 2009-04-13 Ralf Wildenhues silent-rules reorganization, --enable-silent-rules switch. This patch introduces a configure-time option to set the default verbosity. Since configure now needs to know whether the `silent-rules' automake option was set, the latter can only be set within AM_INIT_AUTOMAKE, or with a new AM_SILENT_RULES macro but not any more through AUTOMAKE_OPTIONS or the automake command line option `--silent-rules'. * automake.in (define_verbose_var): Define the default verbose variable in terms of `$(AM_DEFAULT_VERBOSITY)'. (handle_configure): Do not pass `--silent-rules' to automake. (scan_autoconf_traces): Trace `AM_SILENT_RULES'. If seen, enable global `silent-rules' option. (usage): Do not document `--silent-rules'. (parse_arguments): Do not accept `--silent-rules'. * doc/automake.texi (Options): Overhaul. Document AM_SILENT_RULES, --enable-silent-rules, --disable-silent-rules, AM_DEFAULT_VERBOSITY. Show an example for user-added variables for less verbose output. (Invoking Automake): Remove documentation for `--silent-rules'. (Public Macros): Document `AM_SILENT_RULES'. * NEWS: Update. * lib/Automake/Options.pm (_process_option_list): Accept `silent-rules' only as option in configure.ac. * m4/init.m4 (AM_INIT_AUTOMAKE): If the `silent-rules' option was enabled, require `AM_SILENT_RULES'; move AM_BACKSLASH initialization to ... * m4/silent.m4 (AM_SILENT_RULES): ... this new file, new macro. Deal with `--enable-silent-rules' switch; define AM_DEFAULT_VERBOSITY. * m4/Makefile.am (dist_m4data_DATA): Add silent.m4. * tests/dollarvar.test: Remove tests for `--silent-rules', use `AM_SILENT_RULES'. * tests/flavor.test: Remove test for `--silent-rules'. * tests/silent.test: Use `AM_SILENT_RULES' instead of `AUTOMAKE_OPTIONS = silent-rules'; use `--enable-silent-rules'. * tests/silent2.test: Likewise. * tests/silent3.test: Likewise. * tests/silent4.test: Likewise. * tests/silent5.test: Likewise. * tests/silent6.test: Likewise. Test `AM_SILENT_RULES' as well as `AM_INIT_AUTOMAKE([silent-rules])' instead of `--silent-rules'. * tests/silent7.test: Use `AM_SILENT_RULES' instead of `AUTOMAKE_OPTIONS = silent-rules'; ensure the latter is rejected. Test combinations of --enable-silent-rules and --disable-silent-rules with `make V=0' and `make V=1'. Suggestion for configure-time switch by Bob Friesenhahn. manual: Add note about parallelism and tests ordering. * doc/automake.texi (Simple Tests using parallel-tests): Dependencies between test logs work for tests with known extensions only. Hint that tests should be prepared to be run in parallel. Fix maintainer-check failure. * tests/suffix13.test: Use Exit not exit. 2009-04-10 Ralf Wildenhues parallel-tests: more testsuite exposure. * tests/parallel-tests.test: Also test overriding TEST_LOGS and TESTS. parallel-tests: let VERBOSE=yes output appear before summary. * lib/am/check.am ($(TEST_SUITE_LOG)): In `VERBOSE=yes' mode, output contents of `$(TEST_SUITE_LOG)' before, rather than after the test suite summary. This ensures that the email address appears near the end of the output; also, the log file already starts with a result summary anyway. parallel-tests: `clean recheck' should not rerun all tests. * lib/am/check.am (recheck, recheck-html): Do not rerun all tests if `$(TEST_SUITE_LOG)' does not exist. * tests/parallel-tests2.test: Adjust recheck test. * tests/parallel-tests9.test: Adjust recheck-html test. * NEWS: Update. Suggestion by Akim Demaille. 2009-04-08 Ralf Wildenhues Eric Blake parallel-tests: Fix driver for nonempty executable extension. * automake.in (handle_tests): New substitution `%am__EXEEXT%', defined as 'FALSE' for non-generic rules, or if no programs are built at all. Otherwise, define it as configure conditional. * lib/am/check2.am [%am__EXEEXT%] (%EXT%$(EXEEXT).log): New conditional generic rule. * m4/init.m4: Hook an m4_provide of `_AM_COMPILER_EXEEXT' onto Autoconf's `_AC_COMPILER_EXEEXT' macro. (AM_INIT_AUTOMAKE): If `_AM_COMPILER_EXEEXT' has been provided at `AC_CONFIG_COMMANDS_PRE' time, then introduce a conditional `am__EXEEXT', defined to true iff `$EXEEXT' is nonempty. * tests/check5.test: Only match `_EXEEXT_[1-9]' here, to avoid false positives stemming from `@am__EXEEXT_TRUE@'. * NEWS: Update. 2009-04-08 Ralf Wildenhues Fix a couple of $(EXEEXT)-related testsuite failure. * tests/check8.test: Allow executable extensions in test suite output. * tests/check9.test: Add `$(EXEEXT)' manually to @substituted@ XFAIL_TESTS entries. * NEWS: Update for last patch. 2009-04-07 Florian Briegel (tiny change) Stepan Kasal Ralf Wildenhues Fix renamed objects with subdir-objects and other languages. * automake.in: Fixed bug when building with renamed objects and foreign languages. * tests/suffix13.test: New test. * tests/Makefile.am: Adjust. * THANKS: Update. Reports by Florian Briegel and Stepan Kasal. 2009-04-07 Ralf Wildenhues Do not remove texinfo outputs upon mostlyclean. * lib/am/texinfos.am: New substitutions %MOSTLYCLEAN%, %MAINTCLEAN%. (clean-aminfo): New target, remove %TEXICLEAN% if nonemtpy, declare phony. Hook this target to ... (clean-am): ... this and ... (?CYGNUS?clean-info): ... this. (maintainer-clean-aminfo): Remove %MAINTCLEAN% if nonempty, for later. (mostlyclean-aminfo): Remove %MOSTLYCLEAN%. * automake.in (handle_texinfo_helper): Return three arrays $MOSTLYCLEAN, $TEXICLEAN, $MAINTCLEAN, instead of one array. Only put LaTeX helper files in $MOSTLYCLEAN, the rest in $TEXICLEAN for now. (handle_texinfo): Accept these, chop off extra newline, and substitute them in `texinfos.am'. * NEWS: Update. * tests/txinfo33.test: New test. * tests/Makefile.am: Update. Report by Bruno Haible. 2009-04-06 Ralf Wildenhues testsuite: unset TESTS, TEST_LOGS, to avoid interference. * tests/defs.in: Unset TESTS, TEST_LOGS. testsuite: generate $(parallel_tests) just when needed. * tests/Makefile.am (check_SCRIPTS): No need to list $(parallel_tests) here, they can be generated as needed during the test run, following our recommendation in the manual. Remove superfluous line from recheck recheck-html. * lib/am/check.am (recheck recheck-html): Remove superfluous line, introduced bogusly in last commit. 2009-04-06 Akim Demaille Ralf Wildenhues parallel-tests: redo check-html, recheck, recheck-html. * lib/am/check.am (recheck, recheck-am): Remove. (recheck-TESTS): Rename to ... (recheck): ... this and rewrite, factored ... (recheck-html): ... with this rule. Pass TEST_LOGS rather than RECHECK_LOGS to `check' and `check-html', respectively, to avoid running outdated tests. Invoking the public macros ensures `check_SCRIPTS' etc. are created in time. Do not output errors for tests that were not run yet. If the testsuite has not run at all, run all tests. (check-html): Run `check' target, not `check-TESTS', to ensure `check_SCRIPTS' etc. are created in time. (.PHONY, .MAKE, AM_RECURSIVE_TARGETS): Adjust contents. * tests/parallel-tests2.test: Expose the check-html and recheck-html issues. * tests/parallel-tests9.test: Expose the recheck issues. Bugs in previous version pointed out by Akim, who already had them fixed in his original version. 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. * tests/txinfo16.test: RHEL 5.2 has makeinfo and texi2dvi in separate packages, so also list the latter as required, as the test generates DVI and/or PDF output (through distcheck). * tests/txinfo18.test: Likewise. * tests/txinfo21.test: Likewise. * tests/txinfo22.test: Likewise. * tests/txinfo3.test: Likewise. * tests/version7.test: Likewise. * THANKS: Update. Report by Alexander Martens. Fix bootstrap to remove read-only directories right. * bootstrap: Remove automake-$APIVERSION correctly. 2008-10-06 Ralf Wildenhues Improve test coverage of current TESTS semantics. * tests/check8.test: New test, for subdir tests and setting of $srcdir. * tests/check9.test: New test, check @substituted@ TESTS. * tests/Makefile.am: Update. 2008-10-05 Ralf Wildenhues * m4/minuso.m4 (AM_PROG_CC_C_O): Work around shell quoting issue with AIX sh; fixes depcomp6.test failure. * NEWS, THANKS: Update. Report by Rainer Tammer. Print captured output before failing. * tests/acloca14.test, tests/acloca17.test, tests/acloca18.test, tests/aclocal.test, tests/acsilent.test, tests/alpha.test, tests/check4.test, tests/color.test, tests/fn99.test, tests/fn99subdir.test, tests/help.test, tests/init.test, tests/lisp8.test, tests/missing3.test, tests/pr220.test, tests/python11.test, tests/python4.test, tests/python5.test, tests/unused.test, tests/version8.test: When Exit is called after a command that has stdout or stderr redirected to a file for later inspection, output the file before failing the test. Fix some comment typos. * automake.in: Fix some comment typos. * lib/Automake/Condition.pm: Likewise. * lib/Automake/DisjConditions.pm: Likewise. * lib/Automake/Variable.pm: Likewise. * lib/Automake/tests/DisjConditions.pl: Likewise. 2008-09-22 Ralf Wildenhues * tests/aclibobj.test: Fix race condition. 2008-09-21 Ralf Wildenhues Fix man page creation without installed files. * doc/Makefile.am (update_mans): Use wrappers in tests/ directory. ($(srcdir)/aclocal-$(APIVERSION).1): Use versioned wrapper as input program to help2man. ($(srcdir)/automake-$(APIVERSION).1): Likewise. Report by Eric Blake. 2008-09-20 Ralf Wildenhues Remove unneeded per-rule *INSTALL variables. * NEWS: Update. * lib/am/data.am (%DIR%%PRIMARY%_INSTALL): Remove. (install-%DIR%%PRIMARY%): Adjust. * lib/am/libs.am (%DIR%LIBRARIES_INSTALL): Remove. (install-%DIR%LIBRARIES): Adjust. * lib/am/ltlibs.am (%DIR%LTLIBRARIES_INSTALL): Remove. (install-%DIR%LTLIBRARIES): Adjust. * lib/am/progs.am (%DIR%PROGRAMS_INSTALL): Remove. (install-%DIR%PROGRAMS): Adjust. * lib/am/python.am (%DIR%PYTHON_INSTALL): Remove. (install-%DIR%PYTHON): Adjust. * lib/am/scripts.am (%DIR%SCRIPT_INSTALL): Remove. (install-%DIR%SCRIPTS): Adjust. Compactify program rules using ternary operators. * lib/am/progs.am (install-%DIR%PROGRAMS): Uglify^WCompactify using ternary operators `%KEY?TRUE:FALSE%'. (uninstall-%DIR%PROGRAMS): Likewise. New doc section about command line length limits. * doc/automake.texi (Length limitations): New node. (Alternative): `nobase_' is not always equivalent to several base variables. (Install): Mention multi-file install. * NEWS: Expand on the issue, list some more user-visible consequences. Install nobase_lib_LTLIBRARIES before bin_PROGRAMS. * automake.in (generate_makefile): If nobase_lib_LTLIBRARIES are used, add an ugly hack to install them before bin_PROGRAMS, just like done with lib_LTLIBRARIES. * tests/ltorder.test: Add program, to expose this. Do not reorder nobase ltlib installation. This patch changes back the order of installation of nobase LTLIBRARIES to that in which files are listed in the variables. It does not fix the issue of strict dependency ordering, as implied by *_LIBADD, but as before allows to steer the order by listing the libraries in nobase_*_LTLIBRARIES appropriately. As an advantage over the state of 1.10, multiple consecutive nobase libraries to be installed in the same directory are passed to libtool in one invocation. * lib/am/ltlib.am (install-%DIR%LTLIBRARIES) [!%?BASE%]: Do not reorder libraries upon installation. Remove spurious empty line. * tests/ltorder.test: New test. * tests/Makefile.am: Update. Fix -rpath arguments for nobase_*_LTLIBRARIES. * automake.in (handle_ltlibraries): New hash %instsubdirs to track the dirname of nobase ltlibraries, and tack it onto the end of the -rpath argument. Also, fix the warning about ltlibs installed in multiple locations to fit a bit better. * tests/pr300-ltlib.test: Expose this bug here. * tests/ltinstloc.test: New test. * tests/Makefile.am: Update. * NEWS: Update. Man pages for automake and aclocal. * configure.ac (HELP2MAN): New substitution. * doc/Makefile.am (dist_man1_MANS, MAINTAINERCLEANFILES) (update_mans): New macros. ($(srcdir)/aclocal-$(APIVERSION).1) ($(srcdir)/automake-$(APIVERSION).1): New rules, generate man pages from the command line help with help2man. ($(srcdir)/aclocal.1, $(srcdir)/automake.1): New rules, for `.so' man page links to the versioned pages. * NEWS: Update. 2008-09-13 Ralf Wildenhues Faster install for libtool outputs. * lib/am/ltlib.am (install-%DIR%LTLIBRARIES): Invoke `libtool --mode=install' with multiple libraries at once. (%DIR%LTLIBRARIES_INSTALL): No need to use install_sh any more. * lib/am/progs.am (install-%DIR%PROGRAMS): Likewise, remove much of the libtool special-casing by invoking it for multiple programs at once. 2008-09-07 Ralf Wildenhues Fast install and uninstall for SCRIPTS. * lib/am/scripts.am [%?INSTALL%]: Include inst-vars.am independent of `%?BASE%'. (install-%DIR%SCRIPTS): Install multiple scripts at once, using awk and a number of sed scripts. (uninstall-%DIR%SCRIPTS): Compute the installed names, and remove them, all at once. (%DIR%SCRIPT_INSTALL) [!BASE]: No need to use install-sh any more. Multi-file install for PROGRAMS. * lib/am/progs.am (install-%DIR%PROGRAMS): Allow to install several programs with one install invocation, when not using libtool; employs some trickery to cater for nobase_, $(EXEEXT), create needed directories, libtool, while only forking a constant number of times in the fast path; uses awk and sed also in the default path. (%DIR%PROGRAMS_INSTALL) [!BASE]: No need to use install-sh any more. Enhance cleaning of programs in libtool mode. * lib/am/progs.am (clean-%DIR%PROGRAMS) [?LIBTOOL?]: Fork less often, avoid removing programs twice if $(EXEEXT) is empty. * tests/nobase-libtool.test: Also test PROGRAMS, in order to exercise the code path. * THANKS: Update. Report by Toralf Förster. 2008-09-07 Ralf Wildenhues Jim Meyering Reliable multi-file install for man pages. * lib/am/mans.am: Include inst-vars.am. (install-man%SECTION%): Gather lists of man pages to install, and install up to 40 of those that do not have to be renamed at once. Fail if installation of any file fails. (uninstall-man%SECTION%): Rewrite to use fewer sed invocations. * doc/automake.texi (Man pages): Hint the user to the fast path. Indentation fix. * tests/instmany-mans.test: New test. * tests/Makefile.am: Update. 2008-09-07 Ralf Wildenhues Faster `make uninstall'; fast install for JAVA. * lib/am/inst-vars.am (am__nobase_strip_setup) (am__nobase_strip): New macros. (am__nobase_list): Factorize. * lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use them, for a constant number of forks per uninstall. * lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise. * lib/am/lisp.am (uninstall-%DIR%LISP): Likewise. * lib/am/progs.am (uninstall-%DIR%PROGRAMS): Fast uninstall. * lib/am/python.am (uninstall-%DIR%PYTHON): Fast uninstall. Echo all `rm' commands that are are executed. * lib/am/java.am (install-%DIR%JAVA, uninstall-%DIR%JAVA): Fast install and uninstall. AIX ranlib dislikes spaces in the argument. * lib/am/libs.am (install-%DIR%LIBRARIES): Fix instsh.test failure on AIX due to ranlib and whitespace in the directory. * THANKS: Update. Report by John F Trudeau. Fail upon install or ranlib failure, part two. * lib/am/java.am (install-%DIR%JAVA): Fail upon install failure. * lib/am/lisp.am (install-%DIR%LISP): Likewise. * lib/am/ltlib.am (install-%DIR%LTLIBRARIES): Likewise. * lib/am/libs.am (install-%DIR%LIBRARIES): Likewise, for `install' as well as `ranlib'. * lib/am/progs.am (install-%DIR%PROGRAMS): If `install' fails, return its exit failure, not 1. * tests/instfail.test: New test, for PROGRAMS (without libtool), LIBRARIES, including nobase variants. * tests/instfail-info.test: Likewise, for TEXINFOS. * tests/instfail-java.test: Likewise, for JAVA. * tests/instfail-libtool.test: Likewise, for PROGRAMS (with libtool) and LTLIBRARIES. * tests/Makefile.am: Adjust. Exit upon `install' failure, part one. * lib/am/data.am (install-%DIR%%PRIMARY%): Exit if any install command fails. * lib/am/python.am (install-%DIR%PYTHON): Likewise. * lib/am/scripts.am (install-%DIR%SCRIPTS): Likewise. * lib/am/texinfos.am (install-dvi-am, install-html-am) (install-info-am:, install-pdf-am): Likewise. * tests/instmany.test: New test, for SCRIPTS, DATA, and HEADERS. * tests/instmany-python.test: New test, for PYTHON. * tests/Makefile.am: Adjust. 2008-09-06 Ralf Wildenhues Fix multi-file installation for files in srcdir. For files that can live in the build tree or the source tree, we have to expect that prepending `$(srcdir)/' to each name will let the install command line exceed length limitations. Thus use a new macro, $(am__base_list), to install in chunks of 40 files, similar to what we do for nobase_* files. There, lower the limit to 40, too. * lib/am/inst-vars.am (am__install_max): Lower to 40. (am__base_list): New macro. * lib/am/data.am (install-%DIR%%PRIMARY%) [%?BASE%]: Use it. * lib/am/texinfos.am (install-dvi-am, install-html-am) (install-info-am, install-pdf-am, install-ps-am): Likewise. 2008-09-06 Ralf Wildenhues Use `Exit' instead of `exit' in test suite. Cater to Bourne shells like Solaris sh that do not pass the `exit' argument as status to the cleanup trap. * Makefile.am (maintainer-check): Check that here-documents use only `END' or `EOF' as delimiter in the test suite. Check that, outside of here-documents, the tests do not use `exit' with an argument, but use `Exit' instead. * tests/defs.in (Exit): New function. Use it throughout, starting with the introduction of the exit trap. * tests/aclibobj.test, tests/acloca10.test, tests/acloca11.test, tests/acloca12.test, tests/acloca13.test, tests/acloca14.test, tests/acloca15.test, tests/acloca16.test, tests/acloca17.test, tests/acloca18.test, tests/acloca19.test, tests/acloca20.test, tests/acloca21.test, tests/acloca22.test, tests/aclocal.test, tests/aclocal3.test, tests/aclocal4.test, tests/aclocal5.test, tests/aclocal6.test, tests/aclocal7.test, tests/aclocal8.test, tests/aclocal9.test, tests/acoutbs.test, tests/acoutbs2.test, tests/acoutnoq.test, tests/acoutpt.test, tests/acoutpt2.test, tests/acoutqnl.test, tests/acsilent.test, tests/acsubst.test, tests/acsubst2.test, tests/all.test, tests/alloca.test, tests/alloca2.test, tests/alpha.test, tests/alpha2.test, tests/amassign.test, tests/ammissing.test, tests/amopt.test, tests/amsubst.test, tests/ansi.test, tests/ansi10.test, tests/ansi2.test, tests/ansi3.test, tests/ansi3b.test, tests/ansi4.test, tests/ansi5.test, tests/ansi6.test, tests/ansi7.test, tests/ansi8.test, tests/ansi9.test (main), tests/ar.test, tests/ar2.test, tests/asm.test, tests/asm2.test, tests/asm3.test, tests/automake.test, tests/auxdir.test, tests/auxdir2.test, tests/auxdir3.test, tests/auxdir4.test, tests/backsl.test, tests/backsl2.test, tests/backsl3.test, tests/backsl4.test, tests/badline.test, tests/badopt.test, tests/badprog.test, tests/block.test, tests/bsource.test, tests/canon-name.test, tests/canon.test, tests/canon2.test, tests/canon3.test, tests/canon4.test, tests/canon5.test, tests/ccnoco.test, tests/ccnoco2.test, tests/check.test, tests/check2.test, tests/check3.test, tests/check4.test, tests/check5.test, tests/check6.test, tests/check7.test, tests/checkall.test, tests/clean.test, tests/clean2.test, tests/colneq.test, tests/colneq2.test, tests/colon.test, tests/colon2.test, tests/colon3.test, tests/colon4.test, tests/colon5.test, tests/colon6.test, tests/colon7.test, tests/color.test (test_no_color), tests/commen10.test, tests/comment.test, tests/comment2.test, tests/comment3.test, tests/comment4.test, tests/comment5.test, tests/comment6.test, tests/comment7.test, tests/comment8.test, tests/comment9.test, tests/compile.test, tests/compile_f90_c_cxx.test, tests/compile_f_c_cxx.test, tests/cond.test, tests/cond10.test, tests/cond11.test, tests/cond13.test, tests/cond14.test, tests/cond15.test, tests/cond16.test, tests/cond17.test, tests/cond18.test, tests/cond19.test, tests/cond2.test, tests/cond20.test, tests/cond21.test, tests/cond22.test, tests/cond27.test, tests/cond3.test, tests/cond37.test, tests/cond39.test, tests/cond4.test, tests/cond40.test, tests/cond41.test, tests/cond5.test, tests/cond6.test, tests/cond7.test (AC_INIT), tests/cond8.test, tests/cond9.test, tests/condd.test, tests/condhook.test, tests/condinc.test, tests/condinc2.test, tests/condlib.test, tests/condman.test, tests/condman2.test, tests/conf2.test, tests/confdeps.test, tests/conff.test, tests/conff2.test, tests/confh.test, tests/confh4.test, tests/confh5.test, tests/config.test, tests/confincl.test, tests/conflnk.test, tests/conflnk2.test, tests/conflnk3.test, tests/conflnk4.test, tests/confsub.test, tests/confvar.test, tests/confvar2.test, tests/copy.test, tests/ctarget1.test, tests/cxx.test, tests/cxx2.test, tests/cxxansi.test, tests/cxxcpp.test, tests/cxxlibobj.test, tests/cxxlink.test, tests/cxxnoc.test, tests/cxxo.test, tests/cygwin32.test, tests/dash.test, tests/defs.in (else), tests/defun.test, tests/defun2.test, tests/dejagnu.test, tests/dejagnu2.test, tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test, tests/dejagnu6.test, tests/dejagnu7.test, tests/depacl2.test, tests/depcomp.test, tests/depcomp2.test, tests/depcomp3.test, tests/depcomp4.test, tests/depcomp5.test, tests/depcomp6.test, tests/depcomp7.test, tests/depdist.test, tests/depend.test, tests/depend2.test, tests/depend3.test, tests/depend4.test, tests/destdir.test, tests/dirforbid.test, tests/dirlist.test, tests/dirlist2.test, tests/discover.test, tests/distcom2.test, tests/distcom3.test, tests/distcom4.test, tests/distcom5.test, tests/distcom6.test, tests/distcom7.test, tests/distdir.test, tests/distname.test, tests/dollar.test, tests/double.test, tests/dup2.test, tests/else.test, tests/empty.test, tests/empty2.test, tests/empty3.test, tests/empty4.test, tests/exdir.test, tests/exdir2.test, tests/exdir3.test, tests/exeext.test, tests/exeext2.test, tests/exeext3.test, tests/exeext4.test, tests/exsource.test, tests/ext.test, tests/extra.test, tests/extra2.test, tests/extra3.test, tests/extra4.test, tests/extra5.test, tests/extra6.test, tests/extra7.test, tests/f90only.test, tests/flibs.test, tests/fn99.test, tests/fn99subdir.test, tests/fnoc.test, tests/fo.test, tests/fonly.test, tests/fort1.test, tests/fort2.test, tests/fort4.test, tests/fort5.test, tests/fortdep.test, tests/fpinst2.test, tests/fpinstall.test, tests/gcj.test, tests/gcj2.test, tests/gcj3.test, tests/gcj4.test, tests/gcj5.test, tests/getopt.test, tests/gettext.test, tests/gettext2.test, tests/gettext3.test, tests/gnits.test, tests/gnits2.test (main), tests/gnits3.test, tests/gnumake.test, tests/gnuwarn.test, tests/gnuwarn2.test, tests/header.test, tests/help.test, tests/hosts.test, tests/implicit.test, tests/include.test, tests/include2.test, tests/info.test, tests/init.test, tests/insh2.test, tests/install2.test, tests/installdir.test, tests/instdat.test, tests/instdat2.test, tests/instexec.test, tests/insthook.test, tests/instman.test, tests/instman2.test, tests/instsh.test, tests/instsh2.test, tests/instsh3.test, tests/instspc.test, tests/interp.test, tests/interp2.test, tests/java.test, tests/java2.test, tests/java3.test, tests/javaprim.test, tests/javasubst.test, tests/ldadd.test, tests/ldflags.test, tests/lex.test, tests/lex2.test, tests/lex3.test, tests/lex4.test, tests/lex5.test (main), tests/libexec.test, tests/libobj10.test, tests/libobj11.test, tests/libobj12.test, tests/libobj13.test, tests/libobj2.test, tests/libobj3.test, tests/libobj4.test, tests/libobj5.test, tests/libobj7.test, tests/libobj8.test, tests/library.test, tests/library2.test, tests/library3.test, tests/libtoo10.test, tests/libtool.test, tests/libtool2.test, tests/libtool3.test (main), tests/libtool4.test, tests/libtool5.test, tests/libtool6.test, tests/libtool7.test, tests/libtool8.test, tests/libtool9.test (main), tests/license.test, tests/link_c_cxx.test, tests/link_dist.test, tests/link_f90_only.test, tests/link_f_only.test, tests/link_fc.test, tests/link_fccxx.test, tests/link_fcxx.test, tests/lisp2.test, tests/lisp3.test, tests/lisp4.test, tests/lisp5.test, tests/lisp6.test, tests/lisp7.test, tests/lisp8.test, tests/listval.test, tests/location.test, tests/longlin2.test, tests/longline.test, tests/ltcond.test, tests/ltcond2.test, tests/ltconv.test, tests/ltdeps.test, tests/ltlibobjs.test, tests/ltlibsrc.test, tests/lzma.test, tests/maintclean.test, tests/make.test, tests/makej.test, tests/makevars.test, tests/man.test, tests/man2.test, tests/man3.test, tests/mclean.test, tests/mdate.test, tests/mdate2.test, tests/mdate3.test, tests/mdate4.test, tests/mdate5.test, tests/missing.test, tests/missing2.test, tests/missing3.test, tests/missing4.test, tests/missing5.test, tests/missing6.test, tests/mkinst2.test, tests/mkinst3.test, tests/mkinstall.test, tests/mmode.test, tests/mmodely.test, tests/multlib.test, tests/nobase-libtool.test, tests/nobase-python.test, tests/nobase.test, tests/nodef.test, tests/nodef2.test, tests/nodep.test, tests/nodep2.test, tests/nodepcomp.test, tests/nodist.test, tests/nodist2.test, tests/nodist3.test, tests/nogzip.test, tests/nogzip2.test, tests/noinst.test, tests/noinstdir.test, tests/nolink.test, tests/nostdinc.test, tests/notrans.test, tests/number.test, tests/objc.test, tests/objc2.test, tests/obsolete.test, tests/order.test, tests/outdir.test, tests/output-order.test, tests/output.test, tests/output10.test, tests/output11.test, tests/output12.test, tests/output13.test, tests/output2.test, tests/output3.test, tests/output4.test, tests/output5.test, tests/output6.test, tests/output7.test, tests/output8.test, tests/output9.test, tests/overrid.test, tests/parse.test, tests/pluseq.test, tests/pluseq10.test, tests/pluseq2.test, tests/pluseq3.test, tests/pluseq4.test, tests/pluseq5.test, tests/pluseq6.test, tests/pluseq7.test, tests/pluseq8.test, tests/pluseq9.test, tests/postproc.test, tests/ppf77.test, tests/pr2.test, tests/pr204.test, tests/pr211.test, tests/pr220.test, tests/pr224.test, tests/pr229.test, tests/pr243.test, tests/pr266.test, tests/pr279-2.test, tests/pr279.test, tests/pr287.test, tests/pr300-lib.test, tests/pr300-ltlib.test, tests/pr300-prog.test, tests/pr307.test, tests/pr401.test, tests/pr401b.test, tests/pr401c.test, tests/pr72.test, tests/pr87.test, tests/pr9.test, tests/prefix.test, tests/primary.test, tests/primary2.test, tests/primary3.test, tests/proginst.test, tests/python.test, tests/python10.test, tests/python11.test, tests/python12.test, tests/python2.test, tests/python3.test, tests/python4.test, tests/python5.test, tests/python6.test, tests/python7.test, tests/python8.test, tests/python9.test, tests/recurs.test, tests/recurs2.test, tests/regex.test, tests/remake.test, tests/remake2.test, tests/remake3.test, tests/remake4.test, tests/remake5.test, tests/remake6.test, tests/remake7.test, tests/req.test, tests/reqd.test, tests/reqd2.test, tests/rulepat.test, tests/scripts.test, tests/seenc.test, tests/sinclude.test, tests/space.test, tests/specflg.test, tests/specflg2.test, tests/specflg3.test, tests/specflg6.test, tests/specflg7.test, tests/specflg8.test, tests/specflg9.test, tests/spell.test, tests/spell2.test, tests/spell3.test, tests/spelling.test, tests/spy.test, tests/srcsub.test, tests/srcsub2.test, tests/stamph2.test, tests/stdinc.test, tests/stdlib.test, tests/stdlib2.test, tests/strip.test, tests/subcond.test, tests/subcond2.test, tests/subcond3.test, tests/subdir.test, tests/subdir2.test, tests/subdir3.test, tests/subdir4.test, tests/subdir5.test, tests/subdir6.test, tests/subdir7.test, tests/subdir8.test, tests/subdir9.test, tests/subdirbuiltsources.test, tests/subobj.test, tests/subobj10.test, tests/subobj2.test, tests/subobj3.test, tests/subobj4.test, tests/subobj5.test, tests/subobj6.test, tests/subobj7.test, tests/subobj8.test, tests/subobj9.test, tests/subobjname.test, tests/subpkg.test, tests/subpkg2.test, tests/subpkg3.test, tests/subst.test, tests/subst2.test, tests/subst3.test, tests/substre2.test, tests/substref.test, tests/substtarg.test, tests/suffix.test, tests/suffix10.test, tests/suffix11.test, tests/suffix12.test, tests/suffix2.test, tests/suffix3.test, tests/suffix4.test, tests/suffix5.test, tests/suffix6.test, tests/suffix7.test, tests/suffix8.test, tests/suffix9.test, tests/symlink.test, tests/symlink2.test, tests/symlink3.test, tests/syntax.test, tests/tags.test, tests/tagsub.test, tests/tar.test, tests/tar2.test, tests/tar3.test, tests/target-cflags.test, tests/targetclash.test, tests/transform.test, tests/txinfo.test, tests/txinfo10.test, tests/txinfo13.test, tests/txinfo16.test, tests/txinfo17.test, tests/txinfo18.test, tests/txinfo19.test, tests/txinfo2.test, tests/txinfo20.test, tests/txinfo21.test, tests/txinfo22.test, tests/txinfo23.test, tests/txinfo24.test, tests/txinfo25.test, tests/txinfo26.test, tests/txinfo27.test, tests/txinfo28.test, tests/txinfo29.test, tests/txinfo3.test, tests/txinfo30.test, tests/txinfo31.test, tests/txinfo4.test, tests/txinfo5.test, tests/txinfo6.test, tests/txinfo7.test, tests/txinfo8.test, tests/txinfo9.test, tests/unused.test, tests/upc.test, tests/upc2.test, tests/upc3.test, tests/vars.test, tests/vars3.test, tests/vartar.test, tests/version.test, tests/version2.test, tests/version3.test, tests/version4.test, tests/version6.test, tests/version7.test, tests/version8.test, tests/vpath.test, tests/vtexi.test, tests/vtexi2.test, tests/warnopts.test, tests/werror.test, tests/werror2.test, tests/whoami.test, tests/xsource.test, tests/yacc.test, tests/yacc2.test, tests/yacc3.test, tests/yacc4.test, tests/yacc5.test, tests/yacc6.test, tests/yacc7.test, tests/yacc8.test, tests/yaccpp.test, tests/yaccvpath.test: Use `Exit $arg' instead of `exit $arg' throughout, except inside created files. 2008-09-04 Ralf Wildenhues Avoid Heisenbug with verbose testing on HP-UX. * tests/output-order.test: Remove spurious redirection line from output for comparison. For all possibly-relative subdirs, use $(am__cd). Up to now, $(am__cd) was only used within backquotes, to avoid extraneous output. This patch also uses it for every `cd' to a relative subdir, to prevent CDPATH from entering an unwanted directory. * Makefile.am (maintainer-check): Fix current check for $(am__cd) within backquotes a bit. Add new check for `cd' to a relative subdir. * automake.in (handle_tags, handle_configure): Adjust rules. * lib/am/ansi2knr.am: Likewise. * lib/am/configure.am: Likewise. * lib/am/distdir.am: Likewise. * lib/am/remake-hdr.am: Likewise. * lib/am/subdirs.am: Likewise. * lib/am/tags.am: Likewise. * lib/am/texibuild.am: Likewise. Fix nobase-python.test for BSD make. * tests/nobase-python.test: Listing a dependency to be found via VPATH search explicitly, without the path, as a target, will turn off VPATH search for FreeBSD make. So move the creation of the files outside of the Makefile. 2008-09-01 Ralf Wildenhues Implement AM_MAINTAINER_MODE([DEFAULT-MODE]). * m4/maintainer.m4 (AM_MAINTAINER_MODE): Allow for an optional first argument of `enable' or `disable', setting the default. * doc/automake.texi (Optional, maintainer-mode): Document. * tests/mmode.test: New test. * tests/Makefile.am: Adjust. * NEWS: Update. Suggestion by Vincent Lefevre. 2008-08-31 Ralf Wildenhues Copyright year updates. * lib/am/header-vars.am: Update copyright years. * lib/am/remake-hdr.am: Likewise. * lib/am/tags.am: Likewise. 2008-08-28 Ralf Wildenhues * THANKS: Use Cyrillic name instead of ASCII transcription. 2008-08-22 Ralf Wildenhues Fix rebuilding of removed subdir/Makefile.in files. * lib/am/configure.am (%MAKEFILE-IN%) [?!TOPDIR_P?]: If subdir/Makefile.in was removed, am--refresh would not update it. Fix up for it by running the per-directory rebuild rule. * tests/remake6.test, tests/remake7.test: New tests. * tests/Makefile.am: Adjust. * NEWS, THANKS: Update. Report and initial patch by Ilya N. Golubev. 2008-08-19 Ralf Wildenhues * tests/notrans.test: Use multiple man files of each type. Fix maintainer-check failures. * doc/automake.texi (Conditionals): Drop TAB. * tests/missing6.test: Use 'rm -f'. 2008-08-19 Reuben Thomas (tiny patch) * doc/automake.texi (Flag Variables Ordering, Per-Object Flags): Fix grammaros. 2008-08-02 Karl Berry * lib/gnupload: Provide also a simple example. 2008-06-25 Thien-Thi Nguyen Small doc fix. * doc/automake.texi (Public Macros): Close open paren. 2008-06-18 Ralf Wildenhues Introduce macro $(am__mv) to facilitate 'libtool --dry-run'. * lib/am/depend.am (am__mv): New macro, set to 'mv -f'. * lib/am/depend2.am: Use throughout to move the temporary depfile *.Tpo to its final destination *.Po. 2008-06-18 Rafael Espindola * lib/config-ml.in: don't handle --enable-shared and --enable-static. 2008-06-18 Ralf Wildenhues * lib/am/inst-vars.am (am__install_max): New variable. (am__nobase_list): Use it. Fix conditional rules competing with config.status rules. * automake.in (handle_configure): Teach targets about the conditional config.status rule. * tests/cond39.test: Adjust test to expose this. For AC_CONFIG_LINKS(X,X), do not clean X in a non-VPATH build. * automake.in (rewrite_inputs_into_dependencies): Do distribute inputs where input and output name are equal. This relies on the assumption that it only happens with AC_CONFIG_LINKS. (handle_configure) : New variable, for links where source and dest are equal. * lib/am/clean.am (distclean-generic): Remove, if build tree not equal source tree. * tests/conflnk4.test: New test. * tests/Makefile.am: Adjust. * NEWS: Update. 2008-06-06 Ralf Wildenhues * doc/automake.texi (Extending): Fix ambivalent wording. Report by Ben Pfaff. 2008-06-04 Karl Berry * doc/automake.texi (Install, Hard-Coded Install Paths): Fix punctuation and markup. (Extending): Improve wording and clarify order semantics of *-local and *-hook targets. 2008-06-01 Ralf Wildenhues * doc/automake.texi (Extending): Fix grammar. Report by Karl Berry. 2008-05-13 Stepan Kasal Fix typos. * doc/automake.texi (Timeline): Reported by Reuben Thomas. * lib/am/remake-hdr.am: A few typos in comments. 2008-04-10 Eric Blake Prefer a released version of autoconf. * NEWS: Bump requirement to autoconf 2.62. * m4/init.m4 (AM_INIT_AUTOMAKE): Likewise. * configure.ac: Likewise. (AC_PREREQ): Remove check, done by AM_INIT_AUTOMAKE instead. AC_AUTOCONF_VERSION can inadvertently expand to a macro name. * m4/amversion.in (AM_SET_CURRENT_AUTOMAKE_VERSION): Use proper m4 quoting. * aclocal.in (write_aclocal): Likewise. * tests/missing6.test: New test. * tests/Makefile.am (TESTS): Run it. * tests/missing4.test: Adjust. 2008-04-02 Eric Blake Make gnupload friendlier for VPATH usage. * lib/gnupload: Allow uploads from separate directory. 2008-03-26 Ralf Wildenhues Implement conditional AC_CONFIG_FILES: AM_COND_IF. * automake.in (%ac_config_files_condition): New. (scan_autoconf_config_files): Record condition if any. (scan_autoconf_traces): Trace _AM_COND_IF, _AM_COND_ELSE, _AM_COND_ENDIF, updating @cond_stack as appropriate. (handle_configure): Prefix config.status rule with condition. Check that m4 quotation is done consistently. * m4/cond.m4 (AM_CONDITION): Define `_AM_COND_VALUE_name' with `name' being the name of the condition, to its shell condition. * m4/cond-if.m4: New file. (_AM_COND_IF, _AM_COND_ELSE, _AM_COND_ENDIF): New trace helpers. (AM_COND_IF): New macro, implements conditionals. * m4/Makefile.am: Adjust. * doc/automake.texi (Requirements, Optional, Conditionals): Document AM_COND_IF. * NEWS: Update. * tests/cond39.test, tests/cond40.test, tests/cond41.test, tests/cond42.test, tests/cond43.test: New tests. * tests/Makefile.am: Adjust. 2008-03-24 Ralf Wildenhues * doc/automake.texi (@ovar): New macro, from autoconf.texi. (Python): Use it. Suggestion by Eric Blake. 2008-03-20 Ralf Wildenhues * lib/texinfo.tex: Sync from upstream. 2008-03-17 Ralf Wildenhues * doc/automake.texi (Requirements, Linking, Extending): Fix underfull and overfull lines, fix wording a bit. * lib/config.guess, lib/config.sub, lib/texinfo.tex: Sync from upstream. * Makefile.am (WGET_SV_GIT_CF): New. (fetch): Pull config.guess and config.sub from git repo now. * lib/Autom4te/FileUtils.pm (handle_exec_errors): New argument $hint, show if the executing program does not exist. (xsystem_hint): New function, like xsystem but allows to pass a hint. 2008-03-11 Peter Breitenlohner Implement the `notrans_' prefix for untransformed manpages. * automake.in (handle_man_pages), lib/am/mans.am: Implement notrans_ prefix for MANS primary and rework dependencies for install-man%SECTION%; use only vars defined in Makefile.am. * doc/automake.texi (Renaming, Uniform, Man pages): Document notrans_ prefix. * NEWS: Update. * tests/notrans.test: New test. * tests/Makefile.am: Update. * automake.in (handle_man_pages): Reindent, for next patch. 2008-03-08 Ralf Wildenhues Use `install' with multiple files at once for some primaries. With nobase targets, at most 50 files are installed at once, to avoid quadratic string concatenation and line length limits. This isn't yet done with base targets. One hope is that there, the typical file name length is lower. If this turns out to be a problem, it should be revisited. * lib/am/inst-vars.am (am__nobase_list): New helper macro for installation of multiple nobase files at once: sorts and lists files keyed by their target directory. * lib/am/data.am (%DIR%%PRIMARY%_INSTALL): No need to set it to $(install_sh_DATA) any more, not even for nobase targets. (install-%DIR%%PRIMARY%): Split base and nobase cases. Rewrite to pass lists of files which all go in the same directory to `install'. In the nobase case, make use of $(am__nobase_list) and $(MKDIR_P) each directory before populating it. Take care of files in source and build trees, and avoid creating directories where no files are to be installed. * lib/am/libs.am (%DIR%LIBRARIES_INSTALL): Likewise. (install-%DIR%LIBRARIES): Likewise. * lib/am/python.am (%DIR%PYTHON_INSTALL): Likewise. (install-%DIR%PYTHON): Likewise. Also take care to keep note of a list for byte compilation after installation. * lib/am/texinfos.am (install-dvi-am, install-html-am) (install-info-am, install-pdf-am, install-ps-am): Use file lists to install multiple files at once. * NEWS: Update. Suggested by Akim Demaille. 2008-03-08 Ralf Wildenhues Require unreleased Autoconf for fixed AC_PROG_INSTALL. * m4/init.m4 (AM_INIT_AUTOMAKE): Bump AC_PREREQ to 2.61-341, regenerate files. * configure.ac: Also require Autoconf 2.61-341, to catch failure early and provide a sensible error message. Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT. * tests/ansi4.test: Drop AC_OBJEXT and AC_EXEEXT. * tests/ansi6.test: Likewise. * tests/ansi7.test: Likewise. * tests/condlib.test: Likewise. * tests/cygwin32.test: Likewise. * tests/exeext2.test: Likewise. * tests/libobj11.test: Likewise. * tests/library.test: Likewise. * tests/txinfo5.test: Likewise. 2008-03-03 Ralf Wildenhues Skip instsh3.test if `touch -t' does not work. * tests/instsh3.test: Test for `touch -t', fails with Solaris /usr/ucb/touch. * THANKS: Update. Report by Younes Younes. 2008-02-27 Reuben Thomas * doc/automake.texi (wildcards): Improve "Why doesn't Automake support wildcards" node's English and sense. 2008-02-23 Ralf Wildenhues * lib/am/check.am (check-TESTS): In the case patterns for XFAILed tests, add literal bracket expression for matching whitespace, as NetBSD 4.99.54 ksh does not understand a bracket expression resulting from variable expansion. * README: Explain how to run the Automake test suite, including setting MAKE to test gmake. Report by Patrick Welche. 2008-02-19 Ralf Wildenhues PR automake/498 * m4/options.m4 (_AM_SET_OPTIONS): Use m4_foreach_w instead of obsolete AC_FOREACH. Report by NightStrike and gurganbl@rose-hulman.edu. 2008-02-17 Colin Watson (tiny change) * lib/am/tags.am (ID): Fix typo in workaround for old awk. 2008-02-05 Ralf Wildenhues * doc/.gitignore: Ignore files generated by `make ps pdf html'. 2008-02-05 Reuben Thomas * doc/automake.texi (CVS): configure.ac will appear newer, not older, than configure. Use `lexical' instead of `alphabetical'. 2008-01-30 Ralf Wildenhues * tests/man3.test: Avoid `make VAR=value'. * tests/subst3.test: New test. * tests/Makefile.am: Update. * tests/instsh2.test: Split off testing of `install-sh -C' ... * tests/instsh3.test: ... to this new test, requiring non-root. * tests/Makefile.am: Adjust. * THANKS: Update. Report by Theodoros V. Kalamatianos. 2008-01-23 Ralf Wildenhues * tests/nobase.test: Extend test to generated files. * tests/nobase-python.test: New test, nobase for python files. * tests/Makefile.am: Update. * tests/nobase.test: Split off libtool part of nobase.test for increased test exposure, to ... * tests/nobase-libtool.test: ... this new test. * tests/Makefile.am: Update. 2008-01-23 Eric Blake Fix color.test when using BSD grep. * tests/color.test: Ensure that grep can handle non-printing characters. 2008-01-23 Ralf Wildenhues * tests/lisp3.test: Fix typo. 2008-01-22 Ralf Wildenhues * lib/am/mans.am (install-man%SECTION%): Prefer generated manpages over distributed ones. Report and patch by Peter Breitenlohner. * tests/man3.test: New test. * tests/Makefile.am: Update. 2008-01-21 Ralf Wildenhues * tests/tar.test: Skip if no appropriate tar was found. 2008-01-19 NightStrike * doc/automake.texi (Dependency Tracking): Fix typo. 2008-01-19 Ralf Wildenhues * lib/config-ml.in, lib/config.guess, lib/config.sub, lib/symlink-tree: Sync from upstream. * Makefile.am (WGET_SV_CVS): Renamed from WGETSGO. (WGET_SV_GIT_AC, WGET_SV_GIT_GL, WGET_GCC): New. (fetch): Update to match current upstream locations. 2008-01-14 Ralf Wildenhues * doc/automake.texi (DESTDIR, Built sources example): Fix wording. * THANKS: Update. Reports and suggestions by William Pursell and nightstrike@gmail.com. 2008-01-13 Ralf Wildenhues Do not fail if `autoupdate' is not present. * tests/obsolete.test: Check for presence of autoupdate. Apparently, FreeBSD may install the other Autoconf programs without a version suffix but not autoupdate. Fix Heisenbug trying to unset a sometimes-not-set variable. * tests/check5.test: Do not error out upon `unset TESTS' due to `set -e', in case TESTS was not set. * tests/color.test: Likewise. * doc/automake.texi (amhello Explained): Fix odd sentence. Report by nightstrike@gmail.com. 2008-01-12 Ralf Wildenhues * m4/init.m4 (_AC_AM_CONFIG_HEADER_HOOK): Rewrite to be more resistant to different quoting styles of $1. Clarify texinfo.tex and TEXINFO_TEX semantics. * doc/automake.texi (Texinfo): Clarify that by default, texinfo.tex is searched in the same directory as the Makefile.am that needs it. Clarify that TEXINFO_TEX has precedence over AC_CONFIG_AUX_DIR, and that it requires the user to install and distribute it. * tests/txinfo22.test: Ensure TEXINFO_TEX is not distributed. * THANKS: Update. Reports by Dilyan Palauzov and Roumen Petrov. 2008-01-11 Bruno Haible Ralf Wildenhues * tests/output-order.test: New test, for the stable output fix. * tests/Makefile.am: Update. 2008-01-08 Ralf Wildenhues * Makefile.am (dist-hook): New, ensure world-executable tests. * THANKS: Update. Report by Arto C. Nirkko. * tests/acloca20.test: Use `--force' with the second $AUTOCONF, to force update on fast machines where both autoconf invocations happen within the same second. Report by Greg Schafer. 2008-01-07 Ralf Wildenhues * automake.in (scan_autoconf_files): Sort loop over %required_aux_file, for stable verbose output. Report by Bruno Haible. * lib/config.guess, lib/config.sub, lib/texinfo.tex: Sync from upstream. * tests/ccnoco.test (Mycomp): Use a tighter match for -c -o, to avoid matching for example `LDFLAGS=-Wl,--sort-common'. * THANKS: Update. Report and analysis by Carsten Lohrke and Mike Frysinger. 2008-01-07 Stepan Kasal * automake.in (handle_texinfo_helper, handle_lib_objects): Fix typos in comments. 2008-01-02 Ralf Wildenhues Bump copyright years. * aclocal.in (write_aclocal, version): Likewise. * automake.in ($gen_copyright, version): Likewise. * doc/automake.texi: Likewise. 2007-12-18 Jim Meyering * lib/gnupload (GPG): Don't use an absolute path. This reverts part of the 2004-01-28 change. 2007-12-08 Ralf Wildenhues * lib/Automake/FileUtils.pm (open_quote): New function. (update_file, contents): Use it. Reword the copyright notices to match what's suggested in GPLv3. 2007-12-08 Ralf Wildenhues * tests/defs.in: Quote $srcdir, $PATH; skip libtool and gettext tests if the absolute source or build tree name contain whitespace. Modify some tests for absolute trees containing whitespace. * tests/missing.test: Use "./missing" instead of "`pwd`/missing". * tests/missing2.test: Likewise. * tests/mmodely.test: Add `pwd` to $PATH instead of absolute references to myyacc.sh and mylex.sh. * tests/multlib.test: Likewise for mycc. * tests/txinfo26.test: Skip if `pwd` contains whitespace, as an absolute --srcdir does not work there. * INSTALL, lib/INSTALL, lib/config-ml.in, lib/config.guess, lib/config.sub, lib/texinfo.tex: Sync from upstream. Fix the distdir target to cope with spaces in absolute file names. * lib/am/distdir.am: Quote all instances of $(distdir) and $(top_distdir). They could contain white space, coming from a toplevel package bootstrapped with an older Automake version. (am__relativize): New macro, taken from gnulib code, written by Bruno Haible. (distdir): Use it to compute relative paths to distdir and top_distdir for enclosed subpackages. Also, quote $(distuninstallcheck_dir). * lib/am/texinfos.am: Likewise, quote $(distdir). 2007-11-26 Ralf Wildenhues Quote file names in tests that can be absolute. * tests/auxdir.test, tests/check3.test, tests/check4.test, tests/compile.test, tests/cond33.test, tests/condhook.test, tests/distdir.test, tests/dollar.test, tests/empty.test, tests/gnits2.test, tests/gnits3.test, tests/include2.test, tests/insthook.test, tests/java.test, tests/libtool7.test, tests/lisp4.test, tests/lisp5.test, tests/lisp6.test, tests/ltcond.test, tests/ltconv.test, tests/mkinst2.test, tests/multlib.test, tests/nobase.test, tests/nodist2.test, tests/obsolete.test, tests/pr287.test, tests/pr300-lib.test, tests/pr300-ltlib.test, tests/pr300-prog.test, tests/python10.test, tests/python3.test, tests/strip.test, tests/transform.test, tests/txinfo13.test, tests/txinfo19.test, tests/txinfo22.test, tests/txinfo23.test, tests/txinfo26.test, tests/txinfo27.test: Likewise. Quote @abs_top_builddir@ and @abs_top_srcdir@. * tests/aclocal.in: Likewise. * tests/automake.in: Likewise. Fix TAGS and GTAGS rules to cope with whitespace in `pwd`. * lib/am/tags.am (TAGS): Use positional parameters to avoid the need to quote absolute file names. (GTAGS): Quote absolute file name. (CTAGS): Simplify, dropping unused variable `$tags'. 2007-11-25 Ralf Wildenhues * lib/am/ltlib.am (uninstall-%DIR%LTLIBRARIES): Fix another instance of am__strip_dir. Fixes nobase and pr300-ltlib test failures. 2007-11-25 Akim Demaille Several *-local in a rule do not work. * tests/all.test: Check this case. Use set -e. * tests/Makefile.am (XFAIL_TESTS): Add it. 2007-11-25 Akim Demaille Fix uses of am__strip_dir. * lib/am/libs.am, lib/am/ltlib.am: Catch up with the change of definition of am__strip_dir. 2007-11-25 Akim Demaille Define and use register_action. * lib/Automake/Rule.pm: Fix a few typos in the doc. (&rule): Use || to simplify the code. (®ister_action): New. Export it. * automake.in (&handle_factored_dependencies, &file_contents_internal): Use it. 2007-11-25 Akim Demaille * bootstrap: Fix typos on redirections. 2007-11-24 Akim Demaille Skip comments and empty lines in dirlist in the tests. * defs.in (extra_includes): Skip comments and empty lines in dirlist. 2007-11-24 Akim Demaille Ternary operator in lib/am files. * automake.in (&transform_token): New. (&transform): Use it. Support %KEY?TRUE:FALSE%. (&make_paragraphs): Adjust the regexp to call %transform. * lib/am/data.am, lib/am/libs.am, lib/am/lisp.am, lib/am/ltlib.am, * lib/am/progs.am, lib/am/python.am, lib/am/scripts.am: Use %KEY?TRUE:FALSE%. * lib/am/inst-vars.am (am__strip_dir): Assign the result to f to be more alike am__vpath_adj. Adjust dependencies. 2007-11-24 Akim Demaille * automake.in: Normalize white spaces. 2007-11-24 Ralf Wildenhues * configure.ac (ACLOCAL, AUTOMAKE): Fix quoting for rebuilding rules, if the absolute build directory name contains white space. 2007-11-22 Ralf Wildenhues * aclocal.in (trace_used_macros): Quote input files. * lib/ylwrap: Cope with white space in `PROGRAM' and `pwd`. * lib/am/tags.am (ID, TAGS, CTAGS): Make awk scripts portable again. (CTAGS): Drop unneeded variable `here'. 2007-11-18 Ralf Wildenhues * tests/output13.test: New test. * tests/Makefile.am: Adjust. Prompted by report from Bruno Haible in . Fix signal handling in aclocal. * aclocal.in (unlink_tmp): If invoked by a signal, note so in verbose mode. Reinstall default signal handler and reraise, to transport the interrupt information. 2007-11-13 Bob Proulx Fix color test failure on dumb (and other) terminals. * tests/color.test: Set TERM to `ansi'. 2007-11-12 Ralf Wildenhues Avoid spurious test failure with `make check TESTS=check5.test'. * tests/check5.test: unset TESTS. Fix maintainer-check failure. * tests/color.test: unset TESTS, use `make -e' rather than `make MACRO=val'. 2007-11-10 Ralf Wildenhues * configure.ac (AM_INIT_AUTOMAKE): Require version 1.10a. * automake.in (handle_tests): Remove debugging leftover. Run each test in a process-private subdirectory. * tests/defs.in: Employ a trap to clean up at the end of the test in case the test succeeded. This needs to be revisited because we would like to keep the output of XPASSing tests. Also, note when we were interrupted by a signal. Code taken from Autoconf's _AC_INIT_PREPARE. If $keep_testdirs is set, keep them even for successful tests. * tests/Makefile.am (check-clean-local): New target. Remove all tests subdirs, but also make them writable first. The latter was already needed without per-test subdirs. (distclean-local): Depend upon check-clean-local. * tests/Makefile.in: Regenerate. * tests/.cvsignore, tests/.gitignore: Adjust. Fix default includes ordering to be `-I. -I$(srcdir) ...' again. * automake.in (handle_compile): Put -I$(srcdir) before include paths for config headers, as was done before Automake 1.10, but keep uniquified list without multiple adjacent spaces. * doc/automake.texi (Program variables): List include paths in order. * NEWS: Mention 1.10 regression. * tests/stdinc.test: New test. * tests/Makefile.am: Adjust. * THANKS: Update. Report by Kent Boortz. 2007-11-08 Akim Demaille Ralf Wildenhues Bob Proulx Implement colorized test output. * automake.in (handle_tests): Set COLOR depending on `color-tests'. * configure.ac (AM_INIT_AUTOMAKE): Use `color-tests'. * doc/automake.texi (Tests, Options): Document test results, document new option, document AM_COLOR_TESTS. * lib/Automake/Options.pm (_process_option_list): Handle it. * lib/am/check.am (am__tty_colors): New variable. Enable colored output if TERM is not dumb and depending on AM_COLOR_TESTS and whether stdout is connected to a terminal. (check-TESTS): Use am__tty_colors. * NEWS: Mention color-tests. * tests/color.test: New test. * tests/Makefile.am: Adjust. 2007-11-08 NightStrike (tiny change) For PR automake/526: * doc/automake.texi (Basic Installation): Fix typo. 2007-10-29 Ralf Wildenhues Accommodate for new macro AC_AUTOCONF_VERSION. * aclocal.in (write_aclocal): Use AC_AUTOCONF_VERSION rather than m4_PACKAGE_VERSION. Define the former if not defined. * m4/amversion.in (AM_SET_CURRENT_AUTOMAKE_VERSION): Likewise. * tests/missing4.test: Use AC_AUTOCONF_VERSION. 2007-10-29 Bruno Haible * doc/automake.texi (Program variables): Clarify that Automake does not put DEFAULT_INCLUDES in AM_CPPFLAGS, but passes it directly to compilation commands. 2007-10-29 Ralf Wildenhues Move to git as primary source repository. * Makefile.am (git-dist, git-release): Renamed and adjusted from ... (cvs-dist, cvs-release): ... these. (git-diff): New target, taken and adjusted from cvs-diff. * Makefile.in: Regenerate. * bootstrap: Adjust. * NEWS: Announce change. * doc/automake.texi (General Operation): cvs-dist is git-dist now. (Timeline): Mention change. 2007-10-09 Ralf Wildenhues * automake.in: Treat extension .sx also like preprocessed assembler (.S), following GCC. * NEWS: Update. * doc/automake.texi (Assembly Support): Adjust. * tests/asm3.test: New test. * tests/Makefile.am: Update. 2007-10-09 Jim Meyering Add lzma compression support. * NEWS: Mention it. * automake.in (handle_dist): Recognize dist-lzma. (make_paragraphs): Map LZMA to dist-lzma. * doc/automake.texi (Dist): Add dist-lzma. (Options): Likewise. * lib/Automake/Options.pm (_process_option_list): (dist dist-all): Add command to create an lzma-compressed tarball. (distcheck): Handle lzma-compressed tarballs just like the others. * tests/defs.in: Test for lzma, too. * tests/lzma.test: New file, based on nogzip.test. * tests/Makefile.am (TESTS): Add lzma.test. Suggestion from Karl Berry. 2007-09-30 Ralf Wildenhues * automake.in (TARGET_PATTERN): Allow leading digit. * tests/exeext3.test: Adjust to expose this. Report by Claudio Fontana and Laurence Finston. 2007-08-23 Ralf Wildenhues * tests/defs.in (required): For gcj, check whether `gcj -v' works, to avoid broken installations without libgcj.spec. Export $GCJ. * tests/gcj4.test: Setting GCJ not needed any more. * THANKS: Update. Report by Jesse Chisholm. 2007-08-20 Ralf Wildenhues * lib/config-ml.in, lib/config.guess, lib/config.sub, lib/symlink-tree, lib/texinfo.tex: New upstream versions. 2007-08-19 Ralf Wildenhues * doc/automake.texi (gettext): Fix link to gettext manual. 2007-08-18 Ralf Wildenhues In ChangeLog files, use more-permissive notice rather than GPL, as per usual GNU standards these days. 2007-08-16 Ralf Wildenhues * automake.in (handle_programs): Also clean .libs/_libs directory for _PROGRAMS. * tests/libtoo10.test: New test. * tests/Makefile.am: Update. * THANKS: Update. Report by Guillermo Ontañón. 2007-08-09 Ralf Wildenhues * configure.ac: Actually require version 2.60 in the test for Autoconf, and recommend it in the error messages. * THANKS: Update. Report by Robert Swafford. 2007-07-22 Ralf Wildenhues * doc/automake.texi (VPATH Builds): Fix wording. Report by Reuben Thomas. 2007-07-22 Noah Misch * tests/subst.test: Move the AC_SUBST into a macro definition. Avoids an error from CVS Autoconf. * THANKS: Update. Report by Benoit Sigoure. 2007-07-22 Ralf Wildenhues Alexandre Duret-Lutz * lib/am/configure.am (%?REGEN-ACLOCAL-M4%): New target $(am__aclocal_m4_deps) without any dependencies, to avoid the "deleted .m4 file" problem. * tests/acloca22.test: New test. * tests/Makefile.am: Update. * NEWS: Update. 2007-07-22 Francesco Salvestrini Ralf Wildenhues * lib/am/ltlib.am (install-%DIR%LTLIBRARIES) (uninstall-%DIR%LTLIBRARIES): Use $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS). * lib/am/progs.am (install-%DIR%PROGRAMS) (uninstall-%DIR%PROGRAMS): Likewise. * tests/libtool7.test: Update test for `install' and `uninstall' cases. * NEWS, THANKS: Update. 2007-07-16 Ralf Wildenhues * doc/automake.texi: Remove Front-Cover and Back-Cover Texts, this manual is not printed by the FSF. 2007-07-16 Alexandre Duret-Lutz * NEWS: Clarify that COPYING files are not updated. 2007-07-11 Ralf Wildenhues * doc/automake.texi: New Back-Cover Text. Report by Karl Berry. 2007-07-07 Ralf Wildenhues * aclocal.in (version): Fix output to match GCS requirements. * automake.in (version): Likewise. Report by Eric Blake. * COPYING, lib/COPYING: Update to GPLv3. All uses changed. * NEWS: Update. 2007-06-30 Ralf Wildenhues * lib/gnupload: Fix shell portability issues with for loops. Report by Karl Berry. 2007-06-23 Paul Eggert Ralf Wildenhues * aclocal.in (write_aclocal): Warn about autoconf incompatibilities instead of making them fatal. * tests/missing4.test: Adjust. * NEWS: Update. Problem reported by Bruno Haible in . 2007-05-03 Stepan Kasal * doc/automake.texi, lib/Automake/Rule.pm: Fix typos. * automake.in: Likewise. (am_primary_prefixes): Keep the intentional typo there. 2007-04-25 Eric Blake * doc/stamp-vti: Remove generated file from revision control. * doc/version.texi: Likewise. 2007-04-23 Reuben Thomas (tiny change) * doc/automake.texi (Python): Fix typo. 2007-03-30 Eric Blake Ralf Wildenhues * lib/mdate-sh (ls_command): Use -n when available to avoid problems with spaces in user/group names. * tests/mdate5.test: New test. * tests/Makefile.am: Adjust. 2007-03-30 Ralf Wildenhues * automake.in (handle_tests): Rewrite XFAIL_TESTS just like TESTS, appending $(EXEEXT), so that matching continues to work on w32. * NEWS: Mention this. * doc/automake.texi (EXEEXT, Extending): Update. * tests/check7.test: New test. * tests/Makefile.am: Adjust. Bug report by Ed Hartnett. 2007-03-30 Ralf Wildenhues * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Again search the whole file, but use sed to reduce the line length. Fixes 1.10 regression. Report by David Byron. * THANKS, NEWS: Update. 2007-03-29 Ralf Wildenhues * lib/depcomp (aix): Rewrite depmode in the spirit of the tru64 one. Fixes failure to catch dependencies with libtool and xlc in case of enable_static=no (which is the default on AIX without runtimelinking). * tests/depcomp7.test: Run test once with --disable-shared and once with --disable-static, to expose failure systematically. * NEWS: Update. 2007-03-29 Stepan Kasal Ralf Wildenhues * automake.in (handle_LIBOBJS_or_ALLOCA): Fix the error message. * tests/pr401.test: Update to expose the error. * tests/pr401b.test: Likewise. * tests/pr401c.test: Likewise. 2007-03-28 Ralf Wildenhues * automake.in (scan_autoconf_config_files): Warn about leading `./' in config file names. * tests/canon-name.test: New test. * tests/Makefile.am: Update. * THANKS: Update. Suggestion by Claudio Fontana. * tests/yacc6.test: Add the generated headers to `BUILT_SOURCES' as documented in the manual. Fixes parallel make failure. Report by Dieter Jurzitza. * THANKS: Update. * ChangeLog, TODO, tests/exdir3.test: Fix copyright notice. * TODO: Kill a couple of outdated items. * tests/exdir3.test: New test. * tests/Makefile.am: Update. 2007-01-27 Bruno Haible * doc/automake.texi (Multiple Outputs): Fix the multiple outputs with locking example. 2007-01-27 Ralf Wildenhues * doc/automake.texi (Subpackages): Fix ambiguous wording. Report and suggestions by Reuben Thomas. * THANKS: Update. 2007-01-10 Ralf Wildenhues * tests/defs.in (is_newest): Cope with multiple newer files. * NEWS: mention `install-sh -C'. 2006-12-25 Paul Eggert * lib/install-sh (initialize_posix_glob): New var. Use it instead of setting posix_glob inline. (posix_glob): Use '?'/''/: instead of ''/yes/no, for convenience. (cmpprog, CMPPROG): New vars, since we use cmp rather than the diff of Akim's patch. Use LC_ALL before invoking 'ls' when we depend on its output format. Don't use awk; just use the shell's builtin features. Clean up $dsttmp if -C detects no installation is needed. * tests/defs.in (is_newest): Renamed from is_younger; the new name is more accurate. All uses changed. (old_timestamp): New var. * tests/instsh2.test: Rewrite to avoid the need for sleeping. 2006-12-25 Akim Demaille * lib/install-sh: Implement install-sh -C. (This patch is the remaining part of the patch proposed in .) (usage): Document it. (copy_on_change): New var. * tests/defs.in (is_younger): New function. * tests/instsh2.test: Check install-sh -C. 2006-12-24 Paul Eggert * lib/install-sh: Fix typo in previous patch for handling --. Use more-consistent style for ';;'. Prefer || to if-then-else-:. * tests/install2.test: Rework to avoid set -e problems. 2006-12-24 Akim Demaille Simplify install-sh and its test. This shouldn't change any behavior. (This patch is a subset of the patch proposed in .) * lib/install-sh (usage): Use usual GNU style. (dstarg): Rename as... (dst_arg): this for consistency. Simplify quoting of assignments. Sort them. Don't use '\' to continue commands: && suffices. Remove useless "continue" in the argument processing, and factor the shifts. * tests/defs.in: Some improvements to make it set -e clean. Use the traditional ":" trick to protect loops from being empty. Remove an empty straightforward piece of code prepared to define additional variables. Use test instead of [], for consistency. * tests/install2.test: Use set -e, to simplify code. 2006-12-20 Reuben Thomas (tiny change) * doc/automake.texi: Fix typo. 2006-11-12 Ralf Wildenhues * doc/Makefile.am: Use $(MAKE) $(AM_MAKEFLAGS) for building amhello, to prevent gmake from invoking make with MAKEFLAGS it does not understand. Report by Patrick Welche. * lib/gnupload: Revert last change. Add pointer to upload instructions of the GNU Maintenance Instructions. Suggestion by Karl Berry. 2006-11-08 Ralf Wildenhues * lib/gnupload: Add missing 'gnu' to example URL. Report by Karl Berry. 2006-10-28 Bobby Jack (tiny change) * doc/automake.texi (amhello Explained): autoconf creates configure, not configure.ac. * THANKS: Update. 2006-10-20 Ralf Wildenhues * doc/automake.texi (Dist, Dependency Tracking Evolution): Fix some typos. * lib/Automake/Condition.pm: Likewise. * lib/Automake/DisjConditions.pm: Likewise. * lib/Automake/ItemDef.pm: Likewise. * lib/Automake/Options.pm: Likewise. * lib/Automake/Rule.pm: Likewise. * lib/Automake/VarDef.pm: Likewise. * lib/Automake/Variable.pm: Likewise. * lib/Automake/Wrap.pm: Likewise. * lib/Automake/XFile.pm: Likewise. * m4/substnot.m4: Likewise. 2006-10-16 Alexandre Duret-Lutz * lib/gnupload: Update to version 1.1 of directive file. 2006-10-16 Ralf Wildenhues * lib/am/depend2.am (%SOURCEFLAG%): New substitution, goes right before the expanded source file name. * automake.in (%sourceflags): New global: per-extension flag to denote that the next compiler argument is the source file. (scan_autoconf_traces): Trace AC_FC_SRCEXT; initialize %sourceflags accordingly. (handle_single_transform): Store source file extension in... (%lang_specific_files): ...this and... (handle_languages): ...adjust here. Pass flag in SOURCEFLAG. * doc/automake.texi (Optional): Add AC_FC_SRCEXT. (Fortran 9x Support): Update. * tests/fort2.test: New test. * tests/Makefile.am: Adjust. * NEWS, THANKS: Update. Suggested by Steven G. Johnson. For PR automake/480. * automake.in (lang_f77_rewrite, lang_fc_rewrite) (lang_ppfc_rewrite, lang_ppf77_rewrite, lang_ratfor_rewrite): return `lang_sub_obj' to support subdir-object mode for the Fortran dialects. * tests/fort4.test, tests/fort5.test: New tests. * tests/Makefile.am: Update. * NEWS, THANKS: Update. Report by Davyd Madeley and Shannon L. Brown. * lib/am/header-vars.am (pkglibexecdir): New variable. * automake.in (%standard_prefix): Add it. * doc/automake.texi (Uniform): Document it. (Program Sources): Adjust. * NEWS: Update. * tests/libexec.test: New test. * tests/Makefile.am: Update. Suggested by Eric Blake. 2006-10-15 Alexandre Duret-Lutz * lib/gnupload: Update to version 1.1 of directive file. * configure.ac, NEWS: Bump version to 1.10a. * configure.ac, NEWS: Bump version to 1.10. * doc/automake.texi (Releases): Update for 1.10. * lib/config.sub, lib/texinfo.tex: New upstream versions. * lib/am/depend2.am: Typo. * lib/depcomp (scriptversion): Bump, to account for recent changes. * doc/automake.texi (Examples): Introduce the example, and point to Hello World. (Hello): Remove this obsolete node. 2006-10-15 Hans Ulrich Niedermann Ralf Wildenhues For PR automake/507: * lib/am/distdir.am (distdir): filename-length-max check is not done in sub-packages. * doc/automake.texi (Options): Document this. * tests/fn99subdir.test: New test. * tests/Makefile.am: Update. * THANKS: Update. 2006-10-14 Alfred M. Szmidt (tiny change) * doc/automake.texi (Third-Party Makefiles): Fix typo. * THANKS: Update. 2006-10-14 Ralf Wildenhues * aclocal.in (write_aclocal): Improve warning for mismatched Autoconf version. * automake.in: For preprocessed assembler, add `$(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES)' to the compile rule. * doc/automake.texi (Assembly Support): Update. * NEWS: Update. Suggested by Thomas Schwinge and Ralf Corsepius. For PR automake/492. * automake.in (output_flag): Set to `-o' for Assembler and preprocessed Assembler, assuming that all understand `-c -o'. * THANKS, NEWS: Update. * tests/subobj10.test: New test. * tests/Makefile.am: Update. Report by Thomas Schwinge. * automake.in (%_macro_for_cond): New variable. (cond_stack_if): Use it for better error message about missing dependency tracking conditionals. * tests/asm2.test: New test, modelled after asm.test. * tests/Makefile.am: Adjust. Report by Ralf Corsepius. * doc/automake.texi (Options): `no-dependencies' is similar to `--ignore-deps', not `--include-deps'. * m4/as.m4 (AM_PROG_AS): If `no-dependencies', do not invoke _AM_DEPENDENCIES. * tests/nodep2.test: New test. * tests/Makefile.am: Adjust. * automake.in (handle_LIBOBJS_or_ALLOCA): If we are in the LIBOBJDIR, then we should not add a DEPDIR prefix. * tests/pr401.test: Update test. * tests/pr401b.test: Likewise. * tests/pr401c.test: Likewise. Report by Jim Meyering and Eric Blake. * lib/depcomp (gcc3): Put dependency extraction flags before the `-c' flag, so they appear at the same position as in %FASTDEP% mode in depend2.am. Fixes build failure for FreeBSD's c89, which ignores unknown options only after the first non-option. Bug report against M4 by Nelson H. F. Beebe. 2006-10-14 Bruno Haible Ralf Wildenhues * automake.in ($seen_gettext_intl): New variable. (handle_gettext): Consider it. (scan_autoconf_traces): Add AM_GNU_GETTEXT_INTL_SUBDIR to the list. Set $seen_gettext_intl when it is seen. * doc/automake.texi (gettext, Optional): Update. * tests/gettext3.test: New test. * tests/Makefile.am: Update. 2006-10-14 Paul Eggert * lib/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m, which incorrectly sets the mode of an existing destination directory. In some cases the unpatched install-sh could do the equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD system. We hope this is rare in practice, but it's clearly worth fixing. Problem reported by Alex Unleashed in . Also, don't bother to check for -m bugs unless we're using -m; suggested by Stepan Kasal. 2006-10-14 Geoffrey Keating (tiny change) * m4/multi.m4: Non-default multilibs may be cross compilation. 2006-10-14 Ralf Wildenhues * automake.in: Fix some typos in comments. * lib/Automake/Variable.pm: Likewise. 2006-10-10 Ralf Wildenhues * automake.in (handle_compile): Use subst, for maintainer-check. 2006-10-09 Andreas Köhler (tiny change) For PR automake/505: * lib/am/configure.am (am__CONFIG_DISTCLEAN_FILES): Fix typo: `config.status.lineno', not `configure.status.lineno'. 2006-09-05 Ralf Wildenhues * NEWS: Mention that `install-sh' needs executable permissions. * tests/nobase.test: Adjust. Report by Patrick Welche. 2006-09-01 Ralf Wildenhues * lib/am/check.am (check-TESTS): Fix matching of XFAIL_TESTS against currently running test for the first and last element of $(TESTS): add spacing so Solaris make does VPATH expansion on these words, too. * tests/check6.test: Update. 2006-08-30 Paul Eggert For PR automake/501: * lib/am/depend2.am (?GENERIC?%EXT%.o, ?!GENERIC?%OBJ%): Abbreviate output a bit by not bothering to quote the .Po file name (the quoting doesn't suffice in general anyway), and by not bothering to remove junk .Tpo files (as they'll be removed later). This also lets 'make' run faster by avoiding a subshell. 2006-08-30 Ralf Wildenhues * automake.in: Fortran 77 and Fortran should require variables F77 resp. FC to be defined, and suggest the respective Autoconf macros otherwise. * tests/fort1.test: New test. * tests/Makefile.am: Update. * tests/ext.test: Add extensions f95, F90, F95. 2006-08-30 Alexandre Duret-Lutz For PR automake/500: * automake.in (handle_compile) <$default_includes>: Do not output the same -I twice. Use @am__isrc@ instead of ` -I$(srcdir)'. * m4/init.m4: Define am__isrc as ` -I$(srcdir)' only in non-VPATH builds since we always have `-I.'. * tests/subpkg.test: Make sure config headers are found in VPATH and non-VPATH builds. 2006-08-28 Ralf Wildenhues * doc/automake.texi, lib/Automake/Rule.pm: Fix some typos. * NEWS: Likewise. Clarify that only one LIBOBJDIR is supported. 2006-08-23 Alexandre Duret-Lutz * lib/Automake/ChannelDefs.pm (usage): Mention that -Wportability is enabled by default with gnu and gnits strictness. Report from Bruno Haible. 2006-08-22 Paul Eggert * NEWS: Mark de-ANSI-fication as being obsolete. * doc/automake.texi: Likewise. 2006-08-21 Stepan Kasal * Makefile.am, THANKS: Fix typos. 2006-08-20 Alexandre Duret-Lutz * NEWS, configure.ac: Bump version to 1.9c. * NEWS, configure.ac: Bump version to 1.9b. * Makefile.am (maintainer-check): Check for mkdir_p in automake.in too. * automake.in (require_build_directory): Use MKDIR_P, not mkdir_p. * m4/mkdirp.m4: Typo in previous patch. * Makefile.am (maintainer-check): Fine-tune the "Unescaped @" check so it doesn't complain about the '@ 's in node "Standard Directory Variables". * INSTALL, lib/INSTALL, lib/texinfo.tex, lib/config.sub: New upstream versions. * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Prefix mkdir_p with $(top_builddir)/ if it is a relative directory. 2006-08-19 Alexandre Duret-Lutz * lib/am/lex.am, lib/am/yacc.am: Drop the inline rules, always use ylwrap. Suggested by Akim Demaille long ago, to ease maintenance. * automake.in (handle_languages): Do not define MORE-THAN-ONE. (yacc_lex_finish_helper, lang_yacc_finish, lang_lex_finish): Always require ylwrap. * doc/automake.texi (Auxiliary Programs, Yacc and Lex): Update the documentation of ylwrap. * tests/lex.test, tests/lex4.test, tests/mmodely.test, tests/yacc.test, tests/yacc2.test, tests/yacc3.test, tests/yaccpp.test: Adjust. * doc/automake.texi (Releases): Update statistics until 1.9.6. * Makefile.am (maintainer-check): Check for mkdir_p. * automake.texi (Obsolete macros): Document AM_PROG_MKDIR_P. * lib/am/data.am, lib/am/distdir.am, lib/am/install.am, lib/am/java.am, lib/am/libs.am, lib/am/lisp.am, lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am, lib/am/python.am, lib/am/scripts.am, lib/am/texinfos.am: Use MKDIR_P instead of mkdir_p. * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Define mkdir_p using $MKDIR_P, not as '$(MKDIR_P)', otherwise it will break `Makefile.in's that use mkdir_p without defining MKDIR_P. * tests/distdir.test, tests/instman.test, tests/txinfo21.test: Adjust. * Makefile.am (SUBDIRS): Build lib first, for lib/Automake/Config.pm. * configure.ac (ACLOCAL): Use --acdir=m4 in addition to -I m4. Running aclocal during the rebuild rules will fail if the default acdir does not exist. * NEWS, configure.ac, m4/init.m4, m4/lispdir.m4, m4/mkdirp.m4: Require Autoconf 2.60 instead of some intermediate development version. * doc/automake.texi (Standard Directory Variables): Fix multitable width. (Autotools Introduction): Fix @uref usage. 2006-08-19 Ralf Wildenhues * doc/automake.texi: Fix some typos in the introduction, adjust some spacing; spell `GNU Build System' consistently. (menu): Unify node naming. (Standard Directory Variables): Clarify that this list is not exhaustive. (DESTDIR): Fix example. 2006-08-19 Alexandre Duret-Lutz * doc/automake.texi (Autotools Introduction) New chapter. Thanks to Ben Pfaff and Ralf Wildenhues for comments. (Auxiliary Programs, Install, Dist, Third-Party Makefiles) (distcleancheck): More cross references. * doc/amhello/configure.ac, doc/amhello/README, doc/amhello/Makefile.am, doc/amhello/src/Makefile.am, doc/amhello/src/main.c: New files. * doc/Makefile.am (dist_noinst_DATA): Distribute them. ($(srcdir)/amhello-1.0.tar.gz): New rule. (dist_doc_DATA): Install amhello-1.0.tar.gz. * Makefile.am (SUBDIRS): Update comment. 2006-08-15 Ralf Wildenhues * doc/automake.texi: Fix some typos. 2006-08-14 Jonathan Higa * automake.in: Register "Unified Parallel C" as language. (lang_upc_rewrite): New function. (resolve_linker): Consider UPCLINK. * lib/Automake/Variable.pm (%_ac_macro_for_var): Suggest AM_PROG_UPC for UPC and UPCFLAGS. * m4/upc.m4: New file. * m4/depend.m4 (_AM_DEPENDENCIES): Add UPC case. * m4/Makefile.am (dist_m4data_DATA): Add upc.m4. * doc/automake.texi (Unified Parallel C Support): New node. (Public macros): Mention AM_PROG_UPC. (Program and Library Variables, Flag Variables Ordering): Mention UPCFLAGS. * tests/upc.test, tests/upc2.test, tests/upc3.test: New file. * tests/Makefile.am (TESTS): Add them. * tests/ext.test: Also test upc files. 2006-08-04 Alexandre Duret-Lutz * doc/automake.texi (Scripts): Fix some errors in previous patch. * doc/automake.texi (Scripts): Revamp. Show an example of script built from configure.ac. Discuss CLEANFILES and EXTRA_DIST for other built scripts. * m4/init.m4: Suggest fixing the call to AC_INIT when AC_PACKAGE_NAME or AC_PACKAGE_VERSION is undefined. This is for newcomers who call AC_INIT and AM_INIT_AUTOMAKE without arguments. * tests/init.test: New file. * tests/Makefile.am (TESTS): Add it. 2006-08-04 Stepan Kasal * automake.in (dist_dirs, fill_dist_dirs): Remove. * lib/am/distdir.am (DISTDIRS): Remove. * tests/distdir.test, tests/pr2.test: Do not grep, use `make distdir' instead. 2006-08-04 Alexandre Duret-Lutz * doc/automake.texi (Conditionals): Split in two sections, "Usage" and "Portability", and add a third one, "Limits" to explain how conditional definitions inside multi-lines definitions can be handled. * automake.in (handle_options): Do not assume that AUTOMAKE_OPTIONS is defined in TRUE, but diagnose conditional definitions of AUTOMAKE_OPTIONS. Report from Bas Wijnen. * tests/amopt.test: New test. * tests/Makefile.am (TESTS): Add it. * aclocal.in (install_file): Cannot use /dev/null while diffing new files, because Tru64's diff do not handle /dev/null. So create an empty destination file before running diff on a new file, and erase it afterward. Fall back to using /dev/null only if we cannot create this file. Report and initial patch from Ralf Wildenhues. (unlink_tmp): New function. * test/acloca18.test: Make sure the empty file has been erased. 2006-08-04 Ralf Wildenhues * automake.in (handle_LIBOBJS_or_ALLOCA): With subdir-objects, do not prefix `$(top_builddir)/' aka `./' to nonempty LIBOBJDIR, to help BSD Make find the files also in a VPATH build. Also return the same path, possibly prefixed, for correct depdir computation. * tests/pr401.test: Update to expose wrong depdir computation. Rewrite to not use the same file name for library object and main program. * tests/pr401b.test, tests/pr401c.test: Likewise. 2006-07-09 Paul Eggert * lib/install-sh: Don't incorrectly claim that this implementation can install only one file at a time. (doit_exec): New var, for using 'exec' if possible, to save a process. (test_mode, intermediate_mode): Remove. (mode): Check for IFS or globbing characters in mode, since they might cause weird behavior with the other changes below. All later uses of '"$mode"' changed to '$mode', since the ""s no longer matter. Use octal modes if the invoker specifies an octal mode, and use octal umask values if 'umask' outputs octal values; this is more likely to work with older operating systems since Automake uses octal modes, and also works around a bug with HP-UX 11.23 'mkdir -p -m u=rwx,g=rx,o=rx,u+wx' reported by Ralf Wildenhues in . (cp_umask, mkdir_umask): New variables, to avoid temporarily creating files or directories with too-permissive modes. (mkdir_mode): Use the FreeBSD 'install' method for computing modes of intermediate directories; this is safer. (posix_mkdir): Also test mkdir -p -m ... by making a directory in /tmp and checking the resulting mode with 'ls', to catch a bug in HP-UX 11.23 and IRIX 6.5 mkdir reported by Ralf in the same message. Use ':' for true, not 'true'; this is a bit faster on traditional implementations. 2006-07-09 Jim Meyering * lib/depcomp: "in in" -> "in" in comment. 2006-07-06 Ralf Wildenhues * tests/defs.in (AUTOMAKE_run): Redirect stdout before stderr, for consistency with the recommendation prompted by this report: . 2006-06-24 Stepan Kasal Ralf Wildenhues * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Set `mkdir_p' to `'$(MKDIR_P)'', so that it retains the per-directory value computed by config.status. * lib/am/distdir.am (distdir): do not use `$(mkdir_p)' from a changed directory. Bugs reported by Ralf Menzel. * THANKS: Update. 2006-06-24 Eric Dorland Ralf Wildenhues * automake.in (scan_texinfo_file): Fix matching file extension. * tests/txinfo31.test: New test. * tests/Makefile.am: Update. 2006-06-07 Alexandre Duret-Lutz * automake.in (handle_LIBOBJS): Don't rely on the caller defining $1. 2006-06-07 Stepan Kasal * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Rewrite using AC_PROG_MKDIR_P. 2006-06-06 Stepan Kasal Ralf Wildenhues * lib/am/distdir.am: Do not call $(mkdir_p) for each distributed file, collect them and create them in one run, and strip $(srcdir) and $(top_srcdir) all at once. Fix some comment typos. 2006-06-06 Ralf Wildenhues * m4/depend.m4 (_AM_DEPENDENCIES): The IRIX MIPSpro compiler 7.4.4m may omit the first included header dependency information with `-MDupdate'. Refine test to catch this. * configure.ac (ACLOCAL): Use `-I m4' to match `./bootstrap' procedure. * tests/gettext.test: AM_PROG_GETTEXT of gettext >= 0.14.3 requires `config.rpath' to be present, and automake now enforces this. Test this, but only if the gettext installation works and is recent enough to provide this diagnosis. * tests/gettext.test: Provide a dummy `config.rpath' for all subsequent checks. * tests/gettext2.test, tests/subcond.test: Likewise. * tests/pr401.test: Replace "perl -i" with sed and mv, for MinGW perl. * tests/pr401b.test, tests/pr401c.test, tests/python11.test, * tests/yacc6.test, tests/yacc8.test: Likewise. * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Do not use plain `grep' on the Makefile, as its line length may exceed that for grep. Bug report against coreutils by Sam Sirlin. * THANKS: Update. 2006-05-26 Sergey Poznyakoff (tiny change) * doc/automake.texi (Options): Add anchor `tar-formats'. 2006-05-25 Noah Misch * lib/Automake/XFile.pm (lock): Allow EOPNOTSUPP, besides ENOLCK. Only mention `make -j' when applicable. Only raise fatal errors when `make -j' is involved. Improve error message. 2006-05-17 Ralf Wildenhues * lib/Automake/Configure_ac.pm (find_configure_ac): Use `$configure_in' instead of `configure.in', to preserve directory component. * lib/Automake/Configure_ac.pm: Add note that Automake owns this file. * lib/Automake/Channels.pm: Likewise. * lib/Automake/FileUtils.pm: Likewise. * lib/Automake/Struct.pm: Likewise. 2006-05-16 Ralf Wildenhues * INSTALL, lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream versions. 2006-05-15 Ralf Wildenhues * doc/automake.texi (Auxiliary Programs): Fix URL to GCC repository, they use SVN now. 2006-05-13 Werner Lemberg * lib/gnupload: Add support for savannah.gnu.org and savannah.nongnu.org. 2006-05-13 Ralf Wildenhues * lib/Automake/Channels.pm, lib/Automake/Condition.pm, lib/Automake/DisjConditions.pm, lib/Automake/Options.pm, lib/Automake/VarDef.pm, lib/Automake/Wrap.pm: Fix some typos. 2006-05-11 Paul Eggert * lib/install-sh: Sync from Autoconf, as follows: Don't use 'path' to talk about file names, as per GNU coding standards. Close a race condition reported by Ralf Wildenhues and Stepan Kasal. There is still a race condition on hosts that predate Posix 1003.1-1992, but we can't help this. Don't mishandle weird characters like space on pre-Posix hosts. Invoke mkdir at most once per dir arg on pre-Posix hosts. 2006-05-11 Ralf Wildenhues * tests/missing.test, tests/missing2.test: Do not require GNUmake. * Makefile.am (maintainer-check): Make sure `required=' does not follow `. ./defs' in the tests. * tests/ansi10.test: Use AC_PROG_CC_STDC. Fix test that ac_cv_prog_cc_stdc isn't just used by Automake code in `configure'. * tests/ansi6.test, tests/ansi7.test: Likewise. * tests/ansi9.test: Likewise. Do not override by setting $U and $(ANSI2KNR) at `make' time; that will be fragile. * tests/libobj8.test: Use AC_PROG_CC_STDC. * tests/subobj3.test: Likewise. Use `set -e'. * lib/install-sh: Initialize IFS, so field splitting isn't turned off later. * lib/mkinstalldirs: Likewise. * lib/am/java.am (class%DIR%.stamp): Do not assume `$?' has the path of the prerequisite added; IRIX 6.5 make does not add it, Solaris 2.6 make is inconsistent about adding it. Fixes java.test failure. * tests/distdir.test: Do not use leading `./' in EXTRA_DIST for files in the source tree. Fixes failures with HP-UX and Tru64 make. * lib/am/ansi2knr.am (ansi2knr): Rename target as... (./ansi2knr): ...this, for BSD make. (%ANSI2KNR-DIR%/ansi2knr): Adjust. 2006-05-10 Ralf Wildenhues * tests/depcomp6.test, tests/depcomp7.test: Cater for OpenBSD /bin/sh -e issue with failing commands in if clauses. * tests/defs.in (Be Bourne compatible): Update from current Autoconf. * configure.ac: Recommend perl-5.8.2. * tests/automake.test: Do not fail because of buggy Getopt::Long in perl < 5.8.2. * tests/longlin2.test: Do not use `grep' on Makefile.am: it has long lines and is thus not a text file; AIX 5.1 grep fails to scan non-plain patterns from long lines. * tests/overrid.test: Change all regexes for warning messages to match after a colon, so that the prepended file names do not cause false matches. Tighten overrides regex. Fix typo `cleam-am-local' -> `clean-am-local'. * tests/java.test: `configure' uses a trap, so use `(exit 77); exit 77' to portably set the exit status similar to AS_EXIT. * tests/fn99.test: propagate nonzero exit status from subshell. * tests/mkinst3.test: Fix `mkdir' wrapper to not be confused if ``pwd`' contains the string `-p'. Create the wrapper in a subdirectory so that `.' in $PATH does not lead to an endless loop. * lib/depcomp (ia64hp): Rename dependency style to.. (hp2): ..this, as it works with aCC on HPPA, too; adjust comment. Report by Olivier Fourdan (PR automake/481). * THANKS: Update. * tests/aclocal7.test: Add `$sleep's between file touching and automake resp aclocal+automake invocations, to ensure they complete with a time stamp strictly later than the touched file. * lib/missing: Remove superfluous quotes. Replace all uses of `[' by `test', for consistency, and for.. * tests/missing5.test: ..this new test. * tests/Makefile.am: Update. * lib/missing (sed_minuso, sed_output): New variables. (autom4te, help2man, makeinfo): Use them. Unifies detection of `-o FILE', `--output FILE', `--output=FILE', stricter regex. Fixes `missing' to detect `--output' for help2man. Fixes PR automake/483. Report by Dennis J. Linse. (autom4te): Document in `missing --help'. * THANKS: Update. 2006-04-26 Thien-Thi Nguyen (tiny change) * doc/automake.texi (Dependency Tracking Evolution): Fix typo. 2006-04-25 Stepan Kasal * lib/install-sh: Simplify the expr implementation of dirname. 2006-04-24 Paul Eggert * lib/install-sh: Handle --, and diagnose unknown options. * m4/mkdirp.m4 (AM_PROG_MKDIR_P): In the normal case, set mkdir_p='mkdir -p', not to 'mkdir -p --', for consistency with the other ways that mkdir_p might be set. 2006-04-21 Alexandre Duret-Lutz * m4/amversion.in (_AM_AUTOCONF_VERSION): New macro. (AM_SET_CURRENT_AUTOMAKE_VERSION): Call it. * aclocal.in (trace_used_macros): Trace _AM_AUTOCONF_VERSION. (write_aclocal): Output a check for Autoconf's version in aclocal.m4. Doing so ensures that users cannot build configure and Makefiles with two different autoconf versions. Report from Noah Misch. * tests/missing4.test: New file. * tests/Makefile.am (TESTS): Add it. 2006-04-20 Paul Lunau (tiny change) Ralf Wildenhues * lib/am/dejagnu.am (check-DEJAGNU): Fail when at least one test failed, instead of when the last one failed (PR automake/488). Report from Paul Lunau. * tests/dejagnu4.test: Update to expose this. * THANKS: Update. 2006-04-19 Ralf Wildenhues * lib/am/check.am (check-TESTS): Match XFAIL_TESTS delimited by TABs as well as spaces. Fixes PR automake/490. * tests/check6.test: New test. * tests/Makefile.am, THANKS: Update. Report from Diab Jerius . 2006-04-17 Stepan Kasal * lib/Autom4te/FileUtils.pm (find_file): Fix a typo in the description; eliminate the duplicate error message. * doc/automake.texi (@direntry): `Invoking Automake' is the name of the usage node for `automake' * lib/Automake/Variable.pm (%_gen_varname): Fix typos in the comment. 2006-04-17 Ralf Wildenhues * m4/lispdir.m4 (AM_PATH_LISPDIR): Require Autoconf 2.59c, because it uses `datarootdir'. Bump copyright year and serial. 2006-04-10 Stepan Kasal * NEWS: Fix typo. 2006-04-09 Alexandre Duret-Lutz * lib/Automake/Variable.pm (_hash_varname, _hash_values): New functions. (_gen_varname): Use _hash_values, and return a flag indicating whether the variable name was generated or reused. (transform_variable_recursively): Do not redefine variables that are reused, and try to reuse the variable being transformed. * tests/check2.test: Make sure TESTS hasn't been redefined. * tests/check5.test, tests/exeext4.test: Make sure variables have been reused. * tests/subst2.test: Make sure bin_PROGRAMS gets rewritten. * automake.in (%ignored_configure_vars): New variable. (scan_autoconf_traces): Trace for _AM_SUBST_NOTMAKE and fill %ignored_configure_vars. (define_configure_variable): Declare ignored configure variables as VAR_SILENT. Do not special-case AMDEPBACKSLASH and ANSI2KNR w.r.t. VAR_SILENT. * m4/substign.m4: New file. * m4/Makefile.am (dist_m4data_DATA): Add substign.m4. * m4/cond.m4: _AM_SUBST_NOTMAKE $1_TRUE and $1_FALSE (PR automake/477). * m4/depend.m4: _AM_SUBST_NOTMAKE AMDEPBACKSLASH. * m4/protos.m4: _AM_SUBST_NOTMAKE ANSI2KNR. * tests/cond.test: Make sure TEST_FALSE and TEST_TRUE are not defined. * tests/amsubst.test: New file. * tests/Makefile.am (TESTS): Add it. 2006-04-09 Stepan Kasal Ralf Wildenhues * automake.in (handle_single_transform): Preserve directories in direct suffix rules. * tests/suffix12.test: New test. * tests/Makefile.am (TESTS): Add it. Report from John Ratliff. 2006-03-25 Mike Frysinger (tiny change) Alexandre Duret-Lutz * aclocal.in ($m4_include_rx): Do not recognize `include', and adjust scan_configure_dep and scan_file accordingly. (scan_configure_dep): Do not search white lines. (scan_file): Strip comments from current line after checking for serial, so that aclocal does not trip on `m4_include' macros in comments. Report from Mike Frysinger. * tests/acloca21.test: New file. * tests/Makefile.am (TESTS): Add it. 2006-03-24 Stepan Kasal * tests/mmodely.test: Fix the test on systems with no lex. 2006-03-23 Stepan Kasal * automake.in (libtool_new_api): Fix a typo in the comment. * lib/Automake/Makefile.am (Config.pm): Likewise. * lib/am/depend2.am: Likewise. * tests/xsource.test: With `set -e', `|| exit 1' is no longer needed. 2006-03-23 Ralf Wildenhues * tests/depcomp6.test, tests/depcomp7.test: Change back to using `$MAKE && exit 1', but make sure the last command in the test is successful. 2006-03-21 Clifford Wolf (tiny change) Stepan Kasal Ralf Wildenhues * aclocal.in (parse_arguments): Added wildcard support to the dirlist parser. * doc/automake.texi (Macro search path): Document it. * tests/dirlist2.test: New test. * m4/dirlist, tests/Makefile.am: Adjust. 2006-03-20 Ralf Wildenhues * m4/init.m4 (AM_INIT_AUTOMAKE): Add `_AM_DEPENDENCIES(OBJC)' to `AC_PROG_OBJC' if provided, to fix Objective C depmode handling. * lib/Automake/Variable.pm (%_ac_macro_for_var): Add entries for OBJC and OBJCFLAGS. * tests/ext.test: Adjust. * tests/objc.test, tests/objc2.test: New tests. * tests/Makefile.am: Adjust. * doc/automake.texi (Objective C Support): New node. (Support for Other Languages): Adjust. 2006-03-19 Ralf Wildenhues * lib/Automake/RuleDef.pm (DESCRIPTION): Typo. * tests/depcomp6.test, tests/depcomp7.test: Fix failure logic to work with `set -e'. * tests/depcomp6.test, tests/depcomp7.test: New tests, for general `depcomp' functionality, with and without `subdir-objects', with and without `libtool'. * tests/Makefile.am: Adjust. * aclocal.in (write_aclocal): Unlink `aclocal.m4' before writing into it, to break a symlinked file. * tests/acloca20.test: New test. * tests/Makefile.am: Updated. 2006-03-19 Ralf Wildenhues Allow package trees (packages with subpackages) to share common distributed auxiliary files (and directories) that reside within a subpackage. * lib/am/distdir.am (distdir %?TOPDIR_P%): Do not fail if `$(distdir)' already exists. (%?SUBDIRS%): Set `am__remove_distdir' to `:' to prevent removal of subpackage trees for distribution. * tests/subpkg3.test: New test. * tests/Makefile.am: Update. 2006-03-18 Alexandre Duret-Lutz * tests/check5.test, tests/nobast.test: Fix $MAKE and rm invocations to please maintainer-check. 2006-03-10 Alexandre Duret-Lutz * automake.in (lang_c_rewrite): Typo in previous change. * tests/ccnoco2.test: New file. * tests/Makefile.am (TESTS): Add ccnoco2.test. * automake.in (lang_c_rewrite): Make the AM_PROG_CC_C_O requirement a 'portability' warning, so that people can ignore it. Suggested by Ralf Wildenhues. * lib/Automake/ChannelDefs.pm: Make -Wportability the default in gnu and gnits modes. * doc/automake.texi (Invoking Automake): Adjust. 2006-02-21 Ralf Wildenhues * doc/automake.texi (Yacc and Lex): Document that `.ypp' and `.lpp' file extensions are recognized. 2006-02-21 Alexandre Duret-Lutz * doc/automake.texi (Complete, Extending aclocal, Public macros) (Python, Conditionals, API versioning): Always quote macro arguments. Report from Stepan Kasal. 2006-02-16 Alexandre Duret-Lutz * doc/automake.texi (Python): More examples. 2006-02-05 Alexandre Duret-Lutz * doc/automake.texi (distcleancheck): Fix bad wording. Report from Bob Rossi. (Man pages): Show dist_man_MANS, not EXTRA_DIST = $(man_MANS). 2006-01-29 Alexandre Duret-Lutz Append $(EXEEXT) to programs that may be listed in TESTS. Report from Simon Josefsson. * automake.in (%known_programs): New global. (initialize_per_input): Reset it. (append_exeext): Take a predicate as first argument to select the filename to rewrite. (handle_programs): Fill %known_programs. (handle_tests): Append $(EXEEXT) to all tests that are in %known_programs. (am_install_var): Update call to append_exeext. * doc/automake.texi (EXEEXT): TESTS is also rewritten. (Tests): More about the difference between check_PROGRAMS and TESTS. Give an example of TEST_ENVIRONMENT. * tests/cond32.test: Augment with a nested condition. * tests/exeext4.test: Also check TESTS. * tests/check5.test: New file. * tests/Makefile.am (TESTS): Add check5.test. 2006-01-12 Paul Eggert * lib/install-sh (dstdir): Don't use semicolons inside { } in sed scripts, as Posix says it's not portable. * lib/missing (file): Likewise. * lib/am/distdir.am (distcheck): Likewise. * tests/comment7.test, tests/comment9.test, tests/confh.test: Likewise * tests/distcom2.test, tests/distcom3.test: Likewise. * tests/distcom4.test, tests/distcom5.test: Likewise. * tests/distcom6.test, tests/include.test, tests/pluseq8.test: Likewise. 2006-01-12 Alexandre Duret-Lutz * ChangeLog: Move 2004's entries to ... * ChangeLog.04: ... this new file. * Makefile.am (EXTRA_DIST): Add ChangeLog.04. * tests/txinfo13.test: Test fix below. 2006-01-12 Ralf Wildenhues * lib/am/texinfos.am (dist-info): Tighten glob to avoid unwanted extra files in distribution. Reported by Vincent Lefevre. 2006-01-06 Alexandre Duret-Lutz * doc/automake.texi (Linking, Program and Library Variables): Mention the file extensions that usually appear in _DEPENDENCIES, and point to BUILT_SOURCES and example of _DEPENDENCIES uses. A couple of people have been listing sources files in _DEPENDENCIES lately. * doc/automake.texi: Bump copyright year. * automake.in ($gen_copyright, version): Likewise. * aclocal.in (write_aclocal, version): Likewise. 2006-01-05 Stepan Kasal Alexandre Duret-Lutz * automake.in (topsrcdir): New global. (generate_makefile): Compute it. (fill_dist_dirs): New function extracted from handle_dist. (handle_dist, handle_configure): Use fill_dist_dirs. * tests/distdir.test: Test for cases where $(top_srcdir) or $(srcdir) appear in EXTRA_DIST. Report from Sander Niemeijer. 2006-01-05 Zack Weinberg Ralf Wildenhues * lib/depcomp: Add 'ia64hp' dependency style. Zack's original patch was contributed to GCC on 2005-06-13. (tru64): Typo. 2005-11-01 Stepan Kasal * lib/install-sh: Use "trap '' 0" instead of "trap - 0", so that the code is portable to both POSIX and pre-POSIX shells. 2005-10-17 Alexandre Duret-Lutz * tests/nobase.test: Use `chmod a-x' instead of `chmod -x', suggested by Eric Blake. 2005-10-17 Stepan Kasal * doc/automake.texi (Program and Library Variables): Typo. * lib/Automake/Variable.pm (transform_variable_recursively): Typo in a comment. 2005-10-03 Stepan Kasal * ChangeLog.03, automake.in, tests/overrid.test: Typos. 2005-10-03 Alexandre Duret-Lutz * tests/nobase.test: Exercise previous patch. 2005-10-03 Peter O'Gorman (tiny change) * lib/am/distdir.am: Remove $(SHELL) when calling install_sh * m4/strip.m4: Ditto. * m4/install-sh.m4: Add $(SHELL) to the definition of install_sh 2005-09-13 Paul Eggert * doc/automake.texi (limitations on file names): New section. * lib/install-sh: Rewrite to support '*' in file names. Also, tune so that we don't invoke so many commands in the usual case. This has the side effect of fixing `install-sh -d' to not fail if it loses the race in creating the last path component against another process. * tests/instspc.test: The "*" test is now fixed. 2005-09-13 Stepan Kasal * automake.in (Languages) : Fix typo in the comment. 2005-09-13 Ralf Wildenhues * lib/am/ltlib.am (uninstall-%DIR%LTLIBRARIES): Do not put shell in verbose mode. 2005-08-07 Alexandre Duret-Lutz * lib/Automake/Variable.pm (variable_value): Do not read the TRUE value of a conditionally defined variable. Report from Juergen Leising. * automake.in (lang_yacc_target_hook): Use AM_MAKEFLAGS in recursive $(MAKE) invocations. * lib/am/texibuild.am (?GENERIC_INFO?%SOURCE_SUFFIX%%DEST_SUFFIX%): Likewise. * lib/am/texi-vers.am (%STAMPVTI%): Likewise. * lib/am/remake-hdr.am (%CONFIG_H%): Likewise. * Makefile.am (maintainer-check): Check for this. Report from Stepan Kasal. * m4/mkdirp.m4: Update misleading comment about `mkdir -p .'. Prompted by Stepan Kasal. 2005-08-07 Stepan Kasal * lib/am/texinfos.am (uninstall-info-am): Call install-info only if the $(infodir) exists. 2005-07-31 Stepan Kasal * tests/library3.test: Fix a typo which made the test fail. 2005-07-27 Alexandre Duret-Lutz * doc/automake.texi (Linking, Program and Library Variables): Suggest reserving -l for third-party libraries. * lib/Automake/Variable.pm (require_variables): Mention aclocal's search path when suggesting to add a macro in configure.ac. People are confused when Automake suggests adding a macro (such as AC_PROG_LIBTOOL) that is already in configure.ac. * automake.in (require_file_internal): Suggest `automake --add-missing' for missing files that can be installed. * tests/library3.test: Adjust. 2005-07-27 Stepan Kasal * tests/defs.in: When required matches both `*libtool*' and `*gettext*', check for both m4 files. * doc/automake.texi (Auxiliary Programs): Fix a typo. * tests/suffix11.test: Fix a typo. * tests/colon3.test: s/EGREP/FGREP/. 2005-07-19 Paul Eggert * tests/instspc.test: Major rewrite to test for many other problematic file names, e.g., '$', '"', '('. Automake and Autoconf can't handle many of them, so do not report a failure if the usual candidates show up. 2005-07-19 Stepan Kasal * Makefile.am (automake, aclocal): Merge the rules. 2005-07-10 Alexandre Duret-Lutz * lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream versions. 2005-07-09 Alexandre Duret-Lutz * lib/install-sh: Use IFS=/ to split directories on /, don't translate / into % as it prevents directory names using %... 2005-07-09 Stepan Kasal * doc/automake.texi (Public macros): Typo. * aclocal.in: Typo in comment. 2005-07-09 Zack Weinberg (tiny change) * lib/depcomp: Handle "#line" markers as well as "# " markers in "cpp" style, so it can work with newer HP compilers (for their ia64 systems). 2005-07-02 Alexandre Duret-Lutz * doc/automake.texi (Public macros) : Reword to fix an underful hbox. * lib/INSTALL, lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream versions. 2005-07-01 Alexandre Duret-Lutz * m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Add python2.5. 2005-06-30 Alexandre Duret-Lutz * automake.in (make_paragraphs): Do not define %TOPDIR%, now that lib/am/header-vars.am no longer uses it. * lib/am/libtool.am (distclean-am, distclean-libtool): Define if TOPDIR_P is true, not TOPDIR. Suggested by Stepan Kasal. * automake.in (read_am_file): Correctly diagnose comments following trailing backslash. * tests/commen10.test: New file. * tests/Makefile.am (TESTS): Add commen10.test. Report from Harald Dunkel. * automake.in (scan_autoconf_traces): Scan AC_SUBST_TRACE instead of AC_SUBST. * lib/am/header-vars.am (srcdir, top_srcdir, top_builddir, INSTALL): Do not define, they are AC_SUBST_TRACEd by Autoconf. * m4/init.m4 (AM_INIT_AUTOMAKE): Require Autoconf 2.59c. * tests/include.test: Call AC_OUTPUT. 2005-06-29 Alexandre Duret-Lutz * lib/mkinstalldirs: Fix support for directory name with spaces if `mkdir -p' does not work. * tests/Makefile.am (TESTS): Add mkinst3.test. * tests/mkinst3.test: New file. Report from Noah Friedman. * doc/automake.texi (Include, Extending aclocal): Typos. Report from Karl Berry. 2005-06-28 Stepan Kasal Alexandre Duret-Lutz * lib/mdate-sh: Avoid infinite loop with GNU ls when TIME_STYLE is set. * tests/txinfo28.test: Set TIME_STYLE. Report from Vincent Lefevre and James Youngman. 2005-06-24 Alexandre Duret-Lutz * lib/Automake/Variable.pm (define, _new): Remember the helper variable created for the last conditional += on each variable, and only append further += in the same condition to this last helper variable, not to older helper variables. This way the order of the items appended to the variable is preserved. * tests/cond21.test: Adjust. * tests/cond38.test: New file. * tests/Makefile.am (TESTS): Add cond38.test. Report from Ed Hartnett. 2005-06-22 Alexandre Duret-Lutz * tests/aclocal5.test: Adjust to recent CVS Autoconf changes. * automake.in (handle_footer): Do not output an unformatted definition of SOURCES, it is already done correctly in generate_makefile. This superfluous definition introduced long lines in some Makefiles, hence breakages in tools with a limited line length. Report from Mathias Froehlich. 2005-06-11 Alexandre Duret-Lutz * lib/am/texibuild.am (?GENERIC_INFO?%SOURCE_SUFFIX%%DEST_SUFFIX%): Fix redirections in previous patch. 2005-06-08 Alexandre Duret-Lutz * lib/am/texibuild.am (?GENERIC_INFO?%SOURCE_SUFFIX%%DEST_SUFFIX%): Do not backup any file if makeinfo is not installed. * lib/missing (makeinfo): Do not touch a missing info file. * tests/txinfo30.test: New file. * tests/Makefile.am (TESTS): Add txinfo30.test. Report from Bob Proulx. * doc/automake.texi (Extending aclocal): Typo. 2005-05-24 Brian Gough (tiny change) * lib/am/texinfos.am (.dvi.ps): Add $(am__TEXINFO_TEX_DIR) to TEXINPUTS. 2005-05-15 Alexandre Duret-Lutz Fix PR automake/461: * automake.in (require_build_directory): Canonicalize directories with different names, such as `foo/bar' and `./foo//bar'. * tests/subobj9.test: Augment to test that. Report from Tom Tromey. 2005-05-14 Alexandre Duret-Lutz * COPYING, ChangeLog, ChangeLog.00, ChangeLog.01, ChangeLog.02, ChangeLog.03, ChangeLog.96, ChangeLog.98, HACKING, Makefile.am, NEWS, README, TODO, aclocal.in, automake.in, bootstrap, configure, configure.ac, doc/Makefile.am, doc/fdl.texi, lib/COPYING, lib/Makefile.am, lib/acinstall, lib/compile, lib/config-ml.in, lib/config.guess, lib/config.sub, lib/depcomp, lib/elisp-comp, lib/gnupload, lib/mdate-sh, lib/missing, lib/py-compile, lib/symlink-tree, lib/texinfo.tex, lib/ylwrap, lib/Automake/ChannelDefs.pm, lib/Automake/Channels.pm, lib/Automake/Condition.pm, lib/Automake/Config.in, lib/Automake/Configure_ac.pm, lib/Automake/DisjConditions.pm, lib/Automake/FileUtils.pm, lib/Automake/General.pm, lib/Automake/Item.pm, lib/Automake/ItemDef.pm, lib/Automake/Location.pm, lib/Automake/Makefile.am, lib/Automake/Options.pm, lib/Automake/Rule.pm, lib/Automake/RuleDef.pm, lib/Automake/Struct.pm, lib/Automake/VarDef.pm, lib/Automake/Variable.pm, lib/Automake/Version.pm, lib/Automake/Wrap.pm, lib/Automake/XFile.pm, lib/Automake/tests/Condition.pl, lib/Automake/tests/DisjConditions.pl, lib/Automake/tests/Makefile.am, lib/Automake/tests/Version.pl, lib/Automake/tests/Wrap.pl, lib/am/Makefile.am, lib/am/ansi2knr.am, lib/am/check.am, lib/am/clean-hdr.am, lib/am/clean.am, lib/am/compile.am, lib/am/configure.am, lib/am/data.am, lib/am/dejagnu.am, lib/am/depend.am, lib/am/depend2.am, lib/am/distdir.am, lib/am/footer.am, lib/am/header-vars.am, lib/am/header.am, lib/am/inst-vars.am, lib/am/install.am, lib/am/java.am, lib/am/lang-compile.am, lib/am/lex.am, lib/am/library.am, lib/am/libs.am, lib/am/libtool.am, lib/am/lisp.am, lib/am/ltlib.am, lib/am/ltlibrary.am, lib/am/mans-vars.am, lib/am/mans.am, lib/am/multilib.am, lib/am/program.am, lib/am/progs.am, lib/am/python.am, lib/am/remake-hdr.am, lib/am/scripts.am, lib/am/subdirs.am, lib/am/tags.am, lib/am/texi-vers.am, lib/am/texibuild.am, lib/am/texinfos.am, lib/am/yacc.am, m4/Makefile.am, tests/aclibobj.test, tests/acloca10.test, tests/acloca11.test, tests/acloca12.test, tests/acloca13.test, tests/acloca14.test, tests/acloca15.test, tests/acloca16.test, tests/acloca17.test, tests/acloca18.test, tests/acloca19.test, tests/aclocal.test, tests/aclocal3.test, tests/aclocal4.test, tests/aclocal5.test, tests/aclocal6.test, tests/aclocal7.test, tests/aclocal8.test, tests/aclocal9.test, tests/acoutbs.test, tests/acoutbs2.test, tests/acoutnoq.test, tests/acoutpt.test, tests/acoutpt2.test, tests/acoutqnl.test, tests/acsilent.test, tests/acsubst.test, tests/acsubst2.test, tests/all.test, tests/alloca.test, tests/alloca2.test, tests/alpha.test, tests/alpha2.test, tests/amassign.test, tests/ammissing.test, tests/ansi.test, tests/ansi10.test, tests/ansi2.test, tests/ansi3.test, tests/ansi3b.test, tests/ansi4.test, tests/ansi5.test, tests/ansi6.test, tests/ansi7.test, tests/ansi8.test, tests/ansi9.test, tests/ar.test, tests/ar2.test, tests/asm.test, tests/autohdr.test, tests/autohdr2.test, tests/autohdr3.test, tests/autohdr4.test, tests/automake.test, tests/auxdir.test, tests/auxdir2.test, tests/auxdir3.test, tests/auxdir4.test, tests/backsl.test, tests/backsl2.test, tests/backsl3.test, tests/backsl4.test, tests/badline.test, tests/badopt.test, tests/badprog.test, tests/block.test, tests/bsource.test, tests/canon.test, tests/canon2.test, tests/canon3.test, tests/canon4.test, tests/canon5.test, tests/ccnoco.test, tests/check.test, tests/check2.test, tests/check3.test, tests/check4.test, tests/checkall.test, tests/clean.test, tests/clean2.test, tests/colneq.test, tests/colneq2.test, tests/colon.test, tests/colon2.test, tests/colon3.test, tests/colon4.test, tests/colon5.test, tests/colon6.test, tests/colon7.test, tests/comment.test, tests/comment2.test, tests/comment3.test, tests/comment4.test, tests/comment5.test, tests/comment6.test, tests/comment7.test, tests/comment8.test, tests/comment9.test, tests/compile.test, tests/compile_f90_c_cxx.test, tests/compile_f_c_cxx.test, tests/cond.test, tests/cond10.test, tests/cond11.test, tests/cond13.test, tests/cond14.test, tests/cond15.test, tests/cond16.test, tests/cond17.test, tests/cond18.test, tests/cond19.test, tests/cond2.test, tests/cond20.test, tests/cond21.test, tests/cond22.test, tests/cond23.test, tests/cond24.test, tests/cond25.test, tests/cond26.test, tests/cond27.test, tests/cond28.test, tests/cond29.test, tests/cond3.test, tests/cond30.test, tests/cond31.test, tests/cond32.test, tests/cond33.test, tests/cond34.test, tests/cond35.test, tests/cond36.test, tests/cond37.test, tests/cond4.test, tests/cond5.test, tests/cond6.test, tests/cond7.test, tests/cond8.test, tests/cond9.test, tests/condd.test, tests/condhook.test, tests/condinc.test, tests/condinc2.test, tests/condlib.test, tests/condman.test, tests/condman2.test, tests/conf2.test, tests/confdeps.test, tests/conff.test, tests/conff2.test, tests/confh.test, tests/confh4.test, tests/confh5.test, tests/config.test, tests/confincl.test, tests/conflnk.test, tests/conflnk2.test, tests/conflnk3.test, tests/confsub.test, tests/confvar.test, tests/confvar2.test, tests/copy.test, tests/ctarget1.test, tests/cxx.test, tests/cxx2.test, tests/cxxansi.test, tests/cxxcpp.test, tests/cxxlibobj.test, tests/cxxlink.test, tests/cxxnoc.test, tests/cxxo.test, tests/cygwin32.test, tests/dash.test, tests/defs.in, tests/defun.test, tests/defun2.test, tests/dejagnu.test, tests/dejagnu2.test, tests/dejagnu3.test, tests/dejagnu4.test, tests/dejagnu5.test, tests/dejagnu6.test, tests/dejagnu7.test, tests/depacl2.test, tests/depcomp.test, tests/depcomp2.test, tests/depcomp3.test, tests/depcomp4.test, tests/depcomp5.test, tests/depdist.test, tests/depend.test, tests/depend2.test, tests/depend3.test, tests/depend4.test, tests/destdir.test, tests/dirforbid.test, tests/dirlist.test, tests/discover.test, tests/distcom2.test, tests/distcom3.test, tests/distcom4.test, tests/distcom5.test, tests/distcom6.test, tests/distcom7.test, tests/distdir.test, tests/distname.test, tests/dollar.test, tests/double.test, tests/dup2.test, tests/else.test, tests/empty.test, tests/empty2.test, tests/empty3.test, tests/empty4.test, tests/exdir.test, tests/exdir2.test, tests/exeext.test, tests/exeext2.test, tests/exeext3.test, tests/exeext4.test, tests/exsource.test, tests/ext.test, tests/ext2.test, tests/extra.test, tests/extra2.test, tests/extra3.test, tests/extra4.test, tests/extra5.test, tests/extra6.test, tests/extra7.test, tests/f90only.test, tests/flibs.test, tests/fn99.test, tests/fnoc.test, tests/fo.test, tests/fonly.test, tests/fortdep.test, tests/fpinst2.test, tests/fpinstall.test, tests/gcj.test, tests/gcj2.test, tests/gcj3.test, tests/gcj4.test, tests/gcj5.test, tests/getopt.test, tests/gettext.test, tests/gettext2.test, tests/gnits.test, tests/gnits2.test, tests/gnits3.test, tests/gnumake.test, tests/gnuwarn.test, tests/gnuwarn2.test, tests/header.test, tests/help.test, tests/hfs.test, tests/hosts.test, tests/implicit.test, tests/include.test, tests/include2.test, tests/info.test, tests/insh2.test, tests/install2.test, tests/installdir.test, tests/instdat.test, tests/instdat2.test, tests/instexec.test, tests/insthook.test, tests/instman.test, tests/instman2.test, tests/instsh.test, tests/instsh2.test, tests/instspc.test, tests/interp.test, tests/interp2.test, tests/java.test, tests/java2.test, tests/java3.test, tests/javaprim.test, tests/javasubst.test, tests/ldadd.test, tests/ldflags.test, tests/lex.test, tests/lex2.test, tests/lex3.test, tests/lex4.test, tests/lex5.test, tests/libobj10.test, tests/libobj11.test, tests/libobj12.test, tests/libobj13.test, tests/libobj14.test, tests/libobj2.test, tests/libobj3.test, tests/libobj4.test, tests/libobj5.test, tests/libobj7.test, tests/libobj8.test, tests/library.test, tests/library2.test, tests/library3.test, tests/libtool.test, tests/libtool2.test, tests/libtool3.test, tests/libtool4.test, tests/libtool5.test, tests/libtool6.test, tests/libtool7.test, tests/libtool8.test, tests/libtool9.test, tests/license.test, tests/link_c_cxx.test, tests/link_dist.test, tests/link_f90_only.test, tests/link_f_only.test, tests/link_fc.test, tests/link_fccxx.test, tests/link_fcxx.test, tests/lisp2.test, tests/lisp3.test, tests/lisp4.test, tests/lisp5.test, tests/lisp6.test, tests/lisp7.test, tests/lisp8.test, tests/listval.test, tests/location.test, tests/longlin2.test, tests/longline.test, tests/ltcond.test, tests/ltcond2.test, tests/ltconv.test, tests/ltdeps.test, tests/ltlibobjs.test, tests/ltlibsrc.test, tests/maintclean.test, tests/make.test, tests/makej.test, tests/makevars.test, tests/man.test, tests/man2.test, tests/mclean.test, tests/mdate.test, tests/mdate2.test, tests/mdate3.test, tests/mdate4.test, tests/missing.test, tests/missing2.test, tests/missing3.test, tests/mkinst2.test, tests/mkinstall.test, tests/mmodely.test, tests/multlib.test, tests/nobase.test, tests/nodef.test, tests/nodef2.test, tests/nodep.test, tests/nodepcomp.test, tests/nodist.test, tests/nodist2.test, tests/nodist3.test, tests/nogzip.test, tests/nogzip2.test, tests/noinst.test, tests/noinstdir.test, tests/nolink.test, tests/nostdinc.test, tests/number.test, tests/obsolete.test, tests/order.test, tests/outdir.test, tests/output.test, tests/output10.test, tests/output11.test, tests/output12.test, tests/output2.test, tests/output3.test, tests/output4.test, tests/output5.test, tests/output6.test, tests/output7.test, tests/output8.test, tests/output9.test, tests/overrid.test, tests/parse.test, tests/percent.test, tests/percent2.test, tests/phony.test, tests/pluseq.test, tests/pluseq10.test, tests/pluseq2.test, tests/pluseq3.test, tests/pluseq4.test, tests/pluseq5.test, tests/pluseq6.test, tests/pluseq7.test, tests/pluseq8.test, tests/pluseq9.test, tests/postproc.test, tests/ppf77.test, tests/pr2.test, tests/pr204.test, tests/pr211.test, tests/pr220.test, tests/pr224.test, tests/pr229.test, tests/pr243.test, tests/pr266.test, tests/pr279-2.test, tests/pr279.test, tests/pr287.test, tests/pr300-lib.test, tests/pr300-ltlib.test, tests/pr300-prog.test, tests/pr307.test, tests/pr401.test, tests/pr401b.test, tests/pr401c.test, tests/pr72.test, tests/pr87.test, tests/pr9.test, tests/prefix.test, tests/primary.test, tests/primary2.test, tests/primary3.test, tests/proginst.test, tests/python.test, tests/python10.test, tests/python11.test, tests/python12.test, tests/python2.test, tests/python3.test, tests/python4.test, tests/python5.test, tests/python6.test, tests/python7.test, tests/python8.test, tests/python9.test, tests/recurs.test, tests/recurs2.test, tests/regex.test, tests/remake.test, tests/remake2.test, tests/remake3.test, tests/remake4.test, tests/remake5.test, tests/req.test, tests/reqd.test, tests/reqd2.test, tests/rulepat.test, tests/scripts.test, tests/seenc.test, tests/sinclude.test, tests/space.test, tests/specflg.test, tests/specflg2.test, tests/specflg3.test, tests/specflg6.test, tests/specflg7.test, tests/specflg8.test, tests/specflg9.test, tests/spell.test, tests/spell2.test, tests/spell3.test, tests/spelling.test, tests/spy.test, tests/srcsub.test, tests/srcsub2.test, tests/stamph2.test, tests/stdlib.test, tests/stdlib2.test, tests/strip.test, tests/subcond.test, tests/subcond2.test, tests/subcond3.test, tests/subdir.test, tests/subdir2.test, tests/subdir3.test, tests/subdir4.test, tests/subdir5.test, tests/subdir6.test, tests/subdir7.test, tests/subdir8.test, tests/subdir9.test, tests/subdirbuiltsources.test, tests/subobj.test, tests/subobj2.test, tests/subobj3.test, tests/subobj4.test, tests/subobj5.test, tests/subobj6.test, tests/subobj7.test, tests/subobj8.test, tests/subobj9.test, tests/subobjname.test, tests/subpkg.test, tests/subpkg2.test, tests/subst.test, tests/subst2.test, tests/substre2.test, tests/substref.test, tests/substtarg.test, tests/suffix.test, tests/suffix10.test, tests/suffix11.test, tests/suffix2.test, tests/suffix3.test, tests/suffix4.test, tests/suffix5.test, tests/suffix6.test, tests/suffix7.test, tests/suffix8.test, tests/suffix9.test, tests/symlink.test, tests/symlink2.test, tests/symlink3.test, tests/syntax.test, tests/tags.test, tests/tagsub.test, tests/tar.test, tests/tar2.test, tests/tar3.test, tests/target-cflags.test, tests/targetclash.test, tests/transform.test, tests/txinfo.test, tests/txinfo10.test, tests/txinfo13.test, tests/txinfo16.test, tests/txinfo17.test, tests/txinfo18.test, tests/txinfo19.test, tests/txinfo2.test, tests/txinfo20.test, tests/txinfo21.test, tests/txinfo22.test, tests/txinfo23.test, tests/txinfo24.test, tests/txinfo25.test, tests/txinfo26.test, tests/txinfo27.test, tests/txinfo28.test, tests/txinfo29.test, tests/txinfo3.test, tests/txinfo4.test, tests/txinfo5.test, tests/txinfo6.test, tests/txinfo7.test, tests/txinfo8.test, tests/txinfo9.test, tests/unused.test, tests/vars.test, tests/vars3.test, tests/vartar.test, tests/version.test, tests/version2.test, tests/version3.test, tests/version4.test, tests/version6.test, tests/version7.test, tests/version8.test, tests/vpath.test, tests/vtexi.test, tests/vtexi2.test, tests/warnopts.test, tests/werror.test, tests/werror2.test, tests/whoami.test, tests/xsource.test, tests/yacc.test, tests/yacc2.test, tests/yacc3.test, tests/yacc4.test, tests/yacc5.test, tests/yacc6.test, tests/yacc7.test, tests/yacc8.test, tests/yaccpp.test, tests/yaccvpath.test: Update FSF postal mail address. * tests/cxxnoc.test: Adjust grep pattern for CC, because CVS Autoconf currently defines a CCC variable. * tests/output11.test, tests/output12.test: Use rm -f. 2005-04-25 Gary V. Vaughan Alexandre Duret-Lutz Support for remote LIBOBJS (and friends) with subdir-objects. Fixes PR automake/401. * automake.in (config_libobj_dir): New variable. (scan_autoconf_traces): Set config_libobj_dir from AC_CONFIG_LIBOBJ_DIR. (handle_LIBOBJS_or_ALLOCA, require_libsource_with_macro): New functions. (handle_LIBOBJS, handle_ALLOCA): Use them. Adjust location of dependency files, possibly in a subdirectory. * tests/pr401.test, tests/pr401b.test, tests/pr401c.test: New tests. * tests/Makefile.am (TESTS): Add them. * doc/automake.texi (Optional) : Document. (LIBOBJS): Document changes in behaviour of LIBOBJS, ALLOCA, LTLIBOBJS & LTALLOCA in the presence of subdir-objects and an invocation of AC_CONFIG_LIBOBJ_DIR. 2005-04-18 Jim Meyering * doc/automake.texi (Dist): Correct English. 2005-03-31 Stepan Kasal * doc/automake.texi: When the phrase "for instance" introduces a sentence, it should be delimited by a comma. * doc/automake.texi: Fix a few typos. 2005-03-30 Alexandre Duret-Lutz * doc/automake.texi (Uniform): Use xmldir instead of htmldir as example, since the GCS now define htmldir. (Auxiliary Programs): Mention config-ml.in and symlink-tree. Give a URL for texinfo.tex. (Public macros): Sort alphabetically, and move obsolete macros... (Obsolete macros): ... here. Prompted by Karl Berry. 2005-03-29 Alexandre Duret-Lutz * doc/automake.texi (Multiple Outputs): Fix mistakes reported by Jim Meyering. * lib/am/lisp.am ($(am__ELCFILES)): Prevent races if the recover rule is run with `make -j'. * doc/automake.texi (Multiple Outputs): Adjust. * tests/lisp6.test: Augment it. * tests/lisp8.test: New file. * tests/Makefile.am (TESTS): Add lisp8.test. Suggested by Bruno Haible. 2005-03-27 Alexandre Duret-Lutz * doc/automake.texi: Use @:, @., @!, and @tie{} where appropriate. 2005-03-16 Alexandre Duret-Lutz * lib/am/lisp.am ($(am__ELCFILES)): Do not attempt to recover a missing *.elc file if it cannot be created because emacs does not exist. * tests/lisp7.test: New file. * tests/Makefile.am (TESTS): Add lisp7.test. Report from Greg Schafer. 2005-03-05 Alexandre Duret-Lutz * doc/automake.texi: Replace wicked whiches by thats. 2005-03-04 Alexandre Duret-Lutz * aclocal.in (scan_configure_dep, scan_file): Include file names are relative to the directory of configure.ac, not to the directory of the file doing the include. Remove code for this latter case. * tests/acloca13.test: Run distcheck and make sure all macros are actually distributed. 2005-03-03 Alexandre Duret-Lutz For PR automake/450: * aclocal.in (scan_file, scan_configure_dep): Skip missing sincluded files. * automake.in (scan_autoconf_traces): Likewise. * tests/sinclude.test: Augment. Report from Peter Breitenlohner. For PR automake/450: * aclocal.in (write_aclocal, trace_used_macros): Do not add/remove acinclude.m4 and configure.ac to the include map in these two places ... (strip_redundant_includes): ... do it here. This completes the previous change from 2005-03-01, that did not update write_aclocal. * tests/acloca19.test: Augment. Report from Peter Breitenlohner. 2005-03-02 Alexandre Duret-Lutz * tests/comment9.test: Typo. 2005-03-01 Alexandre Duret-Lutz * automake.in (read_am_file): Preserve backslashes preceding ##-lines. * tests/comment9.test: New file. * tests/Makefile.am (TESTS): Add comment9.test. Report from Julien Sopena. For PR automake/450: * aclocal.in (trace_used_macros): Do not explicitly trace files included by configure.ac. * tests/acloca19.test: New file. * tests/Makefile.am (TESTS): Add acloca19.test. Report from Peter Breitenlohner. 2005-02-27 Alexandre Duret-Lutz Fix for PR automake/448: * automake.in (handle_factored_dependencies): Flag install-hook as an error. * tests/insthook.test: Exercise this. * m4/lispdir.m4: Use datarootdir instead of datadir to match GCS. * doc/automake.texi (Hard-Coded Install Paths): Adjust. * doc/automake.texi: Replace many uses of @samp by @code, and vice versa. Use @command, @option, and @env where appropriate. 2005-02-26 Alexandre Duret-Lutz * doc/automake.texi: "filename" -> "file name", for consistency with GNU Coding Standards. See also Paul's change on 2004-08-20 in Autoconf. * doc/automake.texi (A Library, Libtool Libraries): Show how to link a program with a static or libtool library. (Program and Library Variables): Make clearer that _LDADD and _LIBADD may also list libraries. Prompted by a mail from Bruce Korb. * doc/automake.texi (Alternative): Show how to rewrite nobase_ variables using custom directory variables, and link to node Uniform. Suggested by Leonardo Boiko. * doc/automake.texi (Flag Variables Ordering, User Variables): Make clearer who the maintainer is, and that he can AC_SUBST AM_ variables in configure.ac. Suggested by Norman Gray. (Uniform, Public macros, Libtool Issues, Java Support, Conditionals): Use `---' for em dash, and stick them to the enclosing text. * doc/automake.texi: Reword a few sentences to fix all underflow and overflow warnings during `make dvi'. (Auxiliary Programs) : Update URL. (Public macros) : Likewise. 2005-02-12 Alexandre Duret-Lutz * lib/INSTALL, lib/config-ml.in, lib/config.guess, lib/config.sub, lib/texinfo.tex: New upstream versions. * doc/automake.texi (Hard-Coded Install Paths): New node. (Extending, Extending aclocal, Python): Link to it. (Extending): Don't show how to install a file in /etc/ directly, this is insane. * automake.in (read_am_file): Define variables containing long lines as VAR_PRETTY to work around tools with limited input width. * tests/longlin2.test: New file. * tests/Makefile.am (TESTS): Add it. Report from Albert Chin. 2005-02-09 Alexandre Duret-Lutz Fix for PR automake/447: * lib/depcomp (tru64) [libtool]: Also check for $dir.libs/$base.o.d. Report from Mathias Doreille. Add some old comments from Nicolas Joly for reference. 2005-02-08 Stepan Kasal * lib/mdate-sh: Check the size of the word following the month to catch Darwin. This way the filename can contain spaces. * doc/automake.texi (Requirements, Options): Typos. 2005-02-08 Alexandre Duret-Lutz * lib/missing (makeinfo): Compute the output file if neither -o nor @setfilename is used. Reported by Miroslaw Dobrzanski-Neumann and Bruno Haible. 2005-02-07 Alexandre Duret-Lutz * doc/automake.texi (Requirements): Show one example of AC_CONFIG_FILES with multiple outputs, and correct a few typos. * aclocal.in ($serial_line_rx): Expect at least one space between `serial' and the following number. Report from Jim Meyering. * lib/mdate-sh: Cope with Darwin's Day/Month/Year output. Report from Peter O'Gorman. 2005-02-06 Alexandre Duret-Lutz * aclocal.in (usage, parse_arguments): New --dry-run and --diff options. (install_file, write_aclocal): Honor --dry-run and --diff. * doc/automake.texi (aclocal options): Document --dry-run and --diff. (Serials): Mention --diff. * lib/Automake/FileUtils.pm (handle_exec_errors): Accept an $expected_exit_code argument. (xsystem): Take a list of arguments, not a string. * tests/acloca18.test: Use --dry-run and --diff. Suggested by Paul Eggert. * doc/automake.texi (aclocal options, Macro search path, Extending aclocal, Local Macros, Serials, Future of aclocal): Make these subsection of ... (Invoking aclocal): ... this. * aclocal.in ($serial_line_rx): Allow trailing garbage after the serial number. (scan_file): Explicitly mark the "ill-formed serial" message as a warning. * doc/automake.texi (aclocal options, Local Macros): Link to... (Serials): ... this new section. 2005-02-02 Paul Eggert * lib/compile: Likewise. 2005-02-02 Alexandre Duret-Lutz * lib/elisp-comp: Use `(exit N); exit N', not `(exit N); exit'; see 2004-12-17. * lib/mdate-sh, lib/py-compile, lib/ylwrap: Exit with nonzero status if a write failure occurs with --help or --version option, as below. 2005-02-02 Paul Eggert * lib/depcomp: Exit with nonzero status if a write failure occurs with --help or --version option. * lib/elisp-comp: Likewise. * lib/gnupload: Likewise. * lib/install-sh: Likewise. * lib/missing: Likewise. * lib/mkinstalldirs: Likewise. 2005-02-01 Alexandre Duret-Lutz * doc/automake.texi (aclocal options): Typo. * aclocal.in (list_compare): New functions. (scan_file): Honor #serial lines. * tests/acloca18.test: New test. * tests/Makefile.am (TESTS): Add it. * doc/automake.texi (aclocal options, Local Macros): Document #serial. 2005-01-30 Alexandre Duret-Lutz Preliminary support for `aclocal --install'. This still lacks #serial support. * aclocal.in (reset_maps, install_file): New functions. (write_aclocal): Copy files if --install. (usage, parse_arguments): Recognize --install. ("MAIN"): Start aclocal again if some file were installed. * tests/acloca10.test: Augment to test --install. * tests/aclocal.in, tests/defs.in: Add support for ACLOCAL_TESTSUITE_FLAGS, used by acloca10.test. * doc/automake.texi (aclocal options, Local Macros): Document --install. (Future of aclocal): Adjust. * doc/automake.texi (Macro search path): Using --acdir is not obvious, it's erroneous. * doc/automake.texi (direntry): Let `info Automake' point to the manual, and `info automake' to the `Invoking automake' node. Like in Autoconf. 2005-01-27 Akim Demaille * lib/Automake/Configure_ac.pm: s/filename/file_name/g. From Paul Eggert. 2005-01-24 Akim Demaille * lib/Automake/FileUtils.pm: Rename filename as file_name to be consistent with the terminology of the GNU coding standards. From Paul Eggert. (update_file): Accept a $force argument, so that --force always updates the time stamps. 2005-01-23 Alexandre Duret-Lutz * doc/automake.texi (How the Linker is Chosen): Explain how the linker is chosen without diagram, and update to match the code. Suggestion from Adrian Bunk. 2005-01-16 Alexandre Duret-Lutz * lib/am/subdirs.am ($(RECURSIVE_TARGETS), $(RECURSIVE_CLEAN_TARGETS)): Process all words of $MAKEFLAGS when checking for -k. * tests/check4.test: New file. * tests/Makefile.am (TESTS): Add check4.test. Report from Eric Blake. 2005-01-13 Alexandre Duret-Lutz * m4/amversion.in (AM_AUTOMAKE_VERSION): Point users to AM_INIT_AUTOMAKE if the version passed is incorrect. * tests/version8.test: New file. * tests/Makefile.am (TESTS): Add version8.test. 2005-01-09 Alexandre Duret-Lutz * m4/amversion.in, m4/as.m4, m4/auxdir.m4, m4/ccstdc.m4, m4/cond.m4, m4/depend.m4, m4/depout.m4, m4/dmalloc.m4, m4/gcj.m4, m4/header.m4, m4/init.m4, m4/install-sh.m4, m4/lead-dot.m4, m4/lex.m4, m4/lispdir.m4, m4/maintainer.m4, m4/make.m4, m4/minuso.m4, m4/missing.m4, m4/mkdirp.m4, m4/multi.m4, m4/obsol-gt.m4, m4/obsol-lt.m4, m4/obsolete.m4, m4/options.m4, m4/protos.m4, m4/python.m4, m4/regex.m4, m4/runlog.m4, m4/sanity.m4, m4/strip.m4, m4/tar.m4: Use the same all-permissive license that is used in aclocal.m4. Relicensing backed by RMS. * doc/automake.texi (A Library, LIBOBJS): Mention that empty libraries are not portable. 2005-01-05 Akim Demaille * aclocal.in ($ac_defun_rx): Match AU_ALIAS. * tests/aclocal5.test (MORE_DEFS): Rename as... (AM_TEST): this so that undefined macros are caught. And make it an alias of AC_SUBST. Test AU_ALIAS. Reported by Martin Bravenboer. 2005-01-03 Alexandre Duret-Lutz Fix handling of per-target flags in link rules. * automake.in (define_per_target_linker_variable): New function. (handle_programs, handle_ltlibraries): Use it. (%link_languages): New map. (register_language): Fill it. * lib/am/ltlibrary.am (%LTLIBRARY%): Do not append $(%XLTLIBRARY%_LDFLAGS) to the command, this is now done by define_per_target_linker_variable if needed. * lib/am/program.am (%PROGRAM%%EXEEXT%): Likewise with $(%XPROGRAM%_LDFLAGS). * doc/automake.texi (Program and Library Variables): Mention AM_LDFLAGS and AM_LIBTOOLFLAGS in the definition of maude_LDFLAGS and maude_LIBTOOLFLAGS. * tests/libtool9.test: New file. * tests/Makefile.am (TESTS): Add it. * NEWS: Explain the backward incompatibility. Report from Akim Demaille. 2005-01-01 Alexandre Duret-Lutz * doc/automake.texi (Requirements) : Discuss specifications with shell variables. (Optional) : Point to AC_CONFIG_FILES for this explanation. * automake.in (substitute_ac_subst_variables_worker, substitute_ac_subst_variables): Mew functions. (rewrite_inputs_into_dependencies): Use substitute_ac_subst_variables to ignore dependencies that contain unAC_SUBSTed shell variables. (handle_configure): Likewise, do not output rules for AC_CONFIG_HEADERS, AC_CONFIG_FILES, and AC_CONFIG_LINKS targets that unAC_SUBSTed contain shell variables. * tests/autohdr4.test: Use an AC_SUBST variable in a specification. * tests/output11.test, tests/output12.test: New files. * tests/Makefile.am (TESTS): Add output11.test and output12.test. * aclocal.in (parse_arguments, write_aclocal): Bump copyright year. * automake.in ($gen_copyright, version): Likewise. ----- Copyright (C) 2005-2021 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted provided the copyright notice and this notice are preserved. ;; Variables: ;; coding: utf-8 ;; End: