Stefano Lattarini [Sun, 18 Sep 2011 17:14:55 +0000 (19:14 +0200)]
Merge branch 'master' into testsuite-work
Stefano Lattarini [Sun, 18 Sep 2011 16:30:00 +0000 (18:30 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
automake: remove code duplication in 'handle_tests'
Stefano Lattarini [Sun, 18 Sep 2011 16:21:29 +0000 (18:21 +0200)]
Merge branch 'remove-deansification'
* remove-deansification:
automake: remove special handling of `ANSI2KNR' make variable
Stefano Lattarini [Sun, 18 Sep 2011 16:13:59 +0000 (18:13 +0200)]
Merge branch 'maint'
* maint:
coverage: test interactions of `nobase_' and `nodist_'
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 [Sun, 18 Sep 2011 16:05:43 +0000 (18:05 +0200)]
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 [Sun, 18 Sep 2011 15:51:31 +0000 (17:51 +0200)]
coverage: test interactions of `nobase_' and `nodist_'
* tests/nobase-nodist.test: New test.
* tests/Makefile.am (TESTS): Add it.
Stefano Lattarini [Sun, 18 Sep 2011 15:36:05 +0000 (17:36 +0200)]
Merge branch 'maint'
* maint:
java: fix various blunders in test 'java-mix.test'
Stefano Lattarini [Sun, 18 Sep 2011 15:32:50 +0000 (17:32 +0200)]
java: fix various blunders in test 'java-mix.test'
* tests/java-mix.test: Add missing call to `set -e'. Fix inverted
semantics (`.java' files are expected *not* to be distributed by
default, not the other way round). Fix various typos in the name
of the `.java' files. Correct other minor blunders. Improve some
comments.
Stefano Lattarini [Sun, 18 Sep 2011 14:32:46 +0000 (16:32 +0200)]
Merge branch 'java-work'
* java-work:
fix: remove duplicated ChangeLog entries
java: allow both JAVA and nobase_JAVA in the same Makefile.am
java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
fix: regenerate tests/Makefile.in
tests defs: use `skip_' for skipping java-related tests
java tests: use $PATH_SEPARATOR where appropriate
java coverage: test JAVACFLAGS and AM_JAVACFLAGS
java coverage: test rebuild rules for java
java coverage: try to build and run a java program
test defs: new requirement for the default java interpreter
java tests: tweak and make stricter a couple of tests
java coverage: add test on uninstall with JAVA primary
java tests: require java compiler more properly
java: allow both JAVA and nobase_JAVA in the same Makefile.am
java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
Stefano Lattarini [Sun, 18 Sep 2011 14:24:04 +0000 (16:24 +0200)]
fix: remove duplicated ChangeLog entries
Stefano Lattarini [Sun, 18 Sep 2011 14:21:04 +0000 (16:21 +0200)]
Merge branch 'maint' into java-work
Stefano Lattarini [Sun, 18 Sep 2011 14:19:25 +0000 (16:19 +0200)]
Merge branch 'java-fixes-for-maint' into maint
Stefano Lattarini [Fri, 16 Sep 2011 11:41:42 +0000 (13:41 +0200)]
automake: remove special handling of `ANSI2KNR' make variable
* automake.in (define_configure_variable): Remove special-cased
handling of `ANSI2KNR' variable. Related minor simplifications.
Stefano Lattarini [Wed, 14 Sep 2011 12:58:05 +0000 (14:58 +0200)]
automake: remove code duplication in 'handle_tests'
* automake.in (handle_tests): Factor out some code dealing with
test extensions and rules for generation of `.log' files into ...
(handle_per_suffix_test): ... this new subroutine.
* tests/parallel-tests-exeext.test: New test.
* tests/Makefile.am (TESTS): Update.
Peter Rosin [Tue, 13 Sep 2011 15:04:00 +0000 (17:04 +0200)]
* tests/defs [$sh_errexit_works = yes]: Output 'SIGINT' for signal 2.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
Stefano Lattarini [Tue, 13 Sep 2011 13:49:32 +0000 (15:49 +0200)]
self tests: work around 'unset' spurious non-zero return value
* tests/self-check-exit.tap ($init): Unset the possibly already
unset variable `am_explicit_skips' when the `errexit' shell flag
is not yet active, for the benefit of shell that return a non-zero
status when unsetting an already-unset variable.
Stefano Lattarini [Tue, 13 Sep 2011 13:21:13 +0000 (15:21 +0200)]
tests: an explicative comment on signal-related woes
* tests/self-check-exit.tap: Add pointer to a bug-autoconf
discussion explaining why this test needs to temporarily block
SIGINT.
Stefano Lattarini [Tue, 13 Sep 2011 12:37:02 +0000 (14:37 +0200)]
tests: also trap SIGQUIT; other fixes
Some shells seems to just ignore SIGQUIT under some circumstances,
even when it is not blocked; however, if the signal it trapped,
the trap gets correctly executed.
* tests/defs [$sh_errexit_works = yes]: Also trap SIGQUIT. Add
extensive explanation of why we do so.
* tests/self-check-cleanup.tap: Improve and fix to ensure that an
earlier failure does not prevent the rest of the test to execute.
Problem revealed by a failure in `self-check-cleanup.tap'.
Stefano Lattarini [Mon, 12 Sep 2011 23:01:46 +0000 (01:01 +0200)]
test defs: work around weird ksh behaviour w.r.t. signal handling
* tests/defs (is_blocked_signal): Use perl to determine whether a
signal is trapped, since trying to do it portably within the shell
means opening a nasty can of worms.
For more information and background, see:
<http://lists.gnu.org/archive/html/bug-autoconf/2011-09/msg00004.html>
<http://mail.opensolaris.org/pipermail/ksh93-integration-discuss/2009-February/004121.html>
<http://www.cons.org/cracauer/sigint.html>
Stefano Lattarini [Mon, 12 Sep 2011 16:37:05 +0000 (18:37 +0200)]
cosmetics: fix various typos and grammaros
* NEWS: Fix typos.
* tests/py-compile-basic.test: Likewise.
* tests/py-compile-basedir.test: Fix botched wording in comments.
* tests/py-compile-option-terminate.test: Fix typo and incomplete
comment.
Suggestions by Peter Rosin.
Stefano Lattarini [Mon, 12 Sep 2011 16:22:43 +0000 (18:22 +0200)]
tests: remove redundant line from a test script
* tests/test-log.test (fail.test): Remove extra `echo' command,
probably due to a past copy&paste blunder.
Stefano Lattarini [Mon, 12 Sep 2011 09:03:32 +0000 (11:03 +0200)]
java: allow both JAVA and nobase_JAVA in the same Makefile.am
* automake.in (handle_java): Also strip `nobase_' from the given
prefix, when needed.
* tests/java-clean.test: Update and extend.
* tests/java-compile-install.test: Likewise.
* tests/java-no-duplicate.test: Likewise.
* tests/java-sources.test: Likewise.
* tests/java-noinst.test: Likewise.
* tests/java-mix-dist-nodist.test: Renamed to ...
* tests/java-mix.test: ... this, and extended.
* tests/java-nobase.test: New test, still xfailing due to
unrelated issues.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
Cherry-picked from
v1.11-356-g01dede4
Stefano Lattarini [Mon, 12 Sep 2011 08:54:49 +0000 (10:54 +0200)]
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 [Sun, 11 Sep 2011 16:51:03 +0000 (18:51 +0200)]
tests: convert another test to TAP
* tests/primary-prefix-invalid-couples.test: Renamed ...
* tests/primary-prefix-invalid-couples.tap: ... to this, and
converted to the use of the TAP protocols (this requires only
very minimal changes this time).
* tests/list-of-tests.mk: Update.
Stefano Lattarini [Sat, 10 Sep 2011 22:47:24 +0000 (00:47 +0200)]
Merge branch 'maint' into java-work
* maint:
tests: fix spurious failure on fast machines
aclocal: better URL reference in error message
coverage: distcheck-hook to catch missing/outdated *.m4 files
aclocal: more granularity in acdir overriding
Stefano Lattarini [Sat, 10 Sep 2011 22:47:09 +0000 (00:47 +0200)]
Merge branch 'maint' into python-work
* maint:
tests: fix spurious failure on fast machines
aclocal: better URL reference in error message
coverage: distcheck-hook to catch missing/outdated *.m4 files
aclocal: more granularity in acdir overriding
* 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
coverage: vala support failing for VPATH from-scratch builds
docs: report few more automake parsing limitations
tests: list "forgotten" test script in TESTS
ylwrap: fix unusual indentation whitespace
Stefano Lattarini [Sat, 10 Sep 2011 22:45:34 +0000 (00:45 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
tests: fix spurious failure on fast machines
Stefano Lattarini [Sat, 10 Sep 2011 22:45:20 +0000 (00:45 +0200)]
Merge branch 'master' into test-protocols
* master:
tests: fix spurious failure on fast machines
aclocal: better URL reference in error message
Stefano Lattarini [Sat, 10 Sep 2011 22:44:12 +0000 (00:44 +0200)]
Merge branch 'maint'
* maint:
tests: fix spurious failure on fast machines
Stefano Lattarini [Sat, 10 Sep 2011 22:42:53 +0000 (00:42 +0200)]
tests: fix spurious failure on fast machines
* tests/aclocal-acdir.test: Avoid spurious failures due to caching
issues, by cleaning the autom4te cache between all the aclocal
invocations, and by always calling autoconf with the `--force'
flag.
Stefano Lattarini [Sat, 10 Sep 2011 22:23:06 +0000 (00:23 +0200)]
tests: minor optimizations/simplifications in some aclocal tests
* acloca11.test: Instead of running ./configure and then grepping
the file it has produced, directly grep configure. Add trailing
`:' command.
* acloca12.test: Likewise.
* acloca10.test: Likewise. Also, remove the autom4te caches
by hand, instead of sleeping to ensure they get outdated and
ignored.
* aclocal9.test: Likewise.
* acloca18.test: Likewise. Also, do not remove file `foo',
which is not being created anymore.
* acloca20.test: The test makes sense only if the system support
real symlinks, so skip it if this is not the case. This allows
for various simplifications.
Stefano Lattarini [Sat, 10 Sep 2011 21:28:59 +0000 (23:28 +0200)]
Merge branch 'prove' into testsuite-work
* prove:
prove: avoid weird signal-related bug
tests: allow use of `prove' to run automake testsuite
Stefano Lattarini [Sat, 10 Sep 2011 21:28:47 +0000 (23:28 +0200)]
Merge branch 'testsuite-more-namespace-safeness' into testsuite-work
* testsuite-more-namespace-safeness:
tests defs: more namespace-safeness
Stefano Lattarini [Sat, 10 Sep 2011 21:26:01 +0000 (23:26 +0200)]
Merge branch 'master' into testsuite-work
* master:
aclocal: better URL reference in error message
Stefano Lattarini [Sat, 10 Sep 2011 21:25:13 +0000 (23:25 +0200)]
Merge branch 'maint'
* maint:
aclocal: better URL reference in error message
Stefano Lattarini [Sat, 10 Sep 2011 19:59:09 +0000 (21:59 +0200)]
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 [Sat, 10 Sep 2011 19:34:19 +0000 (21:34 +0200)]
tests: avoid creating useless files in some test directories
* tests/aclocal.test: Define `$am_create_testdir' to "empty"
before sourcing ./defs, to avoid bringing in unused auxiliary
files. Related adjustments.
* tests/aclocal3.test: Likewise.
* tests/aclocal8.test: Likewise.
* tests/aclocal9.test: Likewise.
* tests/acloca10.test: Likewise.
* tests/acloca11.test: Likewise.
* tests/acloca12.test: Likewise.
* tests/acloca15.test: Likewise.
* tests/acloca16.test: Likewise.
* tests/acloca17.test: Likewise.
* tests/acloca18.test: Likewise.
* tests/acloca20.test: Likewise.
* tests/acloca21.test: Likewise.
* tests/acloca23.test: Likewise.
* tests/aclocal-print-acdir.test: Likewise.
* tests/ar-lib.test: Likewise.
* tests/compile.test: Likewise.
* tests/compile2.test: Likewise.
* tests/compile3.test: Likewise.
* tests/compile6.test: Likewise.
* tests/instsh2.test: Likewise.
* tests/instsh3.test: Likewise.
* tests/mdate5.test: Likewise.
* tests/mdate6.test: Likewise.
* tests/missing3.test: Likewise.
* tests/missing5.test: Likewise.
* tests/mkinst3.test: Likewise.
* tests/self-check-explicit-skips.test: Likewise.
* tests/self-check-report.test: Likewise.
* tests/self-check-sanity.test: Likewise.
* tests/tap-driver-stderr.test: Likewise.
Stefano Lattarini [Sat, 10 Sep 2011 21:16:50 +0000 (23:16 +0200)]
aclocal: better URL reference in error message
* aclocal.in (scan_file): In the error message about underquoted
definitions, reference the automake page at `www.gnu.org', not
at `sources.redhat.com'.
Stefano Lattarini [Sat, 10 Sep 2011 17:13:20 +0000 (19:13 +0200)]
prove: avoid weird signal-related bug
* tests/defs (trap): In the trap code dealing with SIGPIPE
signal, ignore further signals of the same kind.
See also Test::Harness issue [rt.cpan.org #70855], archived at
<https://rt.cpan.org/Ticket/Display.html?id=70855>
Stefano Lattarini [Fri, 9 Sep 2011 14:31:27 +0000 (16:31 +0200)]
tests: allow use of `prove' to run automake testsuite
* tests/prove-runner: New helper script; mostly it wraps
our `*.test' test scripts to make them runnable by the
`prove' utility.
* tests/Makefile.am (EXTRA_DIST): Distribute it.
(PROVE, AM_PROVEFLAGS, AM_PROVECMD): New variables.
(prove, installprove): New targets, used run the automake
testsuite through the `prove' utility.
* tests/gen-testsuite-part: For any considered dependency,
generate a variables that groups all the tests depending on
it. This is especially useful for use in the new `prove'
and `installprove' targets, which cannot rely on make for
inter-test dependencies, and have to handle them "by hand".
Stefano Lattarini [Fri, 9 Sep 2011 13:26:31 +0000 (15:26 +0200)]
test defs: more environment cleanup
* tests/defs: Also unset the XFAIL_TESTS, and various
LOG_DRIVER, LOG_COMPILER variables (and corresponding
flags variable).
Stefano Lattarini [Fri, 9 Sep 2011 11:02:11 +0000 (13:02 +0200)]
tests: allow depmod.tap to only run a subset of its tests
* tests/depmod.tap: If command-line arguments are passed to the
tests, they are now taken as the list of test names for which the
checks are to be run.
Stefano Lattarini [Fri, 9 Sep 2011 10:47:57 +0000 (12:47 +0200)]
tests: allow instspc.tap to only run a subset of its tests
* tests/instspc.tap: If command-line arguments are passed to the
tests, they are now taken as the list of test names for which the
checks are to be run.
Stefano Lattarini [Fri, 9 Sep 2011 10:00:28 +0000 (12:00 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
coverage: distcheck-hook to catch missing/outdated *.m4 files
Stefano Lattarini [Fri, 9 Sep 2011 09:54:22 +0000 (11:54 +0200)]
Merge branch 'master' into test-protocols
* master:
coverage: distcheck-hook to catch missing/outdated *.m4 files
Stefano Lattarini [Fri, 9 Sep 2011 09:41:42 +0000 (11:41 +0200)]
Merge branch 'maint'
* maint:
coverage: distcheck-hook to catch missing/outdated *.m4 files
Stefano Lattarini [Thu, 1 Sep 2011 15:42:41 +0000 (17:42 +0200)]
coverage: distcheck-hook to catch missing/outdated *.m4 files
Related to automake bug#9037.
* tests/distcheck-missing-m4.test: New test.
* tests/distcheck-outdated-m4.test: Likewise.
* tests/distcheck-hook-m4.am: New data file, used by the new
tests.
* tests/Makefile.am (distcheck-m4-missing.log,
distcheck-m4-outdated.log): Depend on it.
(EXTRA_DIST): Distribute it.
(TESTS): Add the new tests.
Stefano Lattarini [Thu, 8 Sep 2011 21:26:09 +0000 (23:26 +0200)]
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 [Thu, 8 Sep 2011 20:52:46 +0000 (22:52 +0200)]
fix: typo in latest ChangeLog entry
Stefano Lattarini [Thu, 8 Sep 2011 20:46:45 +0000 (22:46 +0200)]
testsuite: fix `skip_row_' subroutine in tap-functions.sh
* tests/tap-functions.sh (skip_row_): Use `seq_', not `seq', to
be portable to non-GNU systems.
Bug revealed by a testsuite error on Solaris.
Stefano Lattarini [Sat, 3 Sep 2011 19:03:36 +0000 (21:03 +0200)]
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 [Thu, 8 Sep 2011 16:44:07 +0000 (18:44 +0200)]
maintcheck: fix spurious failures
* tests/gen-testsuite-part (write_wrapper_script): More uses of
creative quoting in the generated tests, to avoid triggering
failures in the `sc_tests_Exit_not_exit' maintcheck.
* Makefile.am (sc_tests_tap_plan): It's OK for auto-generated
TAP tests that sources an hand-written one not to declare a TAP
plan: the sourced test will do so.
* tests/Makefile.am (checked_test_extensions): Don't define
anymore, the default value `$(TEST_EXTENSIONS)' is correct now.
(expected_list_of_tests): Don't define anymore, the default
value `$(TESTS)' is correct now.
Stefano Lattarini [Thu, 8 Sep 2011 15:58:00 +0000 (17:58 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
aclocal: more granularity in acdir overriding
Stefano Lattarini [Thu, 8 Sep 2011 15:52:22 +0000 (17:52 +0200)]
Merge branch 'master' into test-protocols
* master:
aclocal: more granularity in acdir overriding
Stefano Lattarini [Thu, 8 Sep 2011 15:12:38 +0000 (17:12 +0200)]
Merge branch 'maint'
* maint:
aclocal: more granularity in acdir overriding
Stefano Lattarini [Mon, 5 Sep 2011 15:37:44 +0000 (17:37 +0200)]
aclocal: more granularity in acdir overriding
Before this change, using the `--acdir' option caused aclocal to
redefine both the directory of automake-provided m4 macros and the
directory of third-party system-wide m4 macros. With this change,
we deprecate the `--acdir' aclocal option, and introduce two new
options `--automake-acdir' and `--system-acdir', to allow for more
granularity.
* aclocal.in (@automake_includes, @system_includes,
@user_includes): Fix and extend comments.
(usage): Update.
(handle_acdir_option): New function.
(parse_arguments): Recognize new options `--system-acdir' and
`automake-acdir', and handle `--acdir' using the new function
above. Simplify logic by assuming that the directory of
third-party system-wide m4 files always exists.
* tests/aclocal.in: Update to use the new options, instead of
the deprecated. `--acdir'.
* m4/dirlist: Move ...
* m4/acdir/dirlist: ... here.
* m4/Makefile.am (EXTRA_DIST): Update.
(m4datadir): Rename ...
(automake_acdir): ... to this. Accordingly, ...
(dist_m4data_DATA): ... rename this ...
(dist_automake_ac_DATA): ... to this.
(system_acdir): New, directory.
(dist_system_ac_DATA): New, defined to an empty value; this will
ensure that the $(system_acdir) directory will be created by
"make install".
* tests/aclocal.test: Remove check about the `--print-ac-dir'
option of aclocal, it has been moved into ...
* tests/aclocal-print-acdir.test: ... this new test, and quite
extended.
* tests/aclocal-acdir.test: New test.
* tests/Makefile.am (TESTS): Add the new tests.
* NEWS, bootstrap: Update.
* doc/automake.texi (aclocal Options, Macro Search Path): Update.
Stefano Lattarini [Thu, 8 Sep 2011 14:06:40 +0000 (16:06 +0200)]
cosmetic: rename gen-tests-deps -> gen-testsuite-part
* tests/gen-tests-deps: Renamed ...
* tests/gen-testsuite-part: ... to this.
* bootstrap: Update.
* tests/Makefile.am ($(srcdir)/tests-deps.am): Don't generate
nor include this ...
($(srcdir)/testsuite-part.am): ... do with this instead.
* tests/.gitignore (tests-deps.am): Don't ignore this ...
(testsuite-part.am): ... ignore this instead.
Stefano Lattarini [Thu, 8 Sep 2011 09:02:05 +0000 (11:02 +0200)]
testsuite: revamp generation of autogenerated tests
With this change, we make generated tests be real scripts again
-- albeit only thin layers around the tests they wrap. It turned
out that the apparently clever tricks we played by having lots
of custom (and auto-generated) `..._LOG_COMPILER' variables and
by having the tests in $(wrap_TESTS) not being real on-file-system
scripts caused more pain and confusion than expected, for only
marginal gains. Also, that previous setup didn't interact very
well with "make check RECHECK_LOGS=", since the log files for
the "wrappee" tests were always considered out-of-date (which in
hindsight is natural, since these log files depended on wrappee
tests that didn't exist -- and weren't created). And finally, it
wasn't possible to easily and naturally run the wrappee tests
from the command line -- definitely harmful for debugging and
sanity checking.
* tests/gen-wrap-tests: Deleted, its role subsumed into ...
* tests/gen-tests-deps: ... this script, with the help of
(unindent, atomic_write, build_matcher, write_wrapper_script,
%test_generators): ... these new functions and variables.
Other few minor fixlets and improvements.
* tests/wrap-tests.sh: Delete, not needed anymore.
* tests/Makefile.am ($(srcdir)/wrap-tests.am): Don't generate
nor include anymore.
(EXTRA_DIST): Update.
(wrap_TESTS): Renamed to ...
(generated_TESTS): ... this.
($(generated_TESTS)): Must have the same dependencies of
`$(srcdir)/tests-deps.am'.
Other minor related reordering and adjustments.
* bootstrap: Do not generate `wrap-tests.am' anymore.
* tests/.gitignore (wrap-tests.am): Don't ignore anymore.
(*-w.test, *-w.tap): Ignore.
* tests/README: Update paragraph on automatically-generated
tests.
Stefano Lattarini [Thu, 8 Sep 2011 08:41:24 +0000 (10:41 +0200)]
testsuite: automatize generation of dependencies for tests
* tests/gen-test-deps: New script, automatically generates
dependencies for the tests.
* tests/Makefile.am (EXTRA_DIST): Distribute it.
($(srcdir)/tests-deps.am): New rule.
(include $(srcdir)/tests-deps.am): New inclusion.
Remove hand-written dependencies for tests. Other related
updates.
* tests/list-of-tests (tap_with_common_setup_TESTS,
tap_other_TESTS): Delete, their content merged back into ...
(handwritten_TESTS): ... this.
* tests/.gitignore (tests-deps.am): New ignored file.
* bootstrap: Generate `tests/tests-deps.am'.
Stefano Lattarini [Wed, 7 Sep 2011 17:06:52 +0000 (19:06 +0200)]
tests: avoid spurious failure due to bug in older TAP::Parser
Older TAP::Parser versions (e.g., 3.10) erroneously convert a test
number `0' into `1'; do not let this bug cause a spurious failure
in our testsuite.
* tests/tap-test-number-0.test: Skip if the aforementioned
TAP::Parser bug is detected.
Stefano Lattarini [Wed, 7 Sep 2011 16:04:55 +0000 (18:04 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
tap/perl: be more portable to older perl versions
tap/perl: be more portable to older TAP::Parser versions
Stefano Lattarini [Wed, 7 Sep 2011 15:41:40 +0000 (17:41 +0200)]
tap/perl: be more portable to older perl versions
* lib/tap-driver.pl (trap_perl_warnings_and_errors): Do not use
the three-args version of the `open' builtin, it is not well
supported by older perl versions (at least perl 5.6.2).
(start): Add a no-op statement to pacify a "possible typo ... used
only once" perl warning.
Stefano Lattarini [Wed, 7 Sep 2011 15:31:23 +0000 (17:31 +0200)]
tap/perl: be more portable to older TAP::Parser versions
* lib/tap-driver.pl (start): Do not call the `ignore_exit' method
on our TAP parser: it is not supported in older TAP::Parser
versions (e.g., 3.10), and is not really required by our usage of
the parser object.
Stefano Lattarini [Wed, 7 Sep 2011 14:50:09 +0000 (16:50 +0200)]
tests: fix spurious Cygwin failure of a test on TAP support
* tests/tap-bad-prog.tap (noexec.test): Add forgotten `echo'.
When trying to run it, redirect its output to /dev/null, to
avoid confusing automake's testsuite own TAP driver.
Stefano Lattarini [Wed, 7 Sep 2011 14:35:17 +0000 (16:35 +0200)]
test defs: fix glitch in TAP version of `warn_' function
* tests/tap-functions.sh (warn_): Do not display the warning
message two times.
Stefano Lattarini [Wed, 7 Sep 2011 14:14:15 +0000 (16:14 +0200)]
tests: fix another spurious failure due to ignored signals
* tests/tap-signal.test: Renamed ...
* tests/tap-signal.tap: ... to this, converted to the use of the
TAP protocol, and improved not to try to use/trap signals that
are ignored by the parent shell (they will be forcibly ignored
by all the child processes too). Extend the test a bit since we
are at it.
* tests/list-of-tests.mk: Update.
Stefano Lattarini [Wed, 7 Sep 2011 12:55:45 +0000 (14:55 +0200)]
tests: fix a spurious failure due to lacking Fortran compilers
* tests/silent-many-generic.test (configure.in): Cause the test
to be skipped if `configure' fails to find working C++, Fortran
and Fortran 77 compilers.
Stefano Lattarini [Wed, 7 Sep 2011 12:05:01 +0000 (14:05 +0200)]
self tests: more use of TAP
* tests/self-check-reexec.test: Renamed ...
* tests/self-check-reexec.tap: ... to this, converted to the
use of TAP protocol, and extended a bit.
* tests/self-check-seq.test: Renamed ...
* tests/self-check-seq.tap: ... to this, and converted to the
use of TAP protocol.
* tests/list-of-tests.mk: Update.
Stefano Lattarini [Wed, 7 Sep 2011 09:16:02 +0000 (11:16 +0200)]
self tests: fix spurious failures when /bin/ksh do not exists
* tests/self-check-reexec.test: Ensure that the non-bash shells
we look do really exists. Since we are at it, also try the name
`ash', non `dash', for the Almquist Shell, for Cygwin 1.5.
Stefano Lattarini [Tue, 6 Sep 2011 21:54:49 +0000 (23:54 +0200)]
Merge branch 'maint' into java-work
* maint:
* 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
coverage: vala support failing for VPATH from-scratch builds
docs: report few more automake parsing limitations
Stefano Lattarini [Tue, 6 Sep 2011 21:38:47 +0000 (23:38 +0200)]
tests: more use of TAP in our own testsuite
* tests/parallel-tests-interrupt.test: Renamed ...
* tests/parallel-tests-interrupt.tap: ... to this, and converted
to the use of TAP protocol.
* tests/self-check-cleanup.test: Renamed ...
* tests/self-check-cleanup.tap: ... to this, and converted to the
use of TAP protocol.
* tests/self-check-dir.test: Renamed ...
* tests/self-check-dir.tap: ... to this, and converted to the use
of TAP protocol.
* tests/self-check-is_newest.test: Renamed ...
* tests/self-check-is_newest.tap: ... to this, and converted to
the use of TAP protocol.
* tests/self-check-unindent.test: Renamed ...
* tests/self-check-unindent.tap: ... to this, and converted to
the use of TAP protocol.
* tests/list-of-tests.mk: Update.
Stefano Lattarini [Tue, 6 Sep 2011 16:06:35 +0000 (18:06 +0200)]
self tests: sanity check on 'is_blocked_signal' function
* tests/self-check-is-blocked-signal.tap: New test.
* tests/list-of-tests.mk: Update.
Stefano Lattarini [Tue, 6 Sep 2011 15:53:29 +0000 (17:53 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
tests: fix spurious failures due to ignored signals
Stefano Lattarini [Tue, 6 Sep 2011 15:37:32 +0000 (17:37 +0200)]
Merge branch 'master' into test-protocols
* master:
tests: fix spurious failures due to ignored signals
Stefano Lattarini [Tue, 6 Sep 2011 15:10:21 +0000 (17:10 +0200)]
tests: fix spurious failures due to ignored signals
* tests/defs (is_blocked_signal): New function.
* tests/parallel-tests-interrupt.test: Do not try to use/trap
signals that are ignored by the parent shell: they will be
ignored by all the child processes too.
* tests/self-check-exit.test: Likewise.
* tests/self-check-cleanup.test: Likewise, and do few minor
improvements and extensions since we are at it.
Stefano Lattarini [Tue, 6 Sep 2011 09:04:49 +0000 (11:04 +0200)]
Merge branch 'test-protocols' into testsuite-work
* test-protocols:
* tests/amhello-binpkg.test: Add missing $EXEEXT usage.
fix: list test 'vala-vpath.test' in XFAIL_TESTS
Stefano Lattarini [Tue, 6 Sep 2011 09:02:38 +0000 (11:02 +0200)]
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 [Tue, 6 Sep 2011 08:59:38 +0000 (10:59 +0200)]
Merge branch 'maint'
* maint:
* tests/amhello-binpkg.test: Add missing $EXEEXT usage.
fix: list test 'vala-vpath.test' in XFAIL_TESTS
Peter Rosin [Mon, 5 Sep 2011 09:30:17 +0000 (11:30 +0200)]
* tests/amhello-binpkg.test: Add missing $EXEEXT usage.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
Stefano Lattarini [Sun, 4 Sep 2011 15:28:49 +0000 (17:28 +0200)]
Merge branch 'fix-vala-vpath-test' into maint
Stefano Lattarini [Sun, 4 Sep 2011 15:28:35 +0000 (17:28 +0200)]
fix: list test 'vala-vpath.test' in XFAIL_TESTS
* tests/Makefile.am (XFAIL_TESTS): Update.
Stefano Lattarini [Fri, 2 Sep 2011 19:58:54 +0000 (21:58 +0200)]
Merge branch 'master' into testsuite-work
* master:
tests: simplify wrapper for aclocal
Stefano Lattarini [Fri, 2 Sep 2011 19:57:03 +0000 (21:57 +0200)]
Merge branch 'maint'
* maint:
tests: simplify wrapper for aclocal
Stefano Lattarini [Fri, 2 Sep 2011 18:16:58 +0000 (20:16 +0200)]
tests: simplify wrapper for aclocal
* tests/aclocal.in: Remove use of $ACLOCAL_TESTSUITE_FLAGS and
extra `-I' flags; they are not really required, since the file
`m4/amversion.m4' is generated in the srcdir anyway.
* tests/acloca10.test: Remove use of $ACLOCAL_TESTSUITE_FLAGS.
* tests/acloca18.test: Likewise.
* tests/defs.in: Don't nullify $ACLOCAL_TESTSUITE_FLAGS, and do
not export it.
Stefano Lattarini [Fri, 2 Sep 2011 15:58:58 +0000 (17:58 +0200)]
tests: remove redundant settings of `errexit' shell flag
* doc-parsing-buglets-colneq-subst.test: Do not set the
`errexit' shell flag, as it is already set by `tests/defs'.
* doc-parsing-buglets-tabs.test: Likewise.
* java-empty-classpath.test: Likewise.
* vala-vpath.test: Likewise.
Stefano Lattarini [Fri, 2 Sep 2011 15:50:33 +0000 (17:50 +0200)]
tests: more uses of `$top_testsrcdir', in the `amhello' tests
* tests/amhello-binpkg.test: Use `$top_testsrcdir' instead
of `$testsrcdir/..'.
* tests/amhello-cflags.test: Likewise.
* tests/amhello-cross-compile.test: Likewise.
Stefano Lattarini [Fri, 2 Sep 2011 15:46:41 +0000 (17:46 +0200)]
tests: avoid creating useless files in the `amhello' tests
* tests/amhello-binpkg.test: Define `$am_create_testdir' to
"empty" before sourcing ./defs, to avoid bringing in unused
auxiliary files.
* tests/amhello-cflags.test: Likewise.
* tests/amhello-cross-compile.test: Likewise.
Stefano Lattarini [Fri, 2 Sep 2011 15:40:43 +0000 (17:40 +0200)]
Merge branch 'master' into testsuite-work
Stefano Lattarini [Fri, 2 Sep 2011 15:39:53 +0000 (17:39 +0200)]
Merge branch 'maint'
Stefano Lattarini [Fri, 2 Sep 2011 15:39:35 +0000 (17:39 +0200)]
fix: minor typo in ChangeLog
Stefano Lattarini [Fri, 2 Sep 2011 08:53:49 +0000 (10:53 +0200)]
Merge branch 'master' into testsuite-work
* master:
coverage: vala support failing for VPATH from-scratch builds
docs: report few more automake parsing limitations
Stefano Lattarini [Fri, 2 Sep 2011 08:45:19 +0000 (10:45 +0200)]
Merge branch 'remove-deansification' into testsuite-work
* remove-deansification:
automake: fix regression due to de-ansification support removal
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 [Fri, 2 Sep 2011 08:31:19 +0000 (10:31 +0200)]
Merge branch 'remove-deansification'
* remove-deansification:
automake: fix regression due to de-ansification support removal
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 [Thu, 1 Sep 2011 09:02:04 +0000 (11:02 +0200)]
automake: fix regression due to de-ansification support removal
The last change `
v1.11-947-g136b489' removed code that automake
was using to decide whether binary objects were built by the
generated Makefile.in, so that it could avoid to emit unneeded
code when this was not the case. Re-introduce such code in a
less-obfuscated form, and add a test to ensure we don't regress
again.
* automake.in ($must_handle_compiled_objects): New global
variable, telling whether the generated Makefile has to build
compiled objects.
(initialize_per_input): Reset it.
(handle_programs, handle_libraries, handle_ltlibraries): Set
it to a true value when required.
(handle_compile): Don't generate any code if the variable
`$must_handle_compiled_objects' is not set to a true value.
* tests/no-extra-makefile-code.test: New test.
* tests/Makefile.am (TESTS): Add it.
Stefano Lattarini [Fri, 2 Sep 2011 08:04:43 +0000 (10:04 +0200)]
Merge branch 'maint'
* maint:
coverage: vala support failing for VPATH from-scratch builds
docs: report few more automake parsing limitations
Stefano Lattarini [Fri, 2 Sep 2011 07:56:20 +0000 (09:56 +0200)]
coverage: vala support failing for VPATH from-scratch builds
* tests/vala-vpath.test: New test, xfailing.
* tests/Makefile.am (TESTS): Update.
* THANKS: Update.
From a report by Zbigniew Jędrzejewski-Szmek.
Related to automake bug#8753.
Stefano Lattarini [Thu, 1 Sep 2011 17:17:39 +0000 (19:17 +0200)]
docs: report few more automake parsing limitations
Partly motivated by automake bug#8360.
* doc/automake.texi (General Operation): Report few more automake
limitations w.r.t. parsing of unusual makefile constructs. Related
minor reorderings.
* tests/doc-parsing-buglets-colneq-subst.test: New test.
* tests/doc-parsing-buglets-tabs.test: Likewise.
* tests/Makefile.am (TESTS): Update.
Stefano Lattarini [Sun, 28 Aug 2011 20:38:50 +0000 (22:38 +0200)]
automake: cleanups after de-ansification support removal (2)
* automake.in ($get_object_extension_was_run): Remove, it's not
really needed anymore.
(&get_object_extension): Remove, it's a no-op now.
All callers adjusted.
Stefano Lattarini [Sun, 28 Aug 2011 19:11:07 +0000 (21:11 +0200)]
automake: cleanups after de-ansification support removal (1)
* automake.in (lang_c_rewrite, handle_single_transform): Rename
variable `$nonansi_obj' to `$obj'.
Stefano Lattarini [Sun, 28 Aug 2011 14:09:50 +0000 (16:09 +0200)]
ansi: remove obsolete code/files for de-ANSI-fication support
* lib/ansi2knr.1, lib/ansi2knr.c: Deleted.
* lib/Makefile.am (dist_pkgvdata_DATA): Do not list them anymore.
* lib/am/ansi2knr.am: Delete.
* lib/am/Makefile.am (dist_am_DATA): Do not list it anymore.
* lib/Automake/Variable.pm (%_am_macro_for_var): Remove entries for
`ANSI2KNR' and `U'.
* m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Don't care anymore
about possible definition of the `$U' variable.
* automake.in (@common_files): Drop `ansi2knr.1' and `ansi2knr.c'.
(struct): Remove scalar field `ansi'.
All callers adjusted.
(&lang_c_finish, %de_ansi_files): Remove, they're not required
anymore.
All callers adjusted.
($get_object_extension_was_run): Fix typo in comment.
(&get_object_extension): Drop code dealing with de-ansification;
this function basically a no-op now, but is required to properly
initialize `$get_object_extension_was_run' variable.
(&handle_languages, &handle_compile, &lang_c_rewrite): Drop code
dealing with de-ansification.