lib/am


Log

Author Commit Date CI Message
Stefano Lattarini a2803e6a 2011-09-28T13:17:13 maintcheck: fix usage of `cd' instead of `$(am__cd)' * lib/am/inst-vars.am (am__uninstall_files_from_dir): Use `$(am__cd)', not plain `cd'.
Stefano Lattarini eae5cfa9 2011-09-23T22:50:14 uninstall: "make uninstall" before "make install" works This change fixes automake bug#9578. * lib/am/inst-vars.am (am__uninstall_files_from_dir): New internal macro, that defines a shell code fragment to uninstall files from a given directory. * lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use it, to reduce code duplication and improve consistency and correctness. * lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise. * lib/am/lisp.am (uninstall-%DIR%LISP): Likewise. * lib/am/mans.am (uninstall-man%SECTION%): Likewise. * lib/am/python.am (uninstall-%DIR%LIBRARIES): Likewise. * lib/am/scripts.am (uninstall-%DIR%SCRIPTS): Likewise. * tests/uninstall-pr9578.test: New test. * tests/uninstall-fail.test: New test. * tests/Makefile.am (TESTS): Add them. * NEWS, THANKS: Update. Report by Nick Bowler.
Stefano Lattarini dd7e620b 2011-09-18T18:05:43 Merge branch 'python-work' into maint * python-work: cosmetics: fix various typos and grammaros py-compile: '--' and non-option arguments terminate the option list py-compile: complain on unrecognized options py-compile: normalize error and help messages python tests: add "unit tests" on py-compile py-compile: the '--destdir' option now accepts a blank argument python: run the 'py-compile' script with $(SHELL)
Stefano Lattarini 2990ef35 2011-09-12T10:54:49 java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am Fixes automake bug#8434. * automake.in (handle_java): Strip `dist_' and `nodist_' from the given prefix. Define a new internal Makefile variable `am__java_sources'. Related adjustments. * lib/am/java.am (JAVAC, JAVAROOT, CLASSPATH_ENV): Define only the first time this am file is processed. (class%DIR%.stamp): Stamp file renamed ... (class%NDIR%.stamp): ... to this, so that the `dist_' and `nodist_' prefixes are stripped from the name of the stampfile. Adjust declaration of dependencies by using the new automake-generated internal variable `$(am__java_sources)'. In the rule, use `$@' as the name of the target, rather than hard-coding it. * tests/java.test: Update and extend. * tests/java-no-duplicate.test: New test. * tests/java-mix-dist-nodist.test: Likewise. * tests/java-compile-and-install.test: Likewise. * tests/java-clean.test: Likewise. * tests/java-sources.test: Likewise. * tests/Makefile.am (TESTS): Update. Cherry-picked from commit v1.11-337-gd76b503.
Stefano Lattarini 672fd935 2011-08-18T21:44:38 Merge branch 'maint' into python-work * maint: * THANKS (Daniel Richard G.): Update e-mail address. java: avoid compilation errors when CLASSPATH is empty parallel-tests: no more spurious successes for FreeBSD make hacking: we now require autoconf 2.68 test defs: more environment cleanup tests: fix spurious failure with Solaris make maintcheck: fix maintainer-check failures, both real and spurious docs: how to use '-I' option in AM_CPPFLAGS for best VPATH support tests: relax a test on amhello examples to cater to Solaris tar docs: add references between the 2 sections on java support Sync auxiliary files from upstream.
Daniel Richard G 720f0a2e 2011-08-16T15:19:14 java: avoid compilation errors when CLASSPATH is empty * lib/am/java.am (CLASSPATH_ENV): When redefining `$CLASSPATH', do not append an empty component in case the previous value of CLASSPATH is empty or unset. * tests/java-empty-classpath.test: New test. * tests/Makefile.am (TESTS): Update. Fixes automake bug#9306.
Stefano Lattarini b3afcecf 2011-08-12T18:29:28 parallel-tests: no more spurious successes for FreeBSD make Work around a bug of FreeBSD make bug that was causing the automake-generated "check" target to complete with success even if some tests failed; this happened only when FreeBSD make was run in concurrent mode (as in, e.g., "make -j2 check"). The bug is not present in NetBSD make. This change fixes automake bug#9245: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9245> See also FreeBSD PR bin/159730: <http://www.freebsd.org/cgi/query-pr.cgi?pr=159730> * lib/am/check.am [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Use a more "safe" (and apparently redundant) idiom to exit with error, so that the non-zero exit status is picked up also by FreeBSD make when it's running in concurrent mode. * NEWS: Update. * tests/check-concurrency-bug9245.test: New test. * tests/Makefile.am (TESTS): Update.
Stefano Lattarini 527d34a6 2011-07-08T14:34:50 Merge branch 'maint' into python-work * maint: fix typo in recent ChangeLog entry docs, tests: synchronize examples on silent-rules from config.site tests: fix weakness in 'tests-environment-backcompat.test' tests: portability fixes in tests on amhello examples remake: add test ensuring that slower remakes don't hang remake: fix outdated comment in configure.am docs, tests: synchronize examples from docs to tests cosmetics: fix typos in recent ChangeLog entries
Stefano Lattarini 8c7c3b59 2011-07-04T11:44:39 Merge branch 'remake-rules-non-GNU-make' into maint * remake-rules-non-GNU-make: remake: add test ensuring that slower remakes don't hang remake: fix outdated comment in configure.am
Stefano Lattarini f8cb3653 2011-07-04T10:54:02 remake: fix outdated comment in configure.am * lib/am/configure.am: Fix comment falsified by changes in commit `v1.11-366-gbee9871'. Suggestion by Ralf Wildenhues.
Stefano Lattarini 9f107659 2011-06-28T11:49:24 Merge branch 'maint' into python-work * maint: docs: avoid a footnote, some related rewordings and improvements Revert "docs: parallel-tests is not experimental anymore" docs: minor cosmetic fixes help: improve text about automatically-distributed files refactor: split 'usage' subroutine in automake tests: fix bug in 'autodist.test' maintcheck: extend 'sc_tests_plain_*' checks maintcheck: avoid few spurious failures check: don't use multi-line coloring for the report ansi2knr: deprecate, it will go away in the next major release docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid docs: replace obsolete @vindex entry with a useful one docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases parallel-tests: stricter checks on DISABLE_HARD_ERRORS support docs: parallel-tests is not experimental anymore check: document and test $(TEST_SUITE_LOG) overriding
Bert Wesarg b8c2b699 2011-06-17T21:59:52 check: don't use multi-line coloring for the report "less -R" can't handle multi-line coloring as it is done for the check reports of the serial and parallel testsuite, because of performance reasons. Thus, color each line of the check report by its own. * lib/am/check.am (am__text_box): Accept colors for lines, and color each line by its own. [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Let am__text_box handle the line coloring. [!%?PARALLEL_TESTS%] $(check-TESTS): Color each report line by its own. * THANKS: Update.
Stefano Lattarini fc27b8fa 2011-06-16T17:23:31 Merge branch 'maint' into python-work * maint: news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS tests: optimize tests on primary/prefix mismatch for speed Warnings about primary/prefix mismatch fixed and extended. maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS docs: better documentation for silent make rules
Stefano Lattarini 97600392 2011-06-10T12:26:42 distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS * doc/automake.texi (Checking the Distribution): Suggest to use AM_DISTCHECK_CONFIGURE_FLAGS, not DISTCHECK_CONFIGURE_FLAGS, to define (in the top-level Makefile.am) extra flags to be passed to configure at "make distcheck" time; DISTCHECK_CONFIGURE_FLAGS should be reserved for the user. Add proper `@vindex' directive. Document that AM_DISTCHECK_CONFIGURE_FLAGS is not honoured in a subpackage Makefile.am, but the flags in it are passed down to the configure script of the subpackage. * lib/am/distdir.am (distcheck): Also pass the flags in $(AM_DISTCHECK_CONFIGURE_FLAGS) to the configure invocation. Update comments. * tests/defs.in.test (AM_DISTCHECK_CONFIGURE_FLAGS, DISTCHECK_CONFIGURE_FLAGS): Unset in case they are exported in the environment, they might improperly influence our testsuite. * tests/distcheck-configure-flags.test: New test. * tests/distcheck-configure-flags-am.test: Likewise. * tests/distcheck-configure-flags-subpkg.test: Likewise. * distcheck-hook.test: Likewise. * distcheck-hook2.test: Likewise. * tests/Makefile.am (TESTS): Update. Closes automake bug#8487.
Stefano Lattarini dd8b570a 2011-06-08T14:55:01 py-compile: the '--destdir' option now accepts a blank argument * lib/py-compile (Option parsing): Do not count an empty argument to `--destdir' or `--basedir' as a missing argument. * lib/python.am: Simplify accordingly, passing the `--destdir' option to py-compile unconditionally, even if `$(DESTDIR)' is empty. * NEWS: Update.
Stefano Lattarini b46debf5 2011-06-08T14:33:49 python: run the 'py-compile' script with $(SHELL) * lib/python.am (install-%DIR%PYTHON): Run each instance of py-compile using $(SHELL). Since we are at it, break overly long lines. (am__py_compile): New variable, to reduce code duplication.
Stefano Lattarini 67ca6940 2011-06-01T18:58:35 Merge branch 'remake-rules-non-GNU-make' into maint
Stefano Lattarini 8a8890a9 2011-05-29T11:04:08 build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too Our build system allows the user to override AUTOCONF and AUTOHEADER at configure time, and honours these overrides in our testsuite. But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE. This change fixes that inconsistency. * configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New AC_SUBSTitutions. Update comments. * tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now. ($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'. ($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'. * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
Stefano Lattarini bee9871d 2011-05-29T15:24:58 remake: behave better with non-GNU make in subdirectories Currently, with every decent make program, it is possible to rebuild out-of-date autotools-generated files with a simple "make Makefile" -- but for this to work reliably with non-GNU make implementations, the command must be issued from the top-level directory. This patch removes such limitation. * lib/am/configure.am (am--refresh): Depend on `%MAKEFILE%'. * tests/defs.in (using_gmake): New function, backported from the `master' branch (and simplified). * tests/remake-subdir.test: New test. * tests/remake-subdir2.test: Likewise. * tests/remake-subdir-gnu.test: Likewise. * tests/remake-subdir-from-subdir.test: Likewise. * tests/Makefile.am (TESTS): Update.
Ralf Wildenhues e9b44d82 2011-01-22T11:16:06 Add comment to check-TESTS rule working around make 3.80 bug. * lib/am/check.am (check-TESTS): Update comment. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 080efc94 2011-01-16T13:48:17 parallel-tests: work around Tru64/OSF 5.1 sh read bugs. * lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html): Test file readability before redirecting input from it, to avoid exiting Tru64/OSF 5.1 sh which treats read as special builtin. * tests/parallel-tests-unreadable-log.test: New test. * tests/Makefile.am (TESTS): Update. * NEWS: Update. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 511ccb16 2011-01-02T05:31:41 Bump copyright years. * aclocal.in (write_aclocal, version): Bump copyright years. * automake.in (gen_copyright, version): Likewise. * doc/automake.texi: Likewise. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues a6da48d3 2010-11-14T17:53:49 Fix install-strip when $(STRIP) contains several words. * lib/am/install.am (install-strip): Update comment. Use separate sub-make invocations for empty and nonempty $(STRIP), to fix quoting issues. * tests/strip2.test, tests/strip3.test: New tests. * tests/Makefile.am (TESTS): Adjust. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues d7c1679b 2010-10-03T12:29:40 Fix and document rules to not touch the tree with `make -n'. * doc/automake.texi (Multiple Outputs): Document the problem of modifications during dry-run execution, propose solution. * NEWS: Update. * automake.in (lang_vala_finish_target): Split recipe so the stamp file is not removed with GNU `make -n'. (lang_yacc_target_hook): Separate removal of parser output file and header remaking. * lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was passed to make, take care not to remove any files in that case. * lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of %STAMP% file from induced remaking of config header. * tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test: New tests. * tests/Makefile.am (TESTS): Update. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues b8c1325a 2010-10-03T11:42:12 Document and fix expansion of variables before rules. * doc/automake.texi (General Operation): Document that variables are expanded before rules. * lib/am/check.am (am__check_post): Reword a bit so it does not get matched as a rule. Suggestion by Ben Pfaff. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 9e126f15 2010-10-02T18:38:34 Merge branch 'fix-tests-empty-regression' into maint * fix-tests-empty-regression: Revert "parallel-tests: avoid command-line length limit issue."
Ralf Wildenhues 614b643e 2010-09-26T09:21:14 Revert "parallel-tests: avoid command-line length limit issue." This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835, because it re-opened the bug fixed by v1.11-10-g218e678. 2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> parallel-tests: avoid command-line length limit issue. * automake.in (handle_tests): New argument $makefile, new substitution %MAKEFILE%. (generate_makefile): Adjust. * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass sanitized TEST_LOGS value as makefile snippet on standard input to $(MAKE), to avoid exceeding the command line limit on w32 (MSYS). * NEWS: Update. Report by Bob Friesenhahn. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini c423cdb4 2010-09-22T21:26:09 Remove obsolete .cvsignore files. * .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore, lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore, m4/.cvsignore, tests/.cvsignore: Files deleted. Even when using savannah's CVS readonly mirror there's no way to commit back to the real repository, so this files are not worth maintaining or keeping around.
Eric Blake 978dfcf5 2010-09-17T06:31:33 Avoid triple-space after period. * automake.in (handle_single_transform): Avoid 3 spaces at sentence end. * ChangeLog.03: Likewise. * lib/Automake/ChannelDefs.pm: Likewise. * lib/Automake/Channels.pm (_print_message): Likewise. * lib/Automake/Rule.pm (rule): Likewise. * lib/Automake/Variable.pm (var): Likewise. * lib/am/distdir.am: Likewise. * tests/insthook.test: Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
Ralf Wildenhues 24e3b4ee 2010-09-07T04:38:08 parallel-tests: avoid command-line length limit issue. * automake.in (handle_tests): New argument $makefile, new substitution %MAKEFILE%. (generate_makefile): Adjust. * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass sanitized TEST_LOGS value as makefile snippet on standard input to $(MAKE), to avoid exceeding the command line limit on w32 (MSYS). * NEWS: Update. Report by Bob Friesenhahn.
Ralf Wildenhues ccb31f6a 2010-09-07T04:35:49 Posix 2008 requires make to set errexit. * lib/am/check.am: Update comment.
Stefano Lattarini e7aa360a 2010-08-06T00:40:55 Work around a nasty bug (segfault) of Solaris make. * lib/am/check.am (recheck, recheck-html): Trim trailing spaces from $list, to avoid triggering a nasty bug (potential segfault) on Solaris make.
Ralf Wildenhues 97cab581 2010-06-06T10:53:03 Merge branch 'je-silent' into maint * je-silent: Relax silent-rules tests to cater to verbose makes. Fix silent-rules output for disabled dependency tracking.
Ralf Wildenhues b410859d 2010-04-11T19:43:20 Use -9 for maximum xz compression with dist-xz. * lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz. * NEWS, THANKS: Update. Report by Pavel Sanda. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Dmitry V. Levin dbfabdfc 2010-01-30T22:21:19 Fix exit status of signal handlers in shell scripts. The value of `$?' on entrance to signal handlers in shell scripts cannot be relied upon, so set the exit code explicitly to 128 + SIG<SIGNAL>. * lib/am/check.am (am__check_pre): Use `exit 143' in signal handler. * lib/elisp-comp: Likewise. * lib/install-sh: Likewise. * lib/ylwrap: Likewise. Also, fix script to trap signal 13, not 3. * NEWS, THANKS: Update. Bug report, analysis, and initial patch by Dmitry V. Levin. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues c150e6c8 2010-01-24T12:36:47 Fix silent-rules output for disabled dependency tracking. * lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable expansion code to also work in the case where %AMDEP% expands to FALSE at config.status time, using new substitution string %VERBOSE-NODEP%. * automake.in (verbose_nodep_flag): New function, appending `@am__nodep@' to the verbose-variable name. (handle_languages): If dependencies are not disabled, use it to set %VERBOSE-NODEP%. * m4/depend.m4: Substitute am__nodep as '_no', so the second verbose-variable will always expand to an empty string, if dependencies are enabled. * tests/silent5.test: Also test --disable-dependency-tracking; also test per-target flags for non-C language files. * tests/silent9.test: New test, like silent4.test but disable dependency tracking. * tests/Makefile.am: Adjust. * NEWS, THANKS: Update. Report by Dmitry V. Levin <ldv@altlinux.org>. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 72c9d14d 2010-01-17T12:08:19 Bump copyright years. * aclocal.in (write_aclocal, version): Bump copyright years. * automake.in (gen_copyright, version): Likewise. * doc/automake.texi: Likewise. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues f1175f85 2009-12-29T19:42:41 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Antonio Diaz Diaz 8fa396f2 2009-12-05T14:45:30 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Jim Meyering efb68994 2009-11-28T21:05:33 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.
Jim Meyering e58e5b45 2009-10-31T17:47:58 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues f6b3f7fb 2009-09-06T13:06:32 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 218e678b 2009-05-24T09:03:00 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 2505a3e3 2009-05-17T16:25:01 Version 1.11. * configure.ac: Bump version to 1.11. * doc/automake.texi (Releases): Add line for 1.11. Remove line for 1.10b. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues fcf2f560 2009-05-17T15:32:40 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 0e411a04 2009-05-17T12:03:47 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues de458bcc 2009-05-17T11:55:14 Fix typo in comment. * lib/am/install.am: Fix typo. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues b6bebfca 2009-05-03T09:59:21 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 553f13a3 2009-05-03T09:47:58 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 9fe82598 2009-05-03T09:32:44 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 3ebd4b8c 2009-04-25T10:48:11 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 68ce3ae9 2009-04-25T10:43:09 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues ad9df850 2009-04-19T08:09:13 Merge branch 'mh-vala-support' into next * mh-vala-support: More minor fixups to vala support. Improve Vala support. Minor fixups for Vala support. Support Vala in non-recursive builds; more tests and fixes. Initial support for the vala programming language.
Jürg Billeter 62796cb9 2009-04-05T15:16:48 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. Signed-off-by: Jürg Billeter <j@bitron.ch> Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 6c4b250d 2009-04-19T07:59:42 Merge branch 'next' (early part) into mh-vala-support * 'next' (early part): (135 commits) parallel-tests: LOG_COMPILER for tests without known extension. More node renaming in the manual. Fix instdir-java.test failure. Fix testsuite failures due to nonexistent `dirlist' entries. Fix typo in manual. Avoid test failure due to paranoid TAR_OPTIONS envvar setting. Use more common spelling in diagnostic: s/canonic/canonical/. Post-release version bump. Version 1.10b. Minor NEWS update. Reorganize nodes in the manual. Update AM_RECURSIVE_TARGETS for parallel-tests. parallel-tests: New target recheck-html. Rewrite maintainer-check in separate tests, parallelizable. Fix maintainer-check failure. Fix latex warning in manual. Sync auxiliary files from upstream. parallel-tests: redo lazy checking: recheck and RECHECK_LOGS. parallel-tests: do not mark check-TESTS as `.MAKE'. parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS. ...
Ralf Wildenhues babf1633 2009-04-10T13:31:28 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 79f2c3e2 2009-04-10T13:26:16 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 1692795d 2009-04-09T00:16:35 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues aea50a7d 2009-04-07T22:54:28 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues fcf4d469 2009-04-06T22:02:58 Remove superfluous line from recheck recheck-html. * lib/am/check.am (recheck recheck-html): Remove superfluous line, introduced bogusly in last commit. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Akim Demaille 68b7dc1d 2009-04-06T07:03:16 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 72bae12c 2009-03-31T00:54:04 Post-release version bump. * configure.ac, NEWS: Bump version to 1.10c. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues dd363d92 2009-03-29T23:23:16 Version 1.10b. * configure.ac, NEWS: Bump version to 1.10b. * doc/automake.texi (Releases): Add statistics for 1.10b. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues b6bcc69d 2009-03-29T01:23:30 Update AM_RECURSIVE_TARGETS for parallel-tests. * lib/am/check.am [PARALLEL_TESTS] (AM_RECURSIVE_TARGETS): Add check, recheck, check-html, recheck-html. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 1c503be3 2009-03-29T01:21:01 Merge branch 'ad-parallel-tests' into next * ad-parallel-tests: parallel-tests: New target recheck-html. parallel-tests: redo lazy checking: recheck and RECHECK_LOGS. parallel-tests: do not mark check-TESTS as `.MAKE'. parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS. check-html: Always create HTML output, note conversion failure. parallel-tests: per-extension test driver: <EXT>_LOG_COMPILER. parallel-tests: also record logs of SKIPped tests. Minor optimization in parallel-tests text box creation.
Ralf Wildenhues 83b03f37 2009-03-29T01:17:51 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues fe936f64 2009-03-29T00:59:46 Merge branch 'master' into next * master: Rewrite maintainer-check in separate tests, parallelizable. Fix maintainer-check failure. Fix latex warning in manual. Sync auxiliary files from upstream. manual: minor cleanups. Sane (un)install for empty directory variables. Ensure that empty directory variables work with empty content variables. Use --tag=FC with libtool also for .f90 files. DISTFILES containing a directory and files in that directory. Fix a documentation typo. Define AM_RECURSIVE_TARGETS, for gnulib's GNUmakefile. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 8f33eec4 2009-03-28T22:58:34 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, and add another RECHECK_LOGS test. * tests/parallel-tests9.test: New test, test `recheck'. * tests/Makefile.am: Update. Suggestion and different implementation by Akim Demaille. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues c4e28424 2009-03-28T22:52:22 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'. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 868fb045 2009-03-28T21:01:43 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 66c2dcaa 2009-03-11T23:55:26 parallel-tests: per-extension test driver: <EXT>_LOG_COMPILER. For test files with extension <ext>, introduce the internal variable <EXT>_LOG_COMPILE, which expands to $(<EXT>_LOG_COMPILER) $(AM_<EXT>_LOG_FLAGS) $(<EXT>_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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 9bfd7e89 2009-03-28T18:04:48 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues df4f77d0 2009-03-11T21:03:00 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Peter Breitenlohner 3a12ed5e 2009-03-22T10:11:14 DISTFILES containing a directory and files in that directory. For PR automake/533: 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 9003cc9b 2009-03-22T09:53:19 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 64b35b50 2009-03-22T09:39:14 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues d4cc23b0 2009-03-14T11:14:38 Merge branch 'ad-parallel-tests' into next * ad-parallel-tests: Fix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recreation. Fix parallel-tests with empty $(TESTS) for BSD make. Mark check-html and check-TESTS as recursive for BSD make. Match XFAIL_TESTS correctly with Solaris make. Use append mode to capture parallel test output. parallel-tests: Fix summary output. Overhaul of tests/README. Documentation for the parallel-tests driver. New tests for `parallel-tests'. parallel-tests: Ensure backward-compatible semantics. Parallel test execution: new option `parallel-tests'.
Ralf Wildenhues 4c7f26e8 2009-03-11T20:36:14 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 67f40eda 2009-03-10T23:57:01 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 9e741eeb 2009-03-10T22:09:45 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues f6cc7d0f 2009-03-10T22:02:15 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 5a17fc03 2009-03-10T21:10:25 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Akim Demaille 9aa1e525 2009-03-08T11:29:03 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 semantics. Define macros TEST_EXTENSIONS, 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues cae4a474 2009-03-11T19:50:16 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues c65e0662 2009-03-10T22:59:00 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Jan Engelhardt e0bd4af1 2009-03-07T15:58:07 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues a88a2a27 2009-03-07T10:42:34 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 31a0b6b5 2009-03-07T09:00:19 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Peter Breitenlohner b3457376 2009-03-07T01:06:18 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues d22169ba 2009-03-01T16:51:34 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 55b11a93 2009-03-01T16:47:45 Fix comment typo. * lib/am/distdir.am (distcheck): Fix typo in comment. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues b74717c0 2009-01-20T20:58:48 Bump copyright years. * aclocal.in (write_aclocal, version): Bump copyright years. * automake.in (gen_copyright, version): Likewise. * doc/automake.texi: Likewise. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 0fb020fa 2008-12-21T22:38:37 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues e9a942a1 2008-11-27T21:46:36 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Jim Meyering 7e2cfbf0 2008-11-22T12:02:36 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Charles Wilson 454cbc4c 2008-11-11T23:34:47 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues d016ef1e 2008-11-04T22:42:23 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 937775c8 2008-10-26T19:29:25 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ralf Wildenhues 9c0bda62 2008-10-12T22:22:39 Nicer 'make dist' output. * lib/am/distdir.am (distdir): Hide the complex script used for computing the relative subdirs; echo the sub-make command. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
William Pursell 8f126edc 2008-10-12T21:51:18 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. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>