tests/defs-static.in


Log

Author Commit Date CI Message
Jim Meyering 06b90179 2012-02-25T12:37:25 tests: avoid spurious failure when gcj is not installed Since yesterday's commit, v1.11-2019-g4d2bf42, the gcj4 test would fail when gcj is not installed. * tests/defs-static.in (GNU_GCJ, GNU_GCJFLAGS): Define. * tests/Makefile.am (do_subust): Add those to the list of substituted symbols.
Stefano Lattarini 5d9d10e0 2012-02-22T22:39:03 tests: looks for GNU compilers at configure time This way, if the generic C compiler determined configure time is recognized to be the GNU C compiler, we can reuse it instead of looking for a compiler named "gcc" (over and over again) in the test scripts requiring the GNU C compiler. Ditto for the C++, Fortran, and Fortran 77 compilers. This change will improve coverage by allowing us to more easily use non-default GNU compilers throughout the testsuite. And as a bonus, this change also removes a weakness from our testsuite that could cause spurious failures when flags passed to the generic compilers were erroneously reused for the GNU compilers; see automake bug#10859. * configure.ac: Look for the GNU compilers explicitly. Improve some configure output and diagnostic since we are at it. * tests/defs-static.in ($GNU_CC, $GNU_CXX, $GNU_FC, $GNU_F77): Initialize with the values determined at configure time (while allowing user overrides). * tests/Makefile.am (do_edit): Also substitute the configure-time values of GNU_CC, GNU_CXX, GNU_FC and GNU_F77. * tests/defs (gcc, g++, gfortran, g77): Use the values for the GNU compilers determined at configure time (i.e., $GNU_CC for the GNU C compiler, and so on).
Stefano Lattarini 5b44ce39 2012-02-23T13:07:57 tests: quote 'like this', not `like this', as per GCS recommendation This patch converts the automake testsuite and related files, to the use of new quoting format 'like this' or "like this" rather than `like this'. This is done for consistency with the new recommendations in the GNU Coding Standards, and, well, because I've come to actually prefer the '...' and "..." quoting formats over the `...' one. * tests/README: Update quoting format throughout. Remove some "excessive" use of quoting, and throw in minor rewording where appropriate. * tests/Makefile.am: Likewise, for comments. * tests/CheckListOfTests.am: Likewise. * tests/defs-static.in: Likewise. * tests/defs: Likewise. * tests/trivial-test-driver: Likewise. * Many tests/*.tap, tests/*.test and tests/*.sh files: Likewise, and for the diagnostic and informational messages as well. * tests/gen-testsuite-part: Likewise, and for the generated tests as well.
Stefano Lattarini db973eaa 2012-02-21T19:47:36 tests: prefer 'configure.ac' over 'configure.in' With this change, our testsuite now uses 'configure.ac' as the name for the typical autoconf input, instead of the obsolescent 'configure.in' (which has been deprecated for several years, at least since autoconf 2.50). Most of the test cases changed by this commit have been automatically modified with this sed command (using GNU sed): sed -i 's/\<configure\(\\\?\)\.in\>/configure\1.ac/g' * syntax-checks.mk (sc_tests_no_configure_in): New syntax check. (syntax_check_rules): Add it. * tests/defs: Create stub for autoconf input in 'configure.ac', not in 'configure.in'. Adjust comments. ($AUTOCONF, $AUTOHEADER, $AUTORECONF): Remove workaround for the infamous debian autoconf wrapper: we don't need such workaround anymore now that we name our autoconf input as 'configure.ac'. For more information, see commit v1.11-564-g63da492 "test defs: hack to support autoconf-wrapper programs" of 16-12-2011. * tests/README: Use 'configure.ac', not 'configure.in'. * Many many tests: Likewise. * tests/backcompat3.test: Adjust to avoid spurious failures. * tests/backcompat5.test: Likewise. * tests/missing6.test: Likewise. * tests/backcompat6.test: Likewise, and extend a bit since we are at it.
Stefano Lattarini a98e58ff 2012-02-17T15:20:03 tests: fix many spurious failures in VPATH builds The 'is' helper script, used by some test cases since commit 'v1.11-1830-g96401cb' of 08-02-2012, "tests: better way to compare lists in Makefile rules", is not available in VPATH builds, since it resides in $(srcdir), nor in $(builddir), and only $(builddir) is added to $PATH in the test script. This was causing spurious failures. Solve this issue by re-organizing a bit the layout and placing of wrapper and help scripts used by the testsuite. This reorganization is by no mean complete, but should be enough to solve the VPATH issues. * tests/is: Moved ... * tests/ax/is: ... here * tests/automake.in: Moved ... * tests/wrap/automake.in: ... here. * tests/aclocal.in: Moved ... * tests/wrap/aclocal.in: ... here. * tests/defs-static.in ($am_bindir, $PATH): Adjust. * configure.ac (AC_CONFIG_FILES): Likewise. * tests/Makefile.am (EXTRA_DIST, check_SCRIPTS): Likewise. * tests/get-sysconf.test: Likewise. * .gitignore: Likewise.
Stefano Lattarini 641a5a4b 2012-02-16T10:46:23 maint: run "make update-copyright"
Stefano Lattarini e6c40d4b 2012-02-12T15:06:17 Merge branch 'yacc-work' into yl-work-for-master * yacc-work: (37 commits) fixup: list of yacc/lex tests was botched tests: work around bug#7884 in many yacc/lex tests yacc/lex tests: remove an unneeded workaround for bug#8485 yacc/lex tests: avoid too much failures with FreeBSD make yacc-dist-nobuild.test: add reference to bug#7884 yacc tests: fix bug in 'yacc-cxx.test' lex tests: fix spurious link errors on Solaris lex: "make clean" removes .c files from non-distributed .l lex tests: make test on Lex dependency tracking more "semantic" lex tests: remove erroneous check about ylwrap distribution yacc tests: "make clean" removes C++ files from non-distributed .y tests: add a workaround for automake bug#8485 tests: add a couple of inter-tests reference lex tests: require just `lex' instead of `flex' fix typo in ChangeLog (2011-05-04) tests defs: use `skip_' for skipping yacc/lex related tests lex/yacc tests: remove redundant $distdir definition coverage: test lex-generated "#line" directives postprocessing tests: minor improvements to a couple of yacc tests tests: fix spurious failure in test 'yacc-d-cxx.test' ... + Extra non-trivial edits: * tests/defs.in: Delete; the differences from maint has been merged into 'tests/defs' and 'tests/defs-static.in'. * tests/defs (yacc, lex): Use 'skip_all_', not 'skip_', to skip the whole test case if yacc (resp. lex) is missing. (bison): New, set up the environment so that 'bison -y' will be used as the yacc program. (useless_vpath_rebuild, yl_distcheck): Moved in from 'tests/defs.in'. * tests/defs-static.in ($YACC, $LEX): Default to the values determined at configure time, and allow them to be overridden by the more namespace-safe variables '$AM_TESTSUITE_YACC' and '$AM_TESTSUITE_LEX' respectively. * tests/Makefile.am (do_subst): Also substitute '@YACC@' and '@LEX@'. * Several tests: Fix requirements declarations, by preferring 'lex' and 'yacc' over 'flex' and 'bison' whenever possible.
Stefano Lattarini 87f2058a 2012-02-02T19:07:51 test defs: fix typo in variable name ($AM_TESTSUITE_PERL) * tests/defs-static.in: Fix typo: it's '$AM_TESTSUITE_PERL', not '$AM_TESTUITE_PERL'.
Stefano Lattarini a354283e 2011-12-28T11:40:20 test defs: substitute compilers and flags found at configure time * tests/Makefile.am (do_subst): Also substitute CC, CXX, F77, FC, CPPFLAGS, CFLAGS, CXXFLAGS, FCFLAGS and FFLAGS. * tests/defs-static.in: Define those variables, allowing for overrides from the environment. * tests/defs (for tool in $required): Export (subsets of) those variables when the stuff in `$required' calls for it. Add related explanatory comments.
Stefano Lattarini 8de4149e 2011-12-28T11:40:20 test defs: setup `*FLAGS' variables for GNU compilers * configure.ac: Setup some `*FLAGS' variables for use by the GNU compilers in our testsuite. For example, use `GNU_CFLAGS' instead of `CFLAGS', and so on for similar variables. This is especially useful in case the compilers found or defined at configure time are not the GNU ones. * tests/defs-static.in: Initialize those same variables with the values set at configure time, but allowing overrides from the environment. * tests/Makefile.am (do_subst): Process configure-style substitutions of those variables (e.g., `@GNU_CFLAGS@'). * tests/defs: When a GNU compiler is required, override the corresponding generic `*FLAGS' variable with the GNU-specific variant (e.g., redefine `$CFLAGS' to take the value of `$GNU_CFLAGS').
Stefano Lattarini e3186cb4 2011-12-23T20:39:46 tests: few minor fixlets, improvements and tweakings * tests/defs-static.in ($top_testbuilddir): New, for consistency and completeness. * tests/Makefile.am (do_subst): Substitute @abs_top_testbuilddir@ as well. * tests/java-compile-run-mested.test: Prefer AM_TESTS_ENVIRONMENT over TESTS_ENVIRONMENT, now that the former has become available. * tests/java-compile-run-flat.test: Correct a botched "FIXME" comment. * tests/tap-realtime.test: Remove extra whitespace in comments. * tests/missing-tar.test: Use `get_shell_script' to bring in the `missing' script, to increase coverage. Remove redundant call to `set -e'. Fix a typo in comments. * tests/get-sysconf.test: Remove redundant definitions of `$top_testsrcdir', `testbuilddir' and `$top_testbuilddir'.
Stefano Lattarini 268d66ec 2011-12-20T14:16:25 Merge branch 'master' into testsuite-work
Stefano Lattarini c5f878ab 2011-12-20T14:14:08 Merge branch 'maint' * maint: test defs: hack to support autoconf-wrapper programs tests: fix a minor spurious failure with FreeBSD make tests: make two test scripts executable readme: reference webpages for automake mailing lists readme: update advice about testsuite execution readme: don't reference the old homepage at sources.redhat.com hacking: some more fixlets * NEWS: Fix typo in 'make dist-bzip2' description. release: don't run "make distcheck" automatically hacking: update on-line documentation for stable releases only hacking: described release procedure applies to beta releases too readme: the documentation is production quality now hacking: tell about platform-testers mailing list hacking: we don't use sources.redhat.com anymore hacking: miscellaneous minor fixes
Stefano Lattarini e00d6c98 2011-09-10T21:59:09 tests defs: more namespace-safeness ($using_tap): Renamed ... ($am_using_tap): ... to this. ($parallel_tests): Renamed ... ($am_parallel_tests): ... to this. ($test_prefer_config_shell): Renamed ... ($am_test_prefer_config_shell): ... to this. ($original_AUTOMAKE): Renamed ... ($am_original_AUTOMAKE): ... to this. ($original_ACLOCAL): Renamed ... ($am_original_ACLOCAL): ... to this. * tests/defs, tests/defs-static.in, tests/gen-testsuite-part, tests/README, and all callers: Adjusted. * tests/Makefile.am (AM_TESTS_ENVIRONMENT): Adjust, and rewrite to make future adjustments easier. * tests/defs (funcs_file_): Renamed ... (am_funcs_file): ... to this. * Makefile.am (sc_tests_obsolete_variables): New maintainer check. (syntax_check_rules): Add it.
Stefano Lattarini 3ceeef44 2011-09-08T23:26:09 tests: more granularity in variables for tools overriding Among the other things, this change makes it possible to use, at the same time, an autoconf version in the automake testsuite and another one in the automake build system; even more importantly, it makes it possible to use, say, a non-GNU make implementation in the test scripts, while at the same time using GNU make to drive the execution of the automake's test suite. * tests/defs-static.in (TEX, EGREP, FGREP, SHELL, PERL, MAKE, AUTOCONF, AUTOM4TE, AUTORECONF, AUTOHEADER, AUTOUPDATE, original_AUTOMAKE, original_ACLOCAL): Allow and prefer overriding through corresponding `AM_TESTSUITE_..' variables; for example, $GREP can now be overridden by an exported `$AM_TESTSUITE_GREP'
Stefano Lattarini 8ab0c949 2011-09-03T21:03:36 installcheck: support it in our own testsuite * NEWS: Update. * tests/defs-static.in ($am_running_installcheck): New variable. Initialize it to a default of "no", and sanity-check its value. ($am_datadir, $am_docdir, $am_automake_acdir, $am_system_acdir, $am_bindir, $am_scriptdir, $am_pkgvdir): New variables, initialized from AC_SUBST'ed values which are adaptively chosen depending on whether the testsuite is running in "simple" mode or in "installcheck" mode. ($MISSING): Remove, it's not really required by the testsuite. ($PATH): Update using `$am_bindir', not `$testbuilddir'. * Makefile.am (installcheck-local): New target. * lib/Automake/tests/Makefile.am (installcheck-local): New target. (AM_TESTS_ENVIRONMENT, AM_PL_LOG_FLAGS): Adaptively choose the `-I' flags for perl based on whether the tests are being run by "make check" or "make installcheck". * tests/Makefile.am (installcheck-local): New target. (defs-static): Generate it at make time, not at configure time, in order to correctly resolve all the indirections in the AC_SUBST'd variables; done with the help of ... (do_subst): ... this new macro. (EXTRA_DIST): Explicitly distribute `defs-static.in'. (CLEANFILES): Remove `defs-static'. * configure.ac (AC_CONFIG_FILES): Remove `tests/defs-static'. (AC_SUBST): Substitute also `automake_acdir', `system_acdir', `scriptdir' and `amdir' to proper values. * lib/Makefile.am (scriptdir): Don't explicitly define anymore. * lib/am/Makefile.am (amdir): Likewise. * m4/acdir/dirlist: Remove, it's not needed anymore. Instead use ... * m4/acdir/.placeholder: ... this file. * m4/Makefile.am (EXTRA_DIST): Update. (automake_acdir, system_acdir): Don't explicitly define anymore. * tests/aclocal-print-acdir.test: Use new `$am_...dir' variables, instead of hard-coding values with $testsrcdir and $testbuilddir, to test more faithfully under "make installcheck". * tests/amhello-binpkg.test: Likewise. * tests/amhello-cflags.test: Likewise. * tests/amhello-cross-compile.test: Likewise. * tests/ansi2knr-no-more.test: Likewise. * tests/autodist-stamp-vti.test: Likewise. * tests/auxdir.test: Likewise. * tests/check2.test: Likewise. * tests/copy.test: Likewise. * tests/multlib.test: Likewise. * tests/obsolete.test: Likewise. * tests/parallel-tests-interrupt.test: Likewise. * tests/repeated-options.test: Likewise. * tests/suffix5.test: Likewise. * tests/tap-doc2.test: Likewise. * tests/txinfo22.test: Likewise. * tests/vtexi3.test: Likewise. * tests/defs: Likewise. Also, print the values of `$using_tap' and `$am_running_installcheck', to simplify debugging, and do some related code movings and tweakings. * tests/aclocal3.test: Update to avoid possible spurious failures when running under "make installcheck". * tests/warnings-unknown.test: Likewise. * tests/location.test: Likewise, and improve debugging input since we are at it. * tests/acloca10.test: Adapt and tweak to work also during a "make installcheck", and not to require a pre-populated `dirlist' file. * tests/acloca18.test: Likewise. * tests/dirlist2.test: Likewise. * tests/dirlist.test: Likewise, and remove an obsolete comment. * tests/README: Update. * tests/dirlist-abspath.test: New test. * tests/list-of-tests.mk: Update.
Stefano Lattarini 371bdf6b 2011-09-06T11:02:38 Merge branch 'master' into test-protocols * master: * tests/amhello-binpkg.test: Add missing $EXEEXT usage. fix: list test 'vala-vpath.test' in XFAIL_TESTS tests: simplify wrapper for aclocal fix: minor typo in ChangeLog automake: fix regression due to de-ansification support removal coverage: vala support failing for VPATH from-scratch builds docs: report few more automake parsing limitations automake: cleanups after de-ansification support removal (2) automake: cleanups after de-ansification support removal (1) ansi: remove obsolete code/files for de-ANSI-fication support ansi: reject attempts to use automatic de-ANSI-fication support tests: remove tests about obsolete de-ANSI-fication support docs: remove description of de-ANSI-fication support from manual
Stefano Lattarini d6c60545 2011-09-02T21:58:54 Merge branch 'master' into testsuite-work * master: tests: simplify wrapper for aclocal
Stefano Lattarini 7ce19f11 2011-09-02T21:57:03 Merge branch 'maint' * maint: tests: simplify wrapper for aclocal
Stefano Lattarini f1c937ee 2011-08-29T11:09:18 tests: use both perl and awk implementations for tests on TAP * tests/gen-wrap-tests (get_list_for_pltap): New function, gets the list of tests that check the Automake TAP support. ($defines_for_pltap): New variable. ($wrapper_type_list): Add "pltap". * tests/defs-static.in: Check that `$am_tap_implementation' is not exported in the environment. * tests/self-check-env-sanitize.tap: Update.
Stefano Lattarini a8650c3e 2011-08-29T15:48:04 Merge branch 'test-protocols' into testsuite-work * test-protocols: tests: prefer AM_... variables to user-reserved ones in Makefile tests: some minor fixlets w.r.t. TAP-based tests tests: avoid re-running a test with the 'parallel-tests' option tests: defaults to awk+shell driver in tests on TAP support With minor manual edits to 'tests/Makefile.am' to complete the TAP_LOG_DRIVER_FLAGS -> AM_TAP_LOG_DRIVER_FLAGS rename.
Stefano Lattarini 4bcb63dc 2011-08-29T15:27:08 tests: some minor fixlets w.r.t. TAP-based tests The variable that is used by our test scripts to decide whether they are "plain" or TAP-based is `using_tap'; however, some peripheral sanity checks and sanitization code in our testsuite were erroneously using the `use_tap' variable instead. Fix that. * tests/Makefile.am (AM_TESTS_ENVIRONMENT): Nullify `using_tap', not `use_tap'. * tests/defs-static.in: Check that `using_tap', not `use_tap', is not exported. * tests/self-check-env-sanitize.test: Update.
Stefano Lattarini e3b6255f 2011-08-08T23:35:28 test defs: test directory creation more configurable After this change, the individual tests will be able to tell `./defs' whether or not to create a temporary test directory for them, and if yes, whether or not to pre-populate it. * tests/defs: Only create the temporary test directory if the variable `$am_create_testdir' is not set to "no". In this case, only pre-populate it if that variable is not set to `$empty'. * tests/defs-static.in: Check that `$am_create_testdir' is not exported in the environment. * tests/self-check-env-sanitize.test: Update. * tests/self-check-dir.test: Extend, and make deeper and more robust. * tests/README (Section "Writing test cases" subsection "Do"): Update. * tests/autodist.test: Set `$am_create_testdir' instead of removing by hand files created by ./defs. * tests/tap-doc2.test: Likewise.
Stefano Lattarini 53599ad1 2011-08-08T18:10:55 testsuite: drop redundant environment sanitization * tests/Makefile.am (TESTS_ENVIRONMENT): Don't remove `planned' from the environment. * tests/defs-static.in: Don't complain if `planned' is set in the environment. * tests/self-check-env-sanitize.test: Update.
Stefano Lattarini 0286308c 2011-08-07T09:42:48 testsuite: TAP tests can have early plan now * tests/defs: When using TAP, allow the user to specify the number of tests through the `$planned' variable. (trap): Do not print the auto-generated plan if an explicit one has already been printed. * tests/defs-static.in: Complain and bail out if the `$planned' variable is exported in the environment. Reformat the code to facilitate future additions. * tests/Makefile.am (TESTS_ENVIRONMENT): Neutralize `$planned'. * tests/self-check-env-sanitize.test: Update. * tests/ac-output-old.tap: Give an explicit TAP plan, by defining `$planned' just before including `./defs'. * tests/depmode.tap: Likewise. * tests/automake-cmdline.tap: Likewise. * tests/tap-bad-prog.tap: Likewise. * tests/instspc.tap: Likewise, and related adjustments. * tests/add-missing.tap: Make it explicit that we have no a-priori plan, and tell why.
Stefano Lattarini dffe171f 2011-08-03T15:46:02 Merge branch 'test-protocols' into tap-testsuite-work
Stefano Lattarini c349db06 2011-07-17T13:38:42 testsuite: scaffolding to allow use of TAP in our own tests Now that Automake has initial support for the TAP test protocol, we can start "eating our own dog food" and rewrite some tests to use TAP; this should allow for better granularity, especially in the control of skips and expected failures. With this change, we set up the initial scaffolding required by the planned TAP tests, and convert few older tests to use TAP, mostly in order to verify that there are no obvious errors. The tests in our testsuite that use the TAP protocol will be marked by the new `.tap' extension. * tests/plain-functions.sh: New file containing definition of helper shell functions used by the "protocol-less" tests of the Automake testsuite. * tests/tap-functions.sh: New file containing definition of helper shell functions used by the TAP-producing tests of the Automake testsuite. * tests/defs: Remove definitions of some functions that are now defined in `plain-functions.sh'. Instead, source one of `plain-functions.sh' or `tap-functions.sh', depending on whether `$use_tap' is set to "no" or "yes". (exit trap): Call `late_plan_' if `$use_tap' is true. Also, unset shell traces before issuing the latest commands, to avoid confusing the tap driver with spurious output. * tests/defs-static.in ($use_tap): New variable, by default set to "yes" if the calling test script has a `.tap' suffix, and to "no" otherwise. The individual scripts can override it though. In code sanity-checking the environment, verify that `$use_tap' is not exported. * tests/self-check-env-sanitize.test: Update, and small related reformatting. * tests/self-check-tap.test: New very minimal self test. * tests/acoutbs.test, tests/acoutbs2.test, tests/acoutnoq.test, tests/acoutpt.test, tests/acoutpt2.test, tests/acoutqnl.test: Removed, merged into ... * tests/ac-output-old.tap: ... this new test, that uses TAP. * tests/Makefile.am (TAP_LOG_DRIVER): Define to invoke our own `tap-driver' script. (TAP_LOG_DRIVER_FLAGS): Define to `--merge', so that the stdout and stderr of the test scripts remains synced. (TEST_EXTENSIONS): Define, to add the `.tap' suffix; also list the `.test' suffix explicitly. (EXTRA_DIST): Distribute the new files `plain-functions.sh' and `tap-functions.sh'. ($(TEST_LOGS)): Depends on them. (AM_TESTS_ENVIRONMENT): Ensure that `use_tap' is not exported in the environment of the tests. (TESTS): Update.
Stefano Lattarini 7df1a9bd 2011-06-06T16:12:59 tests: `lib/' shell scripts transparently tested also with $SHELL With the previous commit, the user could prefer the use of $SHELL over /bin/sh in some tests checking the Automake-provided shell scripts by manually exporting `test_prefer_config_shell' to "yes" in the environment. With this commit, we ensure that such tests *always* and *transparently* run using both $SHELL and /bin/sh to execute the checked scripts. The `test_prefer_config_shell' variable becomes an internal detail, and is no more meant to be manually defined or overridden. * tests/defs-static.in: Check that `test_prefer_config_shell' is not exported in the environment. Error out if this is the case. * tests/config-shell-tests.sh: New file, driver script to run checks on the shell scripts in `lib/' using the $SHELL determined at configure time instead of the default system shell /bin/sh. * Makefile.am (TESTS_EXTENSIONS): Add `.shtst'. (SHTST_LOG_COMPILER): Define, it calls `config-shell-tests.sh'. (config_shell_tests): Define to a list of tests that wraps other `*.test' tests using `config-shell-tests.sh'. ($(config_shell_tests)): Dummy dependency declaration required in order to have make actually produce expected log files from the `.shtst.log' suffix rule. (EXTRA_DIST): Distribute `config-shell-tests.sh'. (TESTS): Add `$(config_shell_tests)'. * tests/self-check-env-sanitize.test: Update, by checking that `test_prefer_config_shell' isn't exported in the environment.
Stefano Lattarini 0a73aff7 2011-05-31T18:07:56 Merge branch 'master' into testsuite-work * master: 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
Stefano Lattarini 3eb05919 2011-05-31T18: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
Stefano Lattarini 1321be70 2010-12-03T15:24:14 testsuite: use $SHELL to run tests which are shell scripts * tests/Makefile.am (TEST_LOG_COMPILER): Define so that the configure-time $SHELL is used to run the tests. * tests/defs: Add code to re-execute by default the running test script with configure-time $SHELL. Updated comments. * configure.ac: Check that `set -e' is working for $SHELL, not for /bin/sh. * tests/defs-static.in: Update comments. * tests/README (Supported shells): Updated. (Getting details from failures): Don't tell that tests are run by /bin/sh by default.
Stefano Lattarini f5708853 2011-05-21T09:12:06 test defs: better detection of cross-compile mode * configure.ac (AC_CANONICAL_HOST): New, probably not strictly necessary, but useful to complements AC_CANONICAL_BUILD. * tests/defs-static.in ($host_alias, $build_alias): New variables, exported, user-overridable, defaults AC_SUBST'd by configure. * tests/defs (cross_compiling): Consider cross-compilation mode active only if `$host_alias' is not empty *and* it differs from `$build_alias'. This is more faithful to the way configure determines whether it is cross-compiling, but still allows the user to easily force cross-compilation by overriding `host_alias' and `build_alias' at runtime. From a report by Ralf Wildenhues.
Stefano Lattarini 26c19e64 2011-04-29T19: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'.
Ralf Wildenhues 7069a8b3 2011-01-18T22:58:18 tests: work around Tru64 sh -e issues for instspc*.test. Apparently, Tru64 sh does not like turning off errexit mode, and gets confused. * tests/defs: Document 'errexit' cleanliness requirement. * tests/defs-static.in: Likewise. Avoid error from command substitution to abort instspc*.test with Tru64/OSF 5.1 sh. * tests/instspc-tests.sh: Drop now-unneeded temporary errexit dropping. Add strategic '|| Exit' to let tests work on Tru64. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini 7cd20946 2010-01-30T14:01:39 Fix parallel testsuite run with Zsh. This change deals with a Zsh incompatibility in the handling of the special shell variable `$0' in sourced files; this incompatibility used to cause utter breakage when the Automake testsuite was run in parallel mode with Zsh as the $(TEST_LOG_COMPILER). For more information, please refer to the thread "Fix parallel testsuite run with zsh" on automake-patches, dated 2010-12-22: <http://lists.gnu.org/archive/html/automake-patches/2010-12/msg00135.html> This change works around the problems described above for Zsh 4.3 or later, and offers better error messages (instead of random failures) for earlier Zsh version. * tests/README (Supported shells): When describing the manual workaround about the Zsh incompatibility in the handling of `$0', tell that it is now needed only with Zsh versions preceding 4.3. Done also some minor rewordings. * tests/defs-static.in ($argv0): New variable, offers a workaround for the Zsh incompatibility in the handling of `$0'. Abort if that variable cannot be correctly set (can happen only in older Zsh version). * tests/defs ($me): Define using `$argv0', not `$0'.
Stefano Lattarini d40b95dc 2010-12-22T10:36:18 Tests defs: keep track of original $AUTOMAKE and $ACLOCAL values. This is especially useful for tests which might want to run automake and aclocal without additional flags and warnings. * tests/defs-static.in ($original_ACLOCAL): New variable. ($original_AUTOMAKE): Likewise. * tests/help.test: Use them. * tests/help2.test: Likewise. * tests/help3.test: Likewise. * tests/help4.test: Likewise. From a suggestion by Ralf Wildenhues.
Stefano Lattarini b5e53339 2010-11-05T21:29:17 Tests defs: move static definitions in a new file `defs-static'. The new file is meant to be idempotent w.r.t. mutiple inclusions. * tests/defs.in: Removed, its contents split among ... * tests/defs-static.in: ... this new file ... * tests/defs: ... and this new file, including the former. * configure.ac (AC_CONFIG_FILES): Remove `tests/defs', add `tests/defs-static'. (AC_CONFIG_LINKS): Add `tests/defs'. * tests/Makefile.am ($(parallel_tests)): Update. ($(instspc_tests)): Likewise. * tests/.gitignore: Update.