kc3-lang/automake

Branch :


Log

Author Commit Date CI Message
eaac33fe 2011-07-01 11:12:31 parallel-tests: simplify testsuite summary Prefer a more deterministic, "tabular" format for the testsuite summary, always listing the numbers of passed, failed, xfailed, xpassed, skipped and errored tests, even when these numbers are zero. This simplify the logic of testsuite summary creation, makes it more easily machine-parseable, and will probably allow for easier addition of new kinds of test results in the future. * lib/am/check.am (am__tty_colors_dummy): New make variable, to reduce code duplication. Extracted from previous versions of $(am__tty_colors), and extended by defining two new variables `$mgn' and `$brg'. [%?COLOR%, %!?COLOR%] (am__tty_colors): Use that new variable. (am__text_box): Delete, is not needed anymore. ($(TEST_SUITE_LOG)): Rewrite associated rules to implement the new testsuite summary format. * NEWS: Update. * tests/check10.test: Don't run with the parallel-tests harness too, that makes no sense anymore. * tests/color.test: Update and adjust. * tests/color2.test: Likewise. * tests/parallel-tests.test: Likewise. * tests/parallel-tests3.test: Likewise. * tests/parallel-tests6.test: Likewise. * tests/parallel-tests9.test: Likewise. * tests/parallel-tests-unreadable-log.test: Likewise. * tests/parallel-tests-empty-testlogs.test: Likewise. * tests/parallel-tests-log-override-recheck.test: Likewise. * tests/parallel-tests-no-spurious-summary.test: Likewise. * tests/test-driver-custom-multitest.test: Likewise. * tests/test-driver-end-test-results.test: Likewise. * tests/parallel-tests-no-color-in-log.test: New test. * tests/testsuite-summary-color.test: Likewise. * tests/testsuite-summary-count.test: Likewise. * tests/testsuite-summary-count-many.test: Likewise. * tests/testsuite-summary-reference-log.test: Likewise. * tests/testsuite-summary-checks.sh: New auxiliary script, used by the new tests above. * tests/extract-testsuite-summary: Likewise. * tests/trivial-test-driver: Optimize for speed when there are lots of of tests. * tests/Makefile.am (EXTRA_DIST): Distribute them. (testsuite-summary-color.log, testsuite-summary-count.log): Depend on them. (testsuite-summary-count-many.log): Depend on the auxiliary scripts 'trivial-test-driver' and 'extract-testsuite-summary'. (TESTS): Update.
15400bca 2011-06-30 14:55:43 parallel-tests: new recognized test result 'ERROR' * lib/am/check.am ($(TEST_SUITE_LOG)): Recognize a new test result `ERROR'. Use it when encountering unreadable test logs (previously a simple `FAIL' was used in this situations). * lib/test-driver: Set the global test result to `ERROR' when the test exit status is 99. When doing colorized output, color `ERROR' results in magenta. * doc/automake.texi (Log files generation and test results recording): Update by also listing `ERROR' among the list of valid `:test-results:' arguments. * NEWS: Update. * tests/trivial-test-driver: Update. * tests/parallel-tests.test: Likewise. * tests/parallel-tests-harderror.test: Likewise. * tests/parallel-tests-no-spurious-summary.test: Likewise. * tests/test-driver-global-log.test: Likewise. * tests/test-driver-recheck.test: Likewise. * tests/test-driver-custom-multitest-recheck.test: Likewise. * tests/test-driver-custom-multitest-recheck2.test: Likewise. * tests/test-driver-custom-multitest.test: Likewise. * tests/test-driver-custom-no-html.test: Likewise. * tests/test-driver-end-test-results.test: Likewise. * tests/color.test: Likewise. Also, make stricter, and also test from VPATH. * tests/color2.test: Likewise, and improve syncing with color.test. * tests/parallel-tests-exit-statuses.test: New test. * tests/parallel-tests-console-output.test: Likewise. * tests/Makefile.am (TESTS): Update.
61b2bb0d 2011-06-29 16:02:52 parallel-tests: make parsing of test results safer The new code for parsing the testsuite-generated `.log' files, as introduced in commit `v1.11-872-gc96b881', considers each `:test-result:' field anywhere in a `.log' file as a declaration of a test result, and accounts for it as such in the testsuite summary. Unfortunately this could easily cause spurious test failures being reported in the testsuite summary. This happened in practice with the Automake's own testsuite; for example: $ make check TESTS='check12-p.test'; echo exit: $? ... PASS: check12-p.test ===================================== 4 of 5 tests failed See tests/test-suite.log Please report to bug-automake@gnu.org ===================================== make[2]: *** [test-suite.log] Error 1 make: *** [check-am] Error 2 exit: 2 This change introduces a new special `:test-result:' "END", that, when seen, prevents the rest of the log file from being parsed. For more information, refer to the thread: <http://lists.gnu.org/archive/html/automake-patches/2011-06/msg00199.html> * lib/am/check.am ($(TEST_SUITE_LOG)): Stop the parsing of a log file as soon as the special ":test-result:END" directive is seen. Related changes and enhancements. * lib/test-driver: Protect the rest of the log after the result lined with a ":test-result:END" directive. * tests/parallel-tests-no-spurious-summary.test: New test. * tests/test-driver-end-test-results.test: Likewise. * tests/Makefile.am (TESTS): Update.
14027413 2011-06-22 21:59:34 docs: document custom test drivers and protocols * doc/automake.texi (Simple Tests): Note that the TESTS_ENVIRONMENT use suggested here is not portable to 'parallel-tests'. (Simple Tests using parallel-tests): Document new restrictions on the uses of TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT. (Custom Test Drivers): New section and node. (Overview of Custom Test Drivers Support): New subsection. (Declaring Custom Test Drivers in @file{Makefile.am}): Likewise. (APIs for Custom Test Drivers): Likewise. (Options): Update description of color-tests. * lib/am/check ($(TEST_SUITE_LOG)): Remove comments that have been moved into the manual. (recheck, recheck-html): Minor adjustments to better conform to the documentation (this should cause no semantic changes w.r.t. the former behaviour); minor improvements and extensions to existing comments. * tests/test-driver-create-log-dir.test: New test. * tests/test-driver-strip-vpath.test: Likewise. * tests/test-driver-global-log.test: Likewise. * tests/test-driver-recheck.test: Likewise. * tests/Makefile.am (TESTS): Update.
3605250b 2011-06-29 10:06:20 Merge branch 'master' into test-protocols * master: docs: explain why AM_TESTS_ENVIRONMENT must be semicolon-terminated docs: fix unportable example of AM_TESTS_ENVIRONMENT usage 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' parallel-tests: stricter checks on DISABLE_HARD_ERRORS support docs: parallel-tests is not experimental anymore check: document and test $(TEST_SUITE_LOG) overriding
47f596af 2011-06-29 09:53:31 Merge branch 'am-tests-environment' * am-tests-environment: docs: explain why AM_TESTS_ENVIRONMENT must be semicolon-terminated docs: fix unportable example of AM_TESTS_ENVIRONMENT usage
3e334a27 2011-06-29 09:44:14 docs: explain why AM_TESTS_ENVIRONMENT must be semicolon-terminated * doc/automake.texi (Simple Tests using parallel-tests): Ditto, and related adjustments. Suggestion by Ralf Wildenhues.
69bb2561 2011-06-23 19:05:44 docs: fix unportable example of AM_TESTS_ENVIRONMENT usage * doc/automake.texi (Simple Tests using parallel-tests): The old example on AM_TESTS_ENVIRONMENT relied on unportable shell features, and in particular didn't work with various Korn Shells (see also commit `v1.11-925-g29ca903'). Give another example, simpler this time, but still inspired to real-world usage (the GNU coreutils testsuite).
b1109e2f 2011-06-28 11:26:15 Merge branch 'maint' * maint: Revert "docs: parallel-tests is not experimental anymore" parallel-tests: stricter checks on DISABLE_HARD_ERRORS support docs: parallel-tests is not experimental anymore check: document and test $(TEST_SUITE_LOG) overriding
c9e39919 2011-06-28 08:15:21 Merge branch 'parallel-tests-maint' into maint * parallel-tests-maint: Revert "docs: parallel-tests is not experimental anymore" parallel-tests: stricter checks on DISABLE_HARD_ERRORS support docs: parallel-tests is not experimental anymore check: document and test $(TEST_SUITE_LOG) overriding
d4977609 2011-06-27 15:36:37 Merge branch 'maint' * maint: docs: avoid a footnote, some related rewordings and improvements docs: minor cosmetic fixes
404882ab 2011-06-23 23:31:27 docs: avoid a footnote, some related rewordings and improvements * doc/automake.texi (Dist): Reword the part about automatically distributed files to avoid a footnote. Since we are at it, extend a bit, and add an example and a reference to a relevant test case.
9667c39a 2011-06-24 09:15:14 Revert "docs: parallel-tests is not experimental anymore" This reverts commit a9eef973b5ea47cc3495f1a8307d4f7b85aea46f. It turned out that the current work to introduce TAP and SubUnit support in Automake-generated testsuite harnesses will probably require the introduction of slight incompatibilities in the 'parallel-tests' behaviour, starting from release 1.12 onward. So it's advisable to continue to characterize the 'parallel-tests' support as "experimental" in maintenance release 1.11.2. Suggestion from Ralf Wildenhues.
5755b7bc 2011-06-23 18:38:34 docs: minor cosmetic fixes * doc/automake.texi: Break few overly long lines, throughout the file. ("Simple Tests"): Move @vindex for XFAIL_TESTS to the correct position, i.e., before and not after the paragraph where it is introduced. ("Options" @item ansi2knr): Use @pxref instead of @xref. This fixes a texinfo warning. ("Other things Automake recognizes" @item AM_C_PROTOTYPES): Use @pxref instead of @ref.
1f2e5599 2011-06-23 10:52:08 Merge branch 'maint' * maint: help: improve text about automatically-distributed files refactor: split 'usage' subroutine in automake
c1040a74 2011-01-12 01:27:07 help: improve text about automatically-distributed files This change fixes automake bug#7819. * automake.in (usage): Distinguish between files that are always automatically distributed when found, and those which are only "under certain conditions". * doc/automake.texi (Basics of Distribution): Update accordingly. * tests/autodist-subdir.test: Update. * tests/autodist-no-duplicate.test: Likewise. * tests/autodist.test: Likewise. (configure.in): Remove useless call to AM_MAINTAINER_MODE.
94785660 2011-01-12 01:06:33 refactor: split 'usage' subroutine in automake This change is related to automake bug#7819. * automake.in (print_autodist_files): New subroutine, extracted from ... (usage): ... this, which now uses it. * tests/autodist-no-duplicate.test: New test. * tests/Makefile.am (TESTS): Update.
cb3e1296 2011-06-23 10:34:39 Merge branch 'maint' * maint: tests: fix bug in 'autodist.test'
72d36af2 2011-06-23 10:32:12 tests: fix bug in 'autodist.test' * tests/autodist.test: Avoid spurious failure due to no `defs-static' file being found in the parent directory.
c96b881f 2011-06-03 22:50:56 parallel-tests: allow each test to have multiple results With this change, we improve the code creating the `test-suite.log' global log and the console testsuite summary to make it able to grasp multiple results per test script. This is required in order to introduce the planned support for test protocols, like TAP and SubUnit, which can indeed run multiple tests per test script, each with its individual result. The implementation makes use of a custom reStructuredText field `:test-result:'. Note that no new documentation is added by this change; that is be left for follow-up changes. * lib/check.am ($(TEST_SUITE_LOG)): When processing .log files, recognize a report of a test's result only if it is declared with the custom `:test-result:' reStructuredText field placed at the beginning of a line. Extend and add explanatory comments. (recheck, recheck-html): Add explanatory comments. * lib/test-driver: Write an appropriate reStructuredText field `:test-result:' in the generated log file. Use a reStructuredText transition to better separate the test outcome report from the test script's registered output. Improve comments. * tests/test-driver-custom-xfail-tests.test: Adjust. * tests/parallel-tests7.test: Adjust. * tests/parallel-tests-empty-testlogs.test: New test. * tests/parallel-tests-recheck-override.test: Likewise. * tests/parallel-tests2.test: Extend and keep more in-sync with ... * tests/test-driver-custom-html.test: ... this new related test. * tests/test-driver-custom-no-html.test: New test. * tests/test-driver-custom-multitest.test: Likewise. * tests/test-driver-custom-multitest-recheck.test: Likewise. * tests/test-driver-custom-multitest-recheck2.test: Likewise. * tests/trivial-test-driver: New file, used by the last four tests above. * tests/Makefile.am (TESTS): Update. (EXTRA_DIST): Distribute `trivial-test-driver'. (test-driver-custom-multitest.log): Depend on `trivial-test-driver'. (test-driver-custom-multitest-recheck.log): Likewise. (test-driver-custom-multitest-recheck2.log): Likewise. (test-driver-custom-html.log): Likewise.
79922343 2011-05-20 21:45:51 parallel-tests: allow custom driver scripts Allow suffix-based definition of custom "driver script" for the test scripts. These driver scripts will be responsible of launching the tests (or their corresponding $(LOG_COMPILER), if they have an associated one), interpreting and displaying the test results, and writing the `.log' files. This new API should allow easy and flexible use of different test protocols in the future; in particular, we plan to use it to implement TAP and SubUnit harnesses. Note that no new documentation is added by this change; that is be left for follow-up changes. * automake.in (handle_tests): Define default for $(LOG_DRIVER), and, for any registered test extension `<ext>', define defaults for $(<ext>_LOG_DRIVER). Substitute %DRIVER% using these new variables, instead of the old internal $(am__test_driver). When processing check2.am, also substitute %DRIVER_FLAGS%. Require auxiliary script `test-driver' only if no driver has been explicitly defined for the test script kinds. * am/check2.am (?GENERIC?%EXT%$(EXEEXT).log, ?GENERIC?%EXT%.log, ?!GENERIC?%OBJ%): Pass the %DRIVER_FLAGS% to the %DRIVER% call. * tests/parallel-tests-no-extra-driver.test: New test. * tests/test-driver-custom.test: Likewise. * tests/test-driver-custom-xfail-tests.test: Likewise. * tests/test-driver-fail.test: Likewise. * tests/Makefile.am: Update. * NEWS: Update.
a27c9c49 2011-05-10 11:30:05 parallel-tests: add auxiliary script 'test-driver', refactor This refactoring should cause no API of functionality change, and is meant only to simplify the future implementation of TAP and SubUnit testsuite drivers. More precisely, our roadmap is to move most of the "testsuite driving" features out of the Automake-generated Makefiles, and into external scripts with well-defined interfaces. This will allow the user to define its own personalized testsuite drivers, and will also offer us a framework upon which to implement our new TAP and SubUnit drivers, all in a very unobtrusive way and retaining an high degree of code reuse and backward-compatibility. * lib/test-driver: New auxiliary script. * lib/Makefile.am (dist_SCRIPT_DATA): Add it. * automake.in (handle_tests): Require the new auxiliary script `test-driver', and define a new internal makefile variable `$(am__test_driver)', used to call it. Perform new substitution on `DRIVER' when processing the `check2.am' file. * lib/check.am (am__tty_colors): Define new shell variable `$am__color_tests'. (am__rst_section): Removed, its role taken over by the new `test-driver' script. (am__test_driver_flags): New variable, contains the command line options passed to `test-driver'. (am__check_pre): Do not deal with temporary files and exit traps anymore, as the `test-driver' script takes care of that now. Define shell variable `$am__enable_hard_errors', used by `$(am__test_driver_flags)'. Reorder so that we don't need to save and restore the value of the `TERM' environment variable anymore. Other related adjustments. (am__check_post): Remove, as its role has been completely taken over by the `test-driver' script. * am/check2.am (?GENERIC?%EXT%$(EXEEXT).log, ?GENERIC?%EXT%.log, ?!GENERIC?%OBJ%): Call the test script through the Automake substituted `%DRIVER%', and honor the command-line options in `$(am__test_driver_flags)'. Do not call the obsoleted `$(am__check_post)' anymore. * doc/automake.texi (Auxiliary Programs): Mention the new `test-driver' script. (Optional): Mention `test-driver' in AC_CONFIG_AUX_DIR. Since we are at it, break the list of auxiliary scripts by placing one per line, to simplify potential future additions of new scripts. * tests/check.test: Adjust. * tests/check2.test : Likewise. * tests/check3.test : Likewise. * tests/check4.test : Likewise. * tests/check10.test: Likewise. * tests/color.test: Likewise. * tests/color2.test: Likewise. * tests/comment9.test: Likewise. * tests/dejagnu.test: Likewise. * tests/exeext4.test: Likewise. * tests/maken3.test: Likewise. * tests/maken4.test: Likewise. * tests/parallel-tests-interrupt.test: Likewise. * tests/posixsubst-tests.test: Likewise. * tests/repeated-options.test: Likewise. * tests/check-no-test-driver.test: New test. * tests/parallel-test-driver-install.test: Likewise. * tests/Makefile.am (TESTS): Update. * NEWS: Update.
555ce8b7 2011-06-21 22:24:26 Merge branch 'maint'
1c3614c6 2011-06-20 23:52:34 maintcheck: extend 'sc_tests_plain_*' checks * Makefile.am (sc_tests_plain_autom4te): New check. (sc_tests_plain_autoreconf): Likewise. (sc_tests_plain_autoheader): Likewise. (syntax_check_rules): Update.
1e005df1 2011-06-21 13:17:50 tests: interactions between TESTS_ENVIRONMENT and LOG_COMPILER * tests/tests-environment-and-log-compiler.test: New test, checking that we can use variables and functions set by TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER and LOG_FLAGS (for tests both with and without registered extensions). * tests/Makefile.am (TESTS): Update.
975cae17 2011-06-20 17:00:37 Merge branch 'maint' * maint: maintcheck: avoid few spurious failures
42a9c4db 2011-06-20 16:42:10 maintcheck: avoid few spurious failures * Makefile.am (sc_tests_plain_aclocal, sc_tests_plain_perl, sc_tests_plain_autoconf, sc_tests_plain_automake, sc_tests_plain_autoupate): Be stricter in matching an erroneous literal command, i.e., `aclocal', `automake', `perl', etc.
9b614944 2011-06-20 10:49:09 Merge branch 'maint' into parallel-tests-maint * maint: 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
583daa1e 2011-06-20 10:46:09 Merge branch 'maint' * maint: 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
b8c2b699 2011-06-17 21: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.
60cd9bc0 2011-06-20 09:43:25 Merge branch 'am-distcheck-configure-flags' into maint
98fab124 2011-06-13 21:27:35 ansi2knr: deprecate, it will go away in the next major release * doc/automake.texi: Loudly and repeatedly state that the old de-ANSI-fication features are now deprecated and will be removed in the next major Automake release. Other related adjustments. * lib/Automake/Options.pm (_process_option_list ): Give a warning in the `obsolete' category when the `ansi2knr' option is used. * m4/protos.m4 (AM_C_PROTOTYPES): Deprecate this macro: a warning in the `obsolete' category will be emitted it if is used. * tests/ansi2knr-deprecation.test: New test. * tests/Makefile.am (TESTS): Update. * tests/ansi.test: Adjust, by calling autoconf and/or automake with the `-Wno-obsolete' flag. * tests/ansi10.test: Likewise. * tests/ansi2.test: Likewise. * tests/ansi3.test: Likewise. * tests/ansi3b.test: Likewise. * tests/ansi4.test: Likewise. * tests/ansi5.test: Likewise. * tests/ansi6.test: Likewise. * tests/ansi7.test: Likewise. * tests/ansi8.test: Likewise. * tests/ansi9.test: Likewise. * tests/cxxansi.test: Likewise. * tests/libobj8.test: Likewise. * NEWS: Update about the future planned backward-incompatibility due to the removal of de-ANSI-fication feature.
f541f9a4 2011-06-19 13:15:49 docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid * doc/automake.texi (Program Sources): pkglib_PROGRAMS is not a valid combination anymore, so don't document it. Inconsistency introduced in commit `v1.11-373-g9ca6326'.
d30f97d1 2011-06-19 12:32:59 docs: replace obsolete @vindex entry with a useful one * doc/automake.texi (Program Sources): Do not index obsolete pkglib_PROGRAMS here. Do index pkglibexec_PROGRAMS.
3fbe45da 2011-06-18 19:16:41 Merge branch 'test-fd-redirect' * test-fd-redirect: tests: more checks on portable fd redirection in TESTS_ENVIRONMENT
51f59fc2 2011-06-18 14:53:08 tests: more checks on portable fd redirection in TESTS_ENVIRONMENT * tests/tests-environment-fd-redirect.test: Extend by also using a perl script among the tests. Run the test shell script with the `errexit' flag active. Export `VERBOSE' to yes when running "make check", to give more debugging information in case of failures. Look for a Korn Shell also in `/usr/bin', not on only in `/bin'.
474aad06 2011-06-15 10:50:03 docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases * doc/automake.texi (Checking the Distribution): Explain that the developers should take care of making their code buildable without requiring any special configure options, so that in general AM_DISTCHECK_CONFIGURE_FLAGS shouldn't be used. Give an example of where its use is legitimate.
e8bcc480 2011-06-16 17:21:00 Merge branch 'maint' into parallel-tests-maint * 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
43d62e07 2011-06-16 16:56:36 Merge branch 'maint' * 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
ecebc6c2 2011-06-14 09:41:14 tests: check portable fd redirection in TESTS_ENVIRONMENT * tests/tests-environment-fd-redirect.test: New test. * tests/Makefile.am (TESTS): Update. Motivated by coreutils bug#8846: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8846> See also following CC:ed thread on bug-autoconf list: <http://lists.gnu.org/archive/html/bug-autoconf/2011-06/msg00002.html>
5cfe77c6 2011-06-16 10:29:32 Merge branch 'more-prefix-primary-diagnostic' into maint
fefc6a06 2011-06-13 21:42:06 Merge branch 'am-distcheck-configure-flags' into maint * am-distcheck-configure-flags: news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS
5aad6b25 2011-06-13 21:40:57 news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS * NEWS (Miscellaneous changes): Update.
66249f44 2011-06-13 20:16:16 Merge branch 'am-distcheck-configure-flags' into maint * am-distcheck-configure-flags: maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS
73f8daa0 2011-06-13 11:07:20 Merge branch 'silent-rules-doc' into maint
ed078daa 2011-06-13 10:51:57 tests: optimize tests on primary/prefix mismatch for speed * tests/primary-prefix-invalid-couples.test: Partial rewrite, in order to use just a single automake invocation rather than one invocation for each invalid primary/prefix couple. This improves the test script execution time by an order of magnitude. Since we are at it, throw in some other improvements to avoid unrelated automake warnings and failures that could potentially cause false positives w.r.t. the automake exit status.
9ca63264 2010-12-16 19:23:06 Warnings about primary/prefix mismatch fixed and extended. * automake.in (%standard_prefix): Add `doc' and `locale'. Rename `pkgdatadir' to `pkgdata'. Similarly for`pkglibdir', `pkgincludedir' and `pkglibexecdir'. (handle_programs): List `pkglibexec', not `pkglib', among the prefixes valid for the `PROGRAMS' primary. (handle_data): List also `doc' among the prefixes valid for the `DATA' primary. This is required by automake's own build system. * tests/dirforbid.test: Test removed, superseded by ... * tests/primary-prefix-invalid-couples.test: ... this new test. * tests/primary-prefix-valid-couples.test: New test. * tests/primary-prefix-documented-valid.test: Likewise. * tests/primary-prefix-force-valid.test: Likewise. * tests/java3.test: Adjusted, and extended a bit. * tests/Makefile.am (TESTS): Updated. * NEWS: Updated. From a report by Eric Blake.
4e9474e6 2011-06-11 12:52:51 Merge branch 'maint' into parallel-tests-maint * maint: test defs: new function 'fatal_', for hard errors
2ea27177 2011-06-11 12:47:56 Merge branch 'maint' * maint: test defs: new function 'fatal_', for hard errors
f84f54f5 2011-06-10 17:13:17 maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline * Makefile.am (sc_tests_overriding_macros_on_cmdline): It's now acceptable that the test scripts override DISTCHECK_CONFIGURE_FLAGS on the make command line. Update comments accordingly. Since we are at it, make the relevant grepping rules slightly tighter.
97600392 2011-06-10 12: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.
f4599943 2010-11-12 20:26:59 docs: better documentation for silent make rules * doc/automake.texi (Options): Detailed description of the automake option `silent-rules' moved from here ... (Silent Make): ... into this new chapter, expanded, improved, and subdivided into ... (Make verbosity, Tricks For Silencing Make, Automake silent-rules Option): ... these new sections. (@menu, @detailmenu): Update. * tests/silent-configsite.test: New test, checking that the user can control default mode of silent-rules from config.site, as is documented in the manual. * tests/Makefile.am (TESTS): Updated.
5b7c6b4c 2011-06-07 15:24:11 test defs: new function 'fatal_', for hard errors Before this patch, the only way offered by tests/defs to properly signal a hard error was the `framework_failure_' function. But the error message issued by that function, as its name would suggest, refers to a set-up failure in the testsuite, while hard errors can obviously also be due to other reasons. The best way to fix this inconsistency is to introduce a new function with a more general error message. Inspired by a recent similar change to Gnulib's tests/init.sh. * tests/defs.in (fatal_): New function. * tests/README (Section "Writing test cases" subsection "Do"): Suggest the use of `fatal_', not of `framework_failure_', for generic hard errors. The latter should be reserved for "real" set-up failures.
88282bad 2011-06-08 10:03:29 Merge branch 'fix-auxdir2-test'
f1988056 2011-06-05 21:44:53 tests: fix typo-related error in auxdir2.test * tests/auxdir2.test (configure.in): Close m4 quoting in the argument to AC_CONFIG_AUX_DIR. Without this, aclocal fails with "ERROR: end of file in string". This problem hasn't been exposed by the testsuite before because this test is in XFAIL_TESTS, so its failure went unnoticed, even if it was due to a wrong cause. Bug introduced in commit v1.11-249-g49ac3de.
e4a70cff 2011-06-03 11:37:46 Merge branch 'maint' into parallel-tests-maint * maint: maintcheck: fix some failures, extend some checks automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too remake: behave better with non-GNU make in subdirectories tests/README: fix example about `make -e' usage
07d878b4 2011-06-02 12:47:58 maintcheck: fix some more failures * tests/instdir-ltlib.test: Use creative quoting to avoid spuriously triggering the `sc_rm_minus_f' maintainer check. * tests/instdir-prog.test: Likewise. * tests/instspc-data.test: Use creative quoting to avoid spuriously triggering the `sc_tests_Exit_not_exit' maintainer check.
8217b623 2011-06-02 12:17:40 Merge branch 'maint' * maint: maintcheck: fix some failures, extend some checks
24b9022b 2011-06-02 12:15:52 maintcheck: fix some failures, extend some checks * Makefile.am (sc_diff_automake_in_automake): Update, as we now expect 9 lines, not 8, to be changed from `automake.in' to `automake'. (sc_diff_aclocal_in_aclocal): New maintainer check, similar to the above, and checking that only 10 lines are changed from `aclocal.in' to `aclocal'. (syntax_check_rules): Update. (sc_tests_Exit_not_exit): Exempt self tests `self-check-*.test' from this check, as they can legitimately use the bare `exit' builtin in various places. * doc/automake.texi (Python): Remove stray `@' from the end of a line. Typo introduced in commit `v1.11-312-g5bf7af6'. * tests/depcomp8a.test: Pass DISTCHECK_CONFIGURE_FLAGS to make from the environment rather than from the command line, to pacify the `sc_tests_overriding_macros_on_cmdline' maintainer check. * tests/depcomp8b.test: Likewise.
2aa8c8e8 2011-06-01 19:37:18 Merge branch 'maint' * maint: remake: behave better with non-GNU make in subdirectories
67ca6940 2011-06-01 18:58:35 Merge branch 'remake-rules-non-GNU-make' into maint
3eb05919 2011-05-31 18:03:48 Merge branch 'maint' * maint: automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too tests/README: fix example about `make -e' usage
d235db33 2011-05-29 10:42:00 automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE Currently, the Automake's own configure script allow definition of AUTOCONF and AUTOM4TE, expected to point respectively to an autoconf and autom4te programs. But while these definitions are honoured in the Automake's build systems and test suite, they were *not* honoured in the generated `automake' and `aclocal' scripts. This behaviour, apart from being wrong in that it does not allow the user enough freedom in choosing his tools, also caused inconsistencies in the test suite, brining to spurious failures. Problem reported by Graham Reitz on the automake list; see thread: <http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html> * automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'. * aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'. * Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and `@am_AUTOM4TE'. * NEWS: Update. * THANKS: Update.
8a8890a9 2011-05-29 11: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.
bee9871d 2011-05-29 15: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.
1e18d5d0 2011-05-27 10:20:25 testsuite: each test case depends on `defs-static' * tests/Makefile.am ($(TEST_LOGS)): Depends on `defs-static' too. Simplify comments.
aa6883fd 2011-05-22 19:02:27 tests/README: fix example about `make -e' usage * tests/README (Section "Writing test cases" subsection "Do"): When some variable is never initialized in the Makefile, `-e' is not necessary in order to override it. DESTDIR is such a variable: we ensure that we do not ever initialize it. And as such, it is quite portable to use: $ make DESTDIR=/foo/bar install and in fact, quite widely used. So our example about when `make -e' is required, which references the `DESTDIR' variable, is poorly chosen, if not downright wrong. Rewrite it to use `prefix' as the overridden variable instead.
f31a38ae 2011-05-22 09:35:17 parallel-tests: stricter checks on DISABLE_HARD_ERRORS support * tests/parallel-tests-harderror.test: New test, doing more in-depth checks on DISABLE_HARD_ERRORS. * tests/parallel-tests.test: Remove tests on DISABLE_HARD_ERRORS, now redundant. * tests/Makefile.am (TESTS): Update.
5c237a62 2011-05-21 00:16:25 Merge branch 'maint' into parallel-tests-maint * maint: testsuite: avoid re-running few tests with 'parallel-tests' option testsuite: allow tests to avoid the use of 'parallel-tests' option tests/README: update obsoleted advice test defs: rename requirement 'non-cross' -> 'native' testsuite: be more cross-compile friendly
0f0c60a4 2011-05-20 23:33:09 Merge branch 'maint' * maint: testsuite: avoid re-running few tests with 'parallel-tests' option testsuite: allow tests to avoid the use of 'parallel-tests' option tests/README: update obsoleted advice
82fc4d35 2011-05-20 23:18:39 testsuite: avoid re-running few tests with 'parallel-tests' option Some tests in our testsuite use the 'simple-tests' driver only marginally, or simply as a mean to conveniently check unrelated invariants. It makes little sense to force these tests to also run with the 'parallel-tests' Automake option active, as doing so offers no real gain in coverage, while often causing a measurable overhead in execution time (for an already too-slow testsuite). * tests/pr401.test (parallel_tests): Define to "no", to prevent the generation of a sibling test script using the 'parallel-tests' driver. * tests/pr401b.test: Likewise. * tests/pr401c.test: Likewise.
3352b4e8 2011-05-20 22:31:40 testsuite: allow tests to avoid the use of 'parallel-tests' option * tests/gen-parallel-tests: Do not generate "siblings" for tests that explicitly define the `parallel_tests', whether to "yes" or to any other value. Extend heading comments to give a rationale for this behaviour. * tests/README: Update.
0f53bd10 2011-05-20 22:15:32 tests/README: update obsoleted advice * tests/README (Section "Writing test cases" subsection "Do"): Do not suggest to use the `*-p.test' pattern for the names of hand-written tests which use the `parallel-tests' Automake option. Not only is this not respected by the existing tests, but it is more likely to cause conflicts with auto-generated tests. So, suggest to *avoid* using the `*-p.test' pattern in names of hand-written tests instead. (Section "Writing test cases" subsection "Do not"): When suggesting not to override Makefile variables using command line arguments, do not use the badly outdated variables `U' and 'ANSI2KNR' in the example; instead, use the more common and typical `DESTDIR'.
ab513a9f 2011-05-19 21:53:02 Merge branch 'maint' * maint: test defs: rename requirement 'non-cross' -> 'native'
2fec9f09 2011-05-19 21:48:27 test defs: rename requirement 'non-cross' -> 'native' * tests/defs.in (non-cross): Rename requirement ... (native): ... to this, which is clearer and fits the existing lingo better. Suggestion by Ralf Wildenhues.
68e69411 2011-05-15 15:35:27 Merge branch 'maint' * maint: testsuite: be more cross-compile friendly
daa946a4 2011-05-15 14:30:43 testsuite: be more cross-compile friendly * tests/defs.in (cross_compiling): New subroutine. (am__tool_prefix): New internal variable. (gcc, g++, gcj): Force the use of the correct "tool prefix" when cross compiling. (gfortran, g77, non-cross): New requirements.
670146ae 2011-05-15 14:41:57 Merge branch 'test-repeated-options-portability-fix'
63796a15 2011-05-15 14:41:35 tests: fix portability issues in 'repeated-options.test' * tests/repeated-options.test: Do not assume that object files have `.o' suffix and executables have no default suffix; instead, use `$(OBJEXT)' and `$(EXEEXT)'.
a9eef973 2011-05-11 16:01:52 docs: parallel-tests is not experimental anymore The parallel-tests driver has now been used quite extensively by a fair number of real-world applications (e.g., GNU coreutils, GNU libtool, GNU grep, and various packages using Gnulib), and thus exposed to adequate on-field testing. So there's no point in declaring it experimental anymore (which would risk to make potential users shy away from it). * doc/automake.texi (Simple Tests using parallel-tests): Do not declare the parallel-tests driver as "experimental" anymore.
42a46524 2011-04-21 10:25:01 check: document and test $(TEST_SUITE_LOG) overriding * doc/automake.texi (Simple Tests using parallel-tests): Explain how and why TEST_SUITE_LOG can be overridden at runtime. * tests/parallel-tests-log-override-1.test: New test, check that the newly documented idiom and similar usages are truly supported. * tests/parallel-tests-log-override-2.test: Likewise. * tests/parallel-tests-log-override-recheck.test: Likewise. * tests/Makefile.am (TESTS): Update.
8e4e230f 2011-05-07 15:39:37 Merge branch 'maint' * maint: tests: fix spurious failure of txinfo21.test on FreeBSD
955eccc6 2011-05-07 15:23:57 Merge branch 'test-extradep-fix'
dac62e3f 2011-05-07 15:23:28 typofix in ChangeLog
d5142f9c 2011-05-07 15:10:14 Merge branch 'test-extradep-fix'
c92ac83b 2011-05-07 12:58:51 tests: fix spurious failure of extradep.test on FreeBSD * tests/extradep.test: When using `ls -t' to determine whether a file has been updated, make sure to use as reference a file whose timestamp is expected to be *strictly* older that that of the file being checked. This is required because at least FreeBSD `ls' do not sort files with the same timestamp in alphabetical order when using the `-t' option. * tests/extradep2.test: Likewise.
a370e2f5 2011-05-07 14:34:39 tests: fix spurious failure of txinfo21.test on FreeBSD * tests/txinfo21.test: Use the `is_newest' subroutine instead of the `ls -t' hack to to determine whether a file has been updated. This is required because at least FreeBSD `ls' do not sort files with the same timestamp in alphabetical order when using the `-t' option.
9644ebc6 2011-05-04 23:06:16 ChangeLog: some typofixes
48a53a53 2011-05-04 22:50:59 Merge branch 'maint'
293b93fc 2011-05-04 22:42:19 ChangeLog: various typofixes (and related reformatting)
0ab2e466 2011-05-04 22:21:53 Merge branch 'maint' With some edits to `tests/defs' and `ChangeLog', to reflect the fact that in master we already had a `yacc' requirement, and no more had an explicitly-recognized `bison' requirement.
1ada3973 2011-05-04 18:42:11 tests defs: allow requirements for compilers (mostly dummy) Most of the new requirements that are now accepted in `$required' as consequence of this patch are still dummy. They are planned to be implemented only in master (or in some derived branch), but having them here (even just as no-op) will allow for an easier integration/backporting of potential new testcases. * tests/defs.in (cc, c++, fortran, fortran77): New requirements, still dummy. (flex): New requirement, picking LEX for configure. (lex): New requirement, alias for `flex'. A more appropriate implementation, looking for a generic `lex' program, will follow in the future. (yacc): New requirement, alias for `bison'. A more appropriate implementation, looking for a generic `yacc' program, will follow in the future.
be569fea 2011-05-03 19:21:28 Merge branch 'tests-man-fixes'
6bf2c888 2011-05-03 19:19:13 tests: add forgotten test scripts to $(TESTS) * tests/Makefile.am (TESTS): Added test scripts man[678].test, which have been present on the filesystem and in the repository, but which had erroneously been left out from $(TESTS).
b96d850a 2011-05-03 18:24:29 tests: ensure verbose printing of captured make output * tests/libtool7.test: Ensure verbose printing of captured make output. * tests/libtool9.test: Likewise.
96f2b967 2011-05-03 00:27:07 tests: fix spurious failure in 'color2.test' * tests/color2.test: If $MAKE contains command-line arguments (as in e.g., "make -j2"), expect's directive "spawn $env(MAKE)" fails spuriously, because it tries to run "$MAKE" as a single command. Fix this with proper uses of the TCL `eval' builtin.
07fe4bf9 2011-05-01 15:54:46 tests: fix self check spurious failure with older bash versions * tests/self-check-cleanup.test: Add trailing `:' to the test code passed to $SHELL, otherwise older versions of bash (at least 2.05 and 3.2.39) fail to correctly remove the temporary directory in the exit trap.
26c19e64 2011-04-29 19:45:40 testsuite: more environment sanitization * tests/defs: Move the checks verifying that the variables `me', `parallel_tests' and `required' aren't set in the environment ... * tests/defs-static.in: ... in here, with some optimizations to avoid useless forks. Also, do the same checks for the variables `original_AUTOMAKE' and `original_ACLOCAL' too. * tests/self-check-env-sanitize.test: Update. * tests/Makefile.am (TESTS_ENVIRONMENT): Unset also variables `original_AUTOMAKE' and `original_ACLOCAL'.
15a34593 2011-04-24 18:09:30 Merge branch 'am-tests-environment-fix-merge'
6af0d20f 2011-04-24 18:08:44 tests: fix spurious failure (non-renamed AM_TESTS_SETUP usage) * tests/parallel-tests-reset-term.test: Use AM_TESTS_ENVIRONMENT instead of AM_TESTS_SETUP (which has been removed in commit v1.11-349-g12f48fa). Fix spurious failure introduced by merge `v1.11-781-gfeed175'.