-2011-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
-
- 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.
-
+ 2011-09-16 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ automake: remove special handling of `ANSI2KNR' make variable
+ * automake.in (define_configure_variable): Remove special-cased
+ handling of `ANSI2KNR' variable. Related minor simplifications.
+
+ 2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ coverage: test interactions of `nobase_' and `nodist_'
+ * tests/nobase-nodist.test: New test.
+ * tests/Makefile.am (TESTS): Add it.
+
+ 2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
+2011-09-15 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
+2011-09-13 Peter Rosin <peda@lysator.liu.se>
+
+ * tests/defs [$sh_errexit_works = yes]: Output 'SIGINT' for signal 2.
+
+2011-09-13 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
+2011-09-13 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
+2011-09-13 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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'.
+
+2011-09-13 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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>
+
++2011-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
++
++ 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.
++
+2011-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
+2011-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
2011-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure on fast machines
generic hard errors. The latter should be reserved for "real"
set-up failures.
+ 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ py-compile: '--' and non-option arguments terminate the option list
+ * lib/py-compile: Any non-option argument, or the special `--'
+ argument, now explicitly terminates the list of options.
+ * tests/py-compile-option-terminate.test: New test.
+ * tests/Makefile.am (TESTS): Update.
+ * NEWS: Update.
+
+ 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ py-compile: complain on unrecognized options
+ * lib/py-compile: Complain on unrecognized options. Don't be too
+ lax in matching `--help' and `--version' options.
+ * tests/py-compile-usage.test: Extend accordingly.
+ * NEWS: Update.
+
+ 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ py-compile: normalize error and help messages
+ * lib/py-compile: Now error messages do not begin with a capital
+ letter, nor end with a period, as per GNU standards. Prepend the
+ error messages with the name of the script, not with its path.
+ When an invalid usage is recognized, always display the customary
+ message "Try `py-compile --help' ..." on a line of its own.
+ ($me): New variable, containing the name of the
+ program, i.e., `py-compile'. Use it throughout.
+ (usage_error): New function, used to display error messages about
+ invalid usage.
+ * tests/py-compile-usage.test: Extend and tighten accordingly.
+
+ 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ python tests: add "unit tests" on py-compile
+ * tests/py-compile-basic.test: New test.
+ * tests/py-compile-basic2.test: New test.
+ * tests/py-compile-basedir.test: Likewise.
+ * tests/py-compile-destdir.test: Likewise.
+ * tests/py-compile-env.test: Likewise.
+ * tests/py-compile-usage.test: Likewise.
+ * tests/Makefile.am (TESTS): Update.
+ Tested with python 2.0.1, 2.4.6, 2.6.6, 2.7.1, and 3.1.3.
+
+ 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ py-compile: the '--destdir' option now accepts a blank argument
+ * lib/py-compile (Option parsing): Do not count an empty argument
+ to `--destdir' or `--basedir' as a missing argument.
+ * lib/python.am: Simplify accordingly, passing the `--destdir'
+ option to py-compile unconditionally, even if `$(DESTDIR)' is
+ empty.
+ * NEWS: Update.
+
+ 2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ python: run the 'py-compile' script with $(SHELL)
+ * lib/python.am (install-%DIR%PYTHON): Run each instance of
+ py-compile using $(SHELL). Since we are at it, break overly
+ long lines.
+ (am__py_compile): New variable, to reduce code duplication.
+
++
+2011-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ 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.
+
+2011-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: can use also $SHELL to check shell scripts from `lib/'
+ * tests/ar-lib.test: If the variable `$test_prefer_config_shell'
+ is set to "yes", run the script under test with configure-time
+ determined $SHELL, rather than with /bin/sh.
+ The `$test_prefer_config_shell' variable defaults to empty, but
+ can be overridden at runtime by the user, thus allowing more
+ coverage.
+ * tests/compile.test: Likewise.
+ * tests/compile2.test: Likewise.
+ * tests/compile3.test: Likewise.
+ * tests/compile4.test: Likewise.
+ * tests/compile5.test: Likewise.
+ * tests/compile6.test: Likewise.
+ * tests/instsh2.test: Likewise.
+ * tests/instsh3.test: Likewise.
+ * tests/mkinst3.test: Likewise.
+ * tests/missing.test: Likewise.
+ * tests/missing2.test: Likewise.
+ * tests/missing3.test: Likewise.
+ * tests/missing5.test: Likewise.
+ * tests/defs (get_shell_script): New subroutine, factoring out
+ code common to the tests above.
+ (xsi-lib-shell): If `$test_prefer_config_shell' is set to "yes",
+ check that $SHELL, not /bin/sh, supports XSI constructs, as we
+ expect the test will use $SHELL and not /bin/sh to run the
+ script being tested.
+
+2011-06-07 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests defs: better requirements for XSI shells
+ This change avoids potential spurious failures with tests using
+ the requirement 'xsi-shell' to mean that they want */bin/sh* (not
+ $SHELL) to be XSI-conforming. This idiom used to work before
+ commit `v1.11-874-g1321be7' (as back then the test scripts were
+ unconditionally run with /bin/sh), but has become inconsistent
+ now that the test scripts re-execute themselves with configure
+ determined $SHELL.
+ The described spurious failures have already occurred in practice,
+ for examples on Solaris systems which also had GNU Bash installed.
+ From a suggestion by Peter Rosin. See discussion at:
+ <http://lists.gnu.org/archive/html/automake-patches/2011-06/msg00016.html>
+ * tests/defs (xsi-shell): Now check that $SHELL, rather than the
+ shell currently running the test script, is an XSI shell.
+ (xsi-bin-sh): New requirement, checking that /bin/sh (which can
+ differ from $SHELL) is an XSI shell.
+ (xsi-lib-shell): New requirement, checking that the shell that
+ should be used to test the Automake-provided scripts from `lib/'
+ is an XSI shell. For the moment, this is just an alias for
+ `xsi-bin-sh'.
+ (require_xsi): New subroutine, used to factor out code common to
+ the requirements above.
+ ($xsi_shell_code): New variable, contains shell code supposed to
+ work only with XSI shells. Used by the new subroutine above.
+ * tests/ar-lib.test ($required): Require 'xsi-lib-shell' instead
+ of 'xsi-shell', since the script we test here is run with /bin/sh,
+ not with $SHELL.
+ * tests/compile3.test: Likewise.
+ * tests/compile6.test: Likewise.
+
2011-06-05 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix typo-related error in auxdir2.test
2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- 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.
+ tests: fix syntax error in 'silentcxx-gcc.test'
+ * tests/silentcxx-gcc.test (for config_args in ...): Remove extra
+ trailing backslash from the list of looped-on items.
+
+2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ depmod tests: fix bug in depmodes list extraction
+ * tests/depmod-tests.sh (get_depmodes): Use `echo $all_depmodes'
+ instead of `... | tr "$nl" "$sp"' to strip extra whitespaces and
+ newlines from `$all_depmodes'. The latter idiom with `tr' is
+ wrong since it gets run before `./defs' is sourced, and thus `$nl'
+ and `$sp' are undefined.
+ Bug revealad by FreeBSD tr(1) implementation, which doesn't accept
+ empty strings as arguments.
+ 2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests defs: use `skip_' for skipping java-related tests
+ * tests/defs.in (java, javac): Use `skip_' to signal test
+ skipping.
+
+2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: add excerpts from few original bug reports, for clarity.
+ * tests/comment6.test: Add excerpts and/or details from the
+ original bug report that prompted this tests to be added and/or
+ extended.
+ * tests/dejagnu4.test: Likewise.
+ * tests/installdir.test: Likewise.
+
2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
tests defs: allow requirements for compilers (mostly dummy)
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-MAINTAINERCLEANFILES = $(parallel_tests) $(instspc_tests)
-EXTRA_DIST = ChangeLog-old gen-parallel-tests instspc-tests.sh \
- $(TESTS) distcheck-hook-m4.am
-XFAIL_TESTS = all.test auxdir2.test cond17.test gcj6.test \
- override-conditional-2.test java-nobase.test \
- pr8365-remake-timing.test yacc-dist-nobuild-subdir.test \
- vala-vpath.test txinfo5.test $(instspc_xfail_tests)
-parallel_tests = backcompat5-p.test check-concurrency-bug9245-p.test \
- check-exported-srcdir-p.test check-tests-in-builddir-p.test \
- check-tests_environment-p.test check-p.test check10-p.test \
- check11-p.test check12-p.test check2-p.test check3-p.test \
- check4-p.test check5-p.test check6-p.test check7-p.test \
- check8-p.test check9-p.test color-p.test color2-p.test \
- comment9-p.test dejagnu-p.test exeext4-p.test maken3-p.test \
- maken4-p.test posixsubst-tests-p.test
-instspc_tests = instspc-squote-build.test instspc-squote-install.test \
- instspc-dquote-build.test instspc-dquote-install.test \
- instspc-bquote-build.test instspc-bquote-install.test \
- instspc-sharp-build.test instspc-sharp-install.test \
- instspc-dollar-build.test instspc-dollar-install.test \
- instspc-bang-build.test instspc-bang-install.test \
- instspc-bslash-build.test instspc-bslash-install.test \
- instspc-ampersand-build.test instspc-ampersand-install.test \
- instspc-percent-build.test instspc-percent-install.test \
- instspc-leftpar-build.test instspc-leftpar-install.test \
- instspc-rightpar-build.test instspc-rightpar-install.test \
- instspc-pipe-build.test instspc-pipe-install.test \
- instspc-caret-build.test instspc-caret-install.test \
- instspc-tilde-build.test instspc-tilde-install.test \
- instspc-qmark-build.test instspc-qmark-install.test \
- instspc-star-build.test instspc-star-install.test \
- instspc-plus-build.test instspc-plus-install.test \
- instspc-minus-build.test instspc-minus-install.test \
- instspc-comma-build.test instspc-comma-install.test \
- instspc-colon-build.test instspc-colon-install.test \
- instspc-semicol-build.test instspc-semicol-install.test \
- instspc-equal-build.test instspc-equal-install.test \
- instspc-less-build.test instspc-less-install.test \
- instspc-more-build.test instspc-more-install.test \
- instspc-at-build.test instspc-at-install.test \
- instspc-lqbrack-build.test instspc-lqbrack-install.test \
- instspc-rqbrack-build.test instspc-rqbrack-install.test \
- instspc-lcbrack-build.test instspc-lcbrack-install.test \
- instspc-rcbrack-build.test instspc-rcbrack-install.test \
- instspc-space-build.test instspc-space-install.test \
- instspc-tab-build.test instspc-tab-install.test \
- instspc-linefeed-build.test instspc-linefeed-install.test \
- instspc-backspace-build.test instspc-backspace-install.test \
- instspc-formfeed-build.test instspc-formfeed-install.test \
- instspc-carriageret-build.test \
- instspc-carriageret-install.test \
- instspc-quadrigraph0-build.test \
- instspc-quadrigraph0-install.test \
- instspc-quadrigraph1-build.test \
- instspc-quadrigraph1-install.test \
- instspc-quadrigraph2-build.test \
- instspc-quadrigraph2-install.test \
- instspc-quadrigraph3-build.test \
- instspc-quadrigraph3-install.test \
- instspc-quadrigraph4-build.test \
- instspc-quadrigraph4-install.test instspc-a_b-build.test \
- instspc-a_b-install.test instspc-a__b-build.test \
- instspc-a__b-install.test instspc-a_lf_b-build.test \
- instspc-a_lf_b-install.test instspc-dotdotdot-build.test \
- instspc-dotdotdot-install.test instspc-dosdrive-build.test \
- instspc-dosdrive-install.test instspc-miscglob1-build.test \
- instspc-miscglob1-install.test instspc-miscglob2-build.test \
- instspc-miscglob2-install.test
-instspc_xfail_tests = instspc-squote-build.test \
- instspc-dquote-build.test instspc-bquote-build.test \
- instspc-sharp-build.test instspc-dollar-build.test \
- instspc-bslash-build.test instspc-ampersand-build.test \
- instspc-linefeed-build.test instspc-quadrigraph0-build.test \
- instspc-a_lf_b-build.test instspc-squote-install.test \
- instspc-dquote-install.test instspc-bquote-install.test \
- instspc-sharp-install.test instspc-dollar-install.test \
- instspc-linefeed-install.test instspc-a_lf_b-install.test
+
+# Run the tests with the shell detected at configure time.
+LOG_COMPILER = $(SHELL)
+TEST_EXTENSIONS = .test .tap
+TEST_LOG_COMPILER = $(LOG_COMPILER)
+TAP_LOG_COMPILER = $(LOG_COMPILER)
+TAP_LOG_DRIVER = AM_TAP_AWK='$(AWK)' $(SHELL) $(top_srcdir)/lib/tap-driver.sh
+AM_TAP_LOG_DRIVER_FLAGS = --merge --comments --diagnostic-string \
+ `printf '\043%%\043\n'`
+EXTRA_DIST = ChangeLog-old $(handwritten_TESTS) tap-setup.sh \
+ tap-summary-aux.sh extract-testsuite-summary \
+ testsuite-summary-checks.sh trivial-test-driver \
+ $(generated_TESTS) gen-testsuite-part tap-functions.sh \
+ plain-functions.sh distcheck-hook-m4.am defs-static.in \
+ prove-runner
+
+# Hand-written tests.
+
+# Automatically-generated tests wrapping hand-written ones.
+# Also, automatically-computed dependencies for tests.
+TESTS = $(handwritten_TESTS) $(generated_TESTS)
+XFAIL_TESTS = \
+all.test \
+cond17.test \
+gcj6.test \
+override-conditional-2.test \
++java-nobase.test \
+pr8365-remake-timing.test \
+yacc-dist-nobuild-subdir.test \
+vala-vpath.test \
+txinfo5.test
+
# Some testsuite-influential variables should be overridable from the
# test scripts, but not from the environment.
java.test \
java2.test \
java3.test \
++javaflags.test \
java-check.test \
+ java-clean.test \
++java-compile-install.test \
++java-compile-run-flat.test \
++java-compile-run-nested.test \
java-empty-classpath.test \
javaprim.test \
javasubst.test \
-javaflags.test \
java-extra.test \
-java-noinst.test \
++java-mix.test \
++java-no-duplicate.test \
+ java-nobase.test \
-java-compile-install.test \
-java-compile-run-flat.test \
-java-compile-run-nested.test \
+java-noinst.test \
++java-rebuild.test \
+ java-sources.test \
-java-no-duplicate.test \
-java-mix.test \
+ java-uninstall.test \
-java-rebuild.test \
ldadd.test \
ldflags.test \
lex.test \
primary-prefix-couples-force-valid.test \
primary-prefix-couples-documented-valid.test \
proginst.test \
-py-compile-basedir.test \
+programs-primary-rewritten.test \
++py-compile-basedir.test \
+ py-compile-basic.test \
+ py-compile-basic2.test \
+ py-compile-destdir.test \
+ py-compile-env.test \
+ py-compile-option-terminate.test \
+ py-compile-usage.test \
++python-dist.test \
python.test \
python2.test \
python3.test \
# telling that source files are missing. Adding also the `-help'
# option seems to solve the problem.
echo "$me: running javac -version -help"
- javac -version -help || skip_ "java compiler not found"
+ javac -version -help || skip_all_ "Sun Java compiler not available"
;;
- java -version -help || skip_ "java interpreter not found"
+ java)
+ # See the comments above about `javac' for why we use also `-help'.
+ echo "$me: running java -version -help"
++ java -version -help || skip_all_ "Sun Java interpreter not found"
+ ;;
makedepend)
echo "$me: running makedepend -f-"
- makedepend -f- || exit 77
+ makedepend -f- \
+ || skip_all_ "required program \`makedepend' not available"
;;
makeinfo-html)
- # Make sure makeinfo understands --html.
+ # Make sure we have makeinfo, and it understands `--html'.
echo "$me: running makeinfo --html --version"
- makeinfo --html --version || exit 77
+ makeinfo --html --version \
+ || skip_all_ "cannot find a makeinfo program that groks the" \
+ "\`--html' option"
;;
non-root)
# Skip this test case if the user is root.
--- /dev/null
-parallel_tests=no
+ #! /bin/sh
+ # Copyright (C) 2011 Free Software Foundation, Inc.
+ #
+ # This program is free software; you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+ # the Free Software Foundation; either version 2, or (at your option)
+ # any later version.
+ #
+ # This program is distributed in the hope that it will be useful,
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ # GNU General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ # Test on compilation and execution of Java class files.
+ # Also meddle with wrapper scripts, as would be probably seen in a real
+ # "UNIX-style" use case.
+ # This test uses a "flat" setup for the source tree (i.e., everything in
+ # the top-level directory), and forces the use of the old, non-parallel
+ # testsuite driver. The sister test `java-compile-run-nested.test' do
+ # similar checks with a more usual, "nested" setup, and using the newer
+ # 'parallel-tests' driver.
+
+ required='java javac'
++am_parallel_tests=no
+ . ./defs || Exit 1
+
+ set -e
+
+ echo "AC_SUBST([PATH_SEPARATOR], ['$PATH_SEPARATOR'])" >> configure.in
+
+ cat >> configure.in <<'END'
+ AC_SUBST([JAVA], [java])
+ AC_CONFIG_SRCDIR([PkgLocation.jin])
+ AC_CONFIG_FILES([PkgLocation.java:PkgLocation.jin])
+ AC_OUTPUT
+ END
+
+ ## TOP-LEVEL SETUP AND TARGETS ##
+
+ cat > Makefile.am <<'END'
+ EXTRA_DIST = # Will be updated later.
+
+ test-built:
+ ls -l $(srcdir) ;: For debugging.
+ test $(srcdir) = . || ls -l . ;: Likewise.
+ test -f $(srcdir)/Main.java
+ test -f $(srcdir)/HelloStream.java
+ test -f $(srcdir)/PkgLocation.jin
+ test -f PkgLocation.java
+ test -f HelloStream.class
+ test -f PkgLocation.class
+ test -f Main.class
+ test -f classjava.stamp
+
+ test-installed:
+ ls -l $(javadir) ;: For debugging.
+ test -f $(javadir)/HelloStream.class
+ test -f $(javadir)/PkgLocation.class
+ test -f $(javadir)/Main.class
+ if find $(prefix) | grep '\.stamp$$'; then exit 1; else :; fi
+
+ run-installed:
+ jprog_doing_installcheck=yes $(MAKE) $(AM_MAKEFLAGS) check
+
+ check-local: test-built
+ installcheck-local: test-installed run-installed
+
+ .PHONY: test-built test-installed run-installed
+ END
+
+ ## WRAPPER SCRIPT ##
+
+ cat >> Makefile.am <<'END'
+ bin_SCRIPTS = jprog
+
+ edit_script = sed -e 's|[@]JAVA@|$(JAVA)|g' \
+ -e 's|[@]javadir@|$(javadir)|g' \
+ -e 's|[@]SHELL@|$(SHELL)|g' \
+ -e 's|[@]PATH_SEPARATOR@|$(PATH_SEPARATOR)|g'
+
+ jprog: jprog.sh
+ rm -f $@ $@-t
+ $(edit_script) `test -f '$@.sh' || echo $(srcdir)/`$@.sh >$@-t
+ chmod a-w $@-t && chmod a+x $@-t && mv -f $@-t $@
+ sed 's/^/ | /' $@ ;: for debugging.
+
+ EXTRA_DIST += jprog.sh
+ CLEANFILES = jprog
+ END
+
+ cat > jprog.sh <<'END'
+ #!@SHELL@
+ CLASSPATH=${jprog_classpath-'@javadir@'}${CLASSPATH+"@PATH_SEPARATOR@$CLASSPATH"}
+ export CLASSPATH
+ case $# in
+ 0) exec @JAVA@ Main;;
+ *) exec @JAVA@ Main "$@";;
+ esac
+ END
+
+ ## JAVA SOURCES ##
+
+ cat >> Makefile.am <<'END'
+ javadir = $(pkgdatadir)/java
+
+ dist_java_JAVA = Main.java HelloStream.java
+ nodist_java_JAVA = PkgLocation.java
+ END
+
+ cat > PkgLocation.jin <<'END'
+ public class PkgLocation {
+ public static String prefix() {
+ return new String("@prefix@");
+ }
+ }
+ END
+
+ cat > Main.java <<'END'
+ public class Main {
+ public static void main(String[] args) {
+ for (int i = 0; i < args.length; i++) {
+ if (args[i].equals("--print-prefix")) {
+ System.out.println(PkgLocation.prefix());
+ } else if (args[i].equals("--hello-stdout")) {
+ HelloStream.to(System.out);
+ } else if (args[i].equals("--hello-stderr")) {
+ HelloStream.to(System.err);
+ } else {
+ System.err.println("jprog: invalid option '" + args[i] +
+ "'");
+ System.exit(2);
+ }
+ }
+ System.exit(0);
+ }
+ }
+ END
+
+ cat > HelloStream.java <<'END'
+ import java.io.PrintStream;
+ class HelloStream {
+ public static void to(PrintStream stream) {
+ stream.println("Hello, Stream!");
+ }
+ }
+ END
+
+ ## TESTS ##
+
+ cat >> Makefile.am <<'END'
+ ## FIXME: Use AM_TESTS_ENVIRONMENT here when it becomes available.
+ TESTS_ENVIRONMENT = \
+ if test x"$$jprog_doing_installcheck" != x"yes"; then \
+ jprog_classpath='$(abs_top_builddir):$(abs_top_srcdir)'; \
+ export jprog_classpath; \
+ PATH='$(abs_top_builddir)$(PATH_SEPARATOR)'$$PATH; \
+ export PATH; \
+ else \
+ unset jprog_classpath || :; \
+ PATH='$(prefix)/bin$(PATH_SEPARATOR)'$$PATH; \
+ export PATH; \
+ fi; \
+ config_time_prefix='@prefix@'; export config_time_prefix;
+
+ TESTS = \
+ simple.test \
+ prefix.test \
+ stdout.test \
+ stderr.test \
+ badarg.test
+
+ XFAIL_TESTS = badarg.test
+
+ EXTRA_DIST += $(TESTS)
+ END
+
+ cat > simple.test <<'END'
+ #!/bin/sh
+ jprog
+ END
+
+ cat > prefix.test <<'END'
+ #!/bin/sh
+ jprefix=`jprog --print-prefix` || exit 1
+ echo "$0: exp prefix: $config_time_prefix"
+ echo "$0: got prefix: $jprefix"
+ test x"$jprefix" = x"$config_time_prefix"
+ END
+
+ cat > stdout.test <<'END'
+ #!/bin/sh
+ rc=0
+ jprog --hello-stdout >stdout.out 2>stdout.err || { echo \$?=$?; rc=1; }
+ sed 's/^/out:/' <stdout.out # For debugging.
+ sed 's/^/err:/' <stdout.err >&2 # Likewise.
+ test -s stdout.err && rc=1
+ test "`cat stdout.out`" = 'Hello, Stream!' || rc=1
+ rm -f stdout.out stdout.err || rc=1
+ exit $rc
+ END
+
+ cat > stderr.test <<'END'
+ #!/bin/sh
+ rc=0
+ jprog --hello-stderr >stderr.out 2>stderr.err || { echo \$?=$?; rc=1; }
+ sed 's/^/out:/' <stderr.out # For debugging.
+ sed 's/^/err:/' <stderr.err >&2 # Likewise.
+ test -s stderr.out && rc=1
+ test "`cat stderr.err`" = 'Hello, Stream!' || rc=1
+ rm -f stderr.out stderr.err || rc=1
+ exit $rc
+ END
+
+ cat > badarg.test <<'END'
+ #!/bin/sh
+ jprog --bad-argument
+ END
+
+ chmod a+x *.test
+
+ ## DO CHECKS ##
+
+ $ACLOCAL
+ $AUTOCONF
+ $AUTOMAKE
+
+ # To have the parallel testsuite more verbose.
+ VERBOSE=yes; export VERBOSE
+
+ ./configure --prefix="`pwd`/_inst"
+ cat PkgLocation.java # For debugging.
+ $MAKE check
+ $MAKE install
+ $MAKE test-installed
+ $MAKE run-installed
+ $MAKE distcheck
+
+ :
--- /dev/null
-parallel_tests=yes
+ #! /bin/sh
+ # Copyright (C) 2011 Free Software Foundation, Inc.
+ #
+ # This program is free software; you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+ # the Free Software Foundation; either version 2, or (at your option)
+ # any later version.
+ #
+ # This program is distributed in the hope that it will be useful,
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ # GNU General Public License for more details.
+ #
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ # Test on compilation and execution of Java class files.
+ # Also meddle with wrapper scripts, as would be probably seen in a real
+ # "UNIX-style" use case.
+ # This test uses a typical "nested" source tree setup (i.e., different
+ # components/aspects are separated into different subdirectories),
+ # and uses the 'parallel-tests' testsuite driver. The sister test
+ # `java-compile-run-flat.test' do similar checks with a "flat" setup
+ # (i.e., everything in the top-level directory), and forcing the use
+ # of the older non-parallel 'simple-tests' driver.
+
+ required='java javac'
++am_parallel_tests=yes
+ . ./defs || Exit 1
+
+ set -e
+
+ echo "AC_SUBST([PATH_SEPARATOR], ['$PATH_SEPARATOR'])" >> configure.in
+
+ cat >> configure.in <<'END'
+ AC_SUBST([JAVA], [java])
+ AC_CONFIG_SRCDIR([jprog/PkgLocation.jin])
+ AC_SUBST([jprogdatadir], ['${pkgdatadir}'])
+ AC_SUBST([jprogclassdir], ['${jprogdatadir}/jprog'])
+ AC_CONFIG_FILES([jprog/PkgLocation.java:jprog/PkgLocation.jin])
+ AC_CONFIG_FILES([jprog/Makefile bin/Makefile tests/Makefile])
+ AC_OUTPUT
+ END
+
+ ## TOP-LEVEL SETUP AND TARGETS ##
+
+ cat > Makefile.am <<'END'
+ SUBDIRS = bin jprog tests
+
+ test-built:
+ ls -l $(srcdir)/* ;: For debugging.
+ test $(srcdir) = . || ls -l * ;: Likewise.
+ test -f $(srcdir)/jprog/Main.java
+ test -f $(srcdir)/jprog/HelloStream.java
+ test -f $(srcdir)/jprog/PkgLocation.jin
+ test -f jprog/PkgLocation.java
+ test -f jprog/HelloStream.class
+ test -f jprog/Main.class
+ test -f jprog/PkgLocation.class
+ test -f jprog/classjprogclass.stamp
+
+ test-installed:
+ ls -l $(jprogclassdir) ;: For debugging.
+ test -f $(jprogclassdir)/HelloStream.class
+ test -f $(jprogclassdir)/Main.class
+ test -f $(jprogclassdir)/PkgLocation.class
+ if find $(prefix) | grep '\.stamp$$'; then exit 1; else :; fi
+
+ run-installed:
+ jprog_doing_installcheck=yes $(MAKE) $(AM_MAKEFLAGS) check
+
+ check-local: test-built
+ installcheck-local: test-installed run-installed
+
+ .PHONY: test-built test-installed run-installed
+ END
+
+ ## WRAPPER SCRIPT ##
+
+ mkdir bin
+
+ cat > bin/Makefile.am <<'END'
+ bin_SCRIPTS = jprog
+
+ edit_script = sed -e 's|[@]JAVA@|$(JAVA)|g' \
+ -e 's|[@]jprogdatadir@|$(jprogdatadir)|g' \
+ -e 's|[@]SHELL@|$(SHELL)|g' \
+ -e 's|[@]PATH_SEPARATOR@|$(PATH_SEPARATOR)|g'
+
+ jprog: jprog.sh
+ rm -f $@ $@-t
+ $(edit_script) `test -f '$@.sh' || echo $(srcdir)/`$@.sh >$@-t
+ chmod a-w $@-t && chmod a+x $@-t && mv -f $@-t $@
+ sed 's/^/ | /' $@ ;: for debugging.
+
+ EXTRA_DIST = jprog.sh
+ CLEANFILES = jprog
+ END
+
+ cat > bin/jprog.sh <<'END'
+ #!@SHELL@
+ CLASSPATH=${jprog_classpath-'@jprogdatadir@'}${CLASSPATH+"@PATH_SEPARATOR@$CLASSPATH"}
+ export CLASSPATH
+ case $# in
+ 0) exec @JAVA@ jprog.Main;;
+ *) exec @JAVA@ jprog.Main "$@";;
+ esac
+ END
+
+ ## JAVA SOURCES ##
+
+ mkdir jprog
+
+ cat > jprog/Makefile.am <<'END'
+ dist_jprogclass_JAVA = Main.java HelloStream.java
+ nodist_jprogclass_JAVA = PkgLocation.java
+ END
+
+ cat > jprog/PkgLocation.jin <<'END'
+ package jprog;
+ public class PkgLocation {
+ public static String prefix() {
+ return new String("@prefix@");
+ }
+ }
+ END
+
+ cat > jprog/Main.java <<'END'
+ package jprog;
+ import jprog.PkgLocation;
+ import jprog.HelloStream;
+ public class Main {
+ public static void main(String[] args) {
+ for (int i = 0; i < args.length; i++) {
+ if (args[i].equals("--print-prefix")) {
+ System.out.println(PkgLocation.prefix());
+ } else if (args[i].equals("--hello-stdout")) {
+ HelloStream.to(System.out);
+ } else if (args[i].equals("--hello-stderr")) {
+ HelloStream.to(System.err);
+ } else {
+ System.err.println("jprog: invalid option '" + args[i] +
+ "'");
+ System.exit(2);
+ }
+ }
+ System.exit(0);
+ }
+ }
+ END
+
+ cat > jprog/HelloStream.java <<'END'
+ package jprog;
+ import java.io.PrintStream;
+ class HelloStream {
+ public static void to(PrintStream stream) {
+ stream.println("Hello, Stream!");
+ }
+ }
+ END
+
+ ## TESTS ##
+
+ mkdir tests
+
+ cat > tests/Makefile.am <<'END'
+ ## FIXME: Use AM_TESTS_ENVIRONMENT here when it becomes available.
+ TESTS_ENVIRONMENT = \
+ if test x"$$jprog_doing_installcheck" != x"yes"; then \
+ jprog_classpath='$(abs_top_builddir):$(abs_top_srcdir)'; \
+ export jprog_classpath; \
+ PATH='$(abs_top_builddir)/bin$(PATH_SEPARATOR)'$$PATH; \
+ export PATH; \
+ else \
+ unset jprog_classpath || :; \
+ PATH='$(prefix)/bin$(PATH_SEPARATOR)'$$PATH; \
+ export PATH; \
+ fi; \
+ config_time_prefix='@prefix@'; export config_time_prefix;
+
+ TESTS = \
+ simple.test \
+ prefix.test \
+ stdout.test \
+ stderr.test \
+ badarg.test
+
+ XFAIL_TESTS = badarg.test
+
+ EXTRA_DIST = $(TESTS)
+ END
+
+ cat > tests/simple.test <<'END'
+ #!/bin/sh
+ jprog
+ END
+
+ cat > tests/prefix.test <<'END'
+ #!/bin/sh
+ jprefix=`jprog --print-prefix` || exit 1
+ echo "$0: exp prefix: $config_time_prefix"
+ echo "$0: got prefix: $jprefix"
+ test x"$jprefix" = x"$config_time_prefix"
+ END
+
+ cat > tests/stdout.test <<'END'
+ #!/bin/sh
+ rc=0
+ jprog --hello-stdout >stdout.out 2>stdout.err || { echo \$?=$?; rc=1; }
+ sed 's/^/out:/' <stdout.out # For debugging.
+ sed 's/^/err:/' <stdout.err >&2 # Likewise.
+ test -s stdout.err && rc=1
+ test "`cat stdout.out`" = 'Hello, Stream!' || rc=1
+ rm -f stdout.out stdout.err || rc=1
+ exit $rc
+ END
+
+ cat > tests/stderr.test <<'END'
+ #!/bin/sh
+ rc=0
+ jprog --hello-stderr >stderr.out 2>stderr.err || { echo \$?=$?; rc=1; }
+ sed 's/^/out:/' <stderr.out # For debugging.
+ sed 's/^/err:/' <stderr.err >&2 # Likewise.
+ test -s stderr.out && rc=1
+ test "`cat stderr.err`" = 'Hello, Stream!' || rc=1
+ rm -f stderr.out stderr.err || rc=1
+ exit $rc
+ END
+
+ cat > tests/badarg.test <<'END'
+ #!/bin/sh
+ jprog --bad-argument
+ END
+
+ chmod a+x tests/*.test
+
+ ## DO CHECKS ##
+
+ $ACLOCAL
+ $AUTOCONF
+ $AUTOMAKE
+
+ # To have the parallel testsuite more verbose.
+ VERBOSE=yes; export VERBOSE
+
+ ./configure --prefix="`pwd`/_inst"
+ cat jprog/PkgLocation.java # For debugging.
+ $MAKE check
+ $MAKE install
+ $MAKE test-installed
+ $MAKE run-installed
+ $MAKE distcheck
+
+ :
--- /dev/null
+## Makefile fragment that holds the list of test scripts of the automake
+## testsuite. This fragment is meant to be included by the Makefile.am,
+## but also to be executed directly by make when bootstrapping automake.
+
+## Copyright (C) 2011 Free Software Foundation, Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 2, or (at your option)
+## any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# The order here is mostly alphabetical, with the deliberate exception
+# that tests having a high runtime (especially TAP tests that run various
+# checks sequentially) are listed early; this improved performance on
+# concurrent testsuite runs.
+handwritten_TESTS = \
+depmod.tap \
+instspc.tap \
+aclocal.test \
+aclocal3.test \
+aclocal4.test \
+aclocal5.test \
+aclocal6.test \
+aclocal7.test \
+aclocal8.test \
+aclocal9.test \
+acloca10.test \
+acloca11.test \
+acloca12.test \
+acloca13.test \
+acloca14.test \
+acloca15.test \
+acloca16.test \
+acloca17.test \
+acloca18.test \
+acloca19.test \
+acloca20.test \
+acloca21.test \
+acloca22.test \
+acloca23.test \
+ac-output-old.tap \
+aclocal-acdir.test \
+aclocal-print-acdir.test \
+acsilent.test \
+acsubst.test \
+acsubst2.test \
+add-missing.tap \
+all.test \
+all2.test \
+alloca.test \
+alloca2.test \
+alpha.test \
+alpha2.test \
+amhello-cflags.test \
+amhello-cross-compile.test \
+amhello-binpkg.test \
+amassign.test \
+ammissing.test \
+amopt.test \
+amopts-location.test \
+amopts-variable-expansion.test \
+amsubst.test \
+ansi2knr-no-more.test \
+ar-lib.test \
+ar.test \
+ar2.test \
+asm.test \
+asm2.test \
+asm3.test \
+autodist.test \
+autodist-subdir.test \
+autodist-acconfig.test \
+autodist-acconfig-no-subdir.test \
+autodist-aclocal-m4.test \
+autodist-config-headers.test \
+autodist-configure-no-subdir.test \
+autodist-no-duplicate.test \
+autodist-stamp-vti.test \
+autohdr.test \
+autohdr2.test \
+autohdr3.test \
+autohdr4.test \
+autohdrdry.test \
+automake-cmdline.tap \
+auxdir.test \
+auxdir6.test \
+auxdir7.test \
+auxdir8.test \
+auxdir-autodetect.test \
+auxdir-computed.tap \
+auxdir-misplaced.test \
+auxdir-nonexistent.test \
+auxdir-unportable.tap \
+backcompat.test \
+backcompat2.test \
+backcompat3.test \
+backcompat4.test \
+backcompat5.test \
+backcompat6.test \
+backsl.test \
+backsl2.test \
+backsl3.test \
+backsl4.test \
+badline.test \
+badopt.test \
+badprog.test \
+block.test \
+bsource.test \
+candist.test \
+canon.test \
+canon2.test \
+canon3.test \
+canon4.test \
+canon5.test \
+canon6.test \
+canon7.test \
+canon8.test \
+canon-name.test \
+ccnoco.test \
+ccnoco2.test \
+ccnoco3.test \
+check.test \
+check2.test \
+check3.test \
+check4.test \
+check5.test \
+check6.test \
+check7.test \
+check8.test \
+check10.test \
+check11.test \
+check12.test \
+check-subst.test \
+check-subst-prog.test \
+check-exported-srcdir.test \
+check-fd-redirect.test \
+check-tests-in-builddir.test \
+check-no-test-driver.test \
+check-concurrency-bug9245.test \
+checkall.test \
+clean.test \
+clean2.test \
+colneq.test \
+colneq2.test \
+colneq3.test \
+colon.test \
+colon2.test \
+colon3.test \
+colon4.test \
+colon5.test \
+colon6.test \
+colon7.test \
+color.test \
+color2.test \
+comment.test \
+comment2.test \
+comment3.test \
+comment4.test \
+comment5.test \
+comment6.test \
+comment7.test \
+comment8.test \
+comment9.test \
+commen10.test \
+commen11.test \
+comments-in-var-def.test \
+compile.test \
+compile2.test \
+compile3.test \
+compile4.test \
+compile5.test \
+compile6.test \
+compile_f90_c_cxx.test \
+compile_f_c_cxx.test \
+cond-basic.test \
+cond.test \
+cond2.test \
+cond3.test \
+cond4.test \
+cond5.test \
+cond6.test \
+cond7.test \
+cond8.test \
+cond9.test \
+cond10.test \
+cond11.test \
+cond13.test \
+cond14.test \
+cond15.test \
+cond16.test \
+cond17.test \
+cond18.test \
+cond19.test \
+cond20.test \
+cond21.test \
+cond22.test \
+cond23.test \
+cond24.test \
+cond25.test \
+cond26.test \
+cond27.test \
+cond28.test \
+cond29.test \
+cond30.test \
+cond31.test \
+cond32.test \
+cond33.test \
+cond34.test \
+cond35.test \
+cond36.test \
+cond37.test \
+cond38.test \
+cond39.test \
+cond40.test \
+cond41.test \
+cond42.test \
+cond43.test \
+cond44.test \
+cond45.test \
+cond46.test \
+condd.test \
+condhook.test \
+condhook2.test \
+condinc.test \
+condinc2.test \
+condlib.test \
+condman2.test \
+condman3.test \
+configure.test \
+confdeps.test \
+conff.test \
+conff2.test \
+confh.test \
+confh4.test \
+confh5.test \
+confh6.test \
+confh7.test \
+confh8.test \
+confincl.test \
+conflnk.test \
+conflnk2.test \
+conflnk3.test \
+conflnk4.test \
+confsub.test \
+confvar.test \
+confvar2.test \
+copy.test \
+cscope.test \
+cscope2.test \
+cscope3.test \
+cxx.test \
+cxx2.test \
+cxxcpp.test \
+cxxlibobj.test \
+cxxlink.test \
+cxxnoc.test \
+cxxo.test \
+cygnus-check-without-all.test \
+cygnus-dependency-tracking.test \
+cygnus-imply-foreign.test \
+cygnus-no-dist.test \
+cygnus-no-installinfo.test \
+cygnus-requires-maintainer-mode.test \
+cygwin32.test \
+dash.test \
+defun.test \
+defun2.test \
+dejagnu.test \
+dejagnu2.test \
+dejagnu3.test \
+dejagnu4.test \
+dejagnu5.test \
+dejagnu6.test \
+dejagnu7.test \
+depacl2.test \
+depcomp.test \
+depcomp2.test \
+depcomp3.test \
+depcomp4.test \
+depcomp5.test \
+depcomp6.test \
+depcomp7.test \
+depcomp8a.test \
+depcomp8b.test \
+depdist.test \
+depend.test \
+depend2.test \
+depend3.test \
+depend4.test \
+depend5.test \
+depend6.test \
+deprecated-acinit.test \
+destdir.test \
+dirlist.test \
+dirlist2.test \
+dirlist-abspath.test \
+discover.test \
+dist-included-parent-dir.test \
+distcleancheck.test \
+distcom2.test \
+distcom3.test \
+distcom4.test \
+distcom5.test \
+distcom6.test \
+distcom7.test \
+distdir.test \
+distlinks.test \
+distlinksbrk.test \
+distname.test \
+distcheck-configure-flags.test \
+distcheck-configure-flags-am.test \
+distcheck-configure-flags-subpkg.test \
+distcheck-hook.test \
+distcheck-hook2.test \
+distcheck-missing-m4.test \
+distcheck-outdated-m4.test \
+dmalloc.test \
+doc-parsing-buglets-colneq-subst.test \
+doc-parsing-buglets-tabs.test \
+dollar.test \
+dollarvar.test \
+dollarvar2.test \
+double.test \
+dup2.test \
+else.test \
+empty.test \
+empty2.test \
+empty3.test \
+empty4.test \
+exdir.test \
+exdir2.test \
+exdir3.test \
+exeext.test \
+exeext2.test \
+exeext3.test \
+exeext4.test \
+exsource.test \
+ext.test \
+ext2.test \
+ext3.test \
+extra.test \
+extra2.test \
+extra3.test \
+extra4.test \
+extra5.test \
+extra6.test \
+extra7.test \
+extra8.test \
+extra9.test \
+extra10.test \
+extra11.test \
+extra12.test \
+extra-programs-empty.test \
+extradep.test \
+extradep2.test \
+f90only.test \
+flavor.test \
+flibs.test \
+fn99.test \
+fn99subdir.test \
+fnoc.test \
+fo.test \
+forcemiss.test \
+forcemiss2.test \
+fort1.test \
+fort2.test \
+fort4.test \
+fort5.test \
+fonly.test \
+fortdep.test \
+gcj.test \
+gcj2.test \
+gcj3.test \
+gcj4.test \
+gcj5.test \
+gcj6.test \
+getopt.test \
+gettext.test \
+gettext2.test \
+gettext3.test \
+gnumake.test \
+gnuwarn.test \
+gnuwarn2.test \
+gnits.test \
+gnits2.test \
+gnits3.test \
+hdr-vars-defined-once.test \
+header.test \
+help.test \
+help2.test \
+help3.test \
+help4.test \
+help-depend.test \
+help-depend2.test \
+help-dmalloc.test \
+help-init.test \
+help-lispdir.test \
+help-maintainer.test \
+help-multilib.test \
+help-python.test \
+help-regex.test \
+help-silent.test \
+help-upc.test \
+hfs.test \
+implicit.test \
+info.test \
+init.test \
+init2.test \
+insh2.test \
+install2.test \
+installdir.test \
+instsh.test \
+instsh2.test \
+instsh3.test \
+instdat.test \
+instdat2.test \
+instdir.test \
+instdir2.test \
+instdir-java.test \
+instdir-lisp.test \
+instdir-ltlib.test \
+instdir-prog.test \
+instdir-python.test \
+instdir-texi.test \
+instexec.test \
+instfail.test \
+instfail-info.test \
+instfail-java.test \
+instfail-libtool.test \
+insthook.test \
+instman.test \
+instman2.test \
+instmany.test \
+instmany-mans.test \
+instmany-python.test \
+interp.test \
+interp2.test \
+java.test \
+java2.test \
+java3.test \
++javaflags.test \
+java-check.test \
++java-clean.test \
++java-compile-install.test \
++java-compile-run-flat.test \
++java-compile-run-nested.test \
+java-empty-classpath.test \
+javaprim.test \
+javasubst.test \
+java-extra.test \
++java-mix.test \
++java-no-duplicate.test \
++java-nobase.test \
+java-noinst.test \
++java-rebuild.test \
++java-sources.test \
++java-uninstall.test \
+ldadd.test \
+ldflags.test \
+lex.test \
+lex2.test \
+lex3.test \
+lex4.test \
+lex5.test \
+lexcpp.test \
+lexvpath.test \
+lex-subobj-nodep.test \
+lex-lib.test \
+lex-lib-external.test \
+lex-libobj.test \
+lex-noyywrap.test \
+lflags.test \
+lflags2.test \
+libexec.test \
+libobj-basic.test \
+libobj2.test \
+libobj3.test \
+libobj4.test \
+libobj5.test \
+libobj7.test \
+libobj10.test \
+libobj12.test \
+libobj13.test \
+libobj14.test \
+libobj15a.test \
+libobj15b.test \
+libobj15c.test \
+libobj16a.test \
+libobj16b.test \
+libobj17.test \
+libobj18.test \
+libobj19.test \
+libobj20a.test \
+libobj20b.test \
+libobj20c.test \
+library.test \
+library2.test \
+library3.test \
+libtool.test \
+libtool2.test \
+libtool3.test \
+libtool4.test \
+libtool5.test \
+libtool6.test \
+libtool7.test \
+libtool8.test \
+libtool9.test \
+libtoo10.test \
+libtoo11.test \
+license.test \
+license2.test \
+link_c_cxx.test \
+link_dist.test \
+link_f90_only.test \
+link_fc.test \
+link_fccxx.test \
+link_fcxx.test \
+link_f_only.test \
+link_override.test \
+lisp2.test \
+lisp3.test \
+lisp4.test \
+lisp5.test \
+lisp6.test \
+lisp7.test \
+lisp8.test \
+lispdry.test \
+listval.test \
+location.test \
+longline.test \
+longlin2.test \
+ltcond.test \
+ltcond2.test \
+ltconv.test \
+ltdeps.test \
+ltinit.test \
+ltinstloc.test \
+ltlibobjs.test \
+ltlibsrc.test \
+ltorder.test \
+lzip.test \
+lzma.test \
+m4-inclusion.test \
+maintclean.test \
+maintclean-vpath.test \
+make.test \
+makej.test \
+makej2.test \
+maken.test \
+maken2.test \
+maken3.test \
+maken4.test \
+makevars.test \
+man.test \
+man2.test \
+man3.test \
+man4.test \
+man5.test \
+man6.test \
+man7.test \
+man8.test \
+mdate.test \
+mdate2.test \
+mdate3.test \
+mdate4.test \
+mdate5.test \
+mdate6.test \
+missing.test \
+missing2.test \
+missing3.test \
+missing4.test \
+missing5.test \
+missing6.test \
+mkinstall.test \
+mkinst2.test \
+mkinst3.test \
+mmode.test \
+mmodely.test \
+multlib.test \
+no-extra-makefile-code.test \
+no-outdir-option.test \
+nobase.test \
+nobase-libtool.test \
+nobase-python.test \
++nobase-nodist.test \
+nodef.test \
+nodef2.test \
+nodep.test \
+nodep2.test \
+nodepcomp.test \
+nodist.test \
+nodist2.test \
+nodist3.test \
+nogzip.test \
+nogzip2.test \
+noinst.test \
+noinstdir.test \
+nolink.test \
+nostdinc.test \
+notrans.test \
+number.test \
+objc.test \
+objc2.test \
+obsolete.test \
+oldvars.test \
+order.test \
+output.test \
+output2.test \
+output3.test \
+output4.test \
+output5.test \
+output6.test \
+output7.test \
+output8.test \
+output9.test \
+output10.test \
+output11.test \
+output12.test \
+output13.test \
+output-order.test \
+override-conditional-1.test \
+override-conditional-2.test \
+override-html.test \
+override-suggest-local.test \
+parallel-am.test \
+parallel-am2.test \
+parallel-am3.test \
+parallel-tests.test \
+parallel-tests2.test \
+parallel-tests3.test \
+parallel-tests5.test \
+parallel-tests6.test \
+parallel-tests8.test \
+parallel-tests9.test \
+parallel-tests10.test \
+parallel-tests-exeext.test \
+parallel-tests-suffix.test \
+parallel-tests-suffix-prog.test \
+parallel-tests-log-compiler-1.test \
+parallel-tests-log-compiler-2.test \
+parallel-tests-dry-run.test \
+parallel-tests-fd-redirect.test \
+parallel-tests-extra-programs.test \
+parallel-tests-unreadable.test \
+parallel-tests-subdir.test \
+parallel-tests-interrupt.tap \
+parallel-tests-reset-term.test \
+parallel-tests-harderror.test \
+parallel-tests-log-override-1.test \
+parallel-tests-log-override-2.test \
+parallel-tests-log-override-recheck.test \
+parallel-tests-log-compiler-example.test \
+parallel-tests-cmdline-override.test \
+parallel-tests-fork-bomb.test \
+parallel-tests-empty-testlogs.test \
+parallel-tests-driver-install.test \
+parallel-tests-no-color-in-log.test \
+parallel-tests-no-spurious-summary.test \
+parallel-tests-exit-statuses.test \
+parallel-tests-console-output.test \
+parallel-tests-once.test \
+tests-environment.test \
+am-tests-environment.test \
+tests-environment-backcompat.test \
+testsuite-summary-color.test \
+testsuite-summary-count.test \
+testsuite-summary-count-many.test \
+testsuite-summary-reference-log.test \
+test-driver-custom-no-extra-driver.test \
+test-driver-custom.test \
+test-driver-custom-xfail-tests.test \
+test-driver-custom-multitest.test \
+test-driver-custom-multitest-recheck.test \
+test-driver-custom-multitest-recheck2.test \
+test-driver-custom-html.test \
+test-driver-custom-no-html.test \
+test-driver-create-log-dir.test \
+test-driver-strip-vpath.test \
+test-driver-trs-suffix-registered.test \
+test-driver-fail.test \
+test-harness-vpath-rewrite.test \
+test-log.test \
+test-logs-repeated.test \
+test-metadata-global-log.test \
+test-metadata-global-result.test \
+test-metadata-recheck.test \
+test-metadata-results.test \
+test-missing.test \
+test-missing2.test \
+test-trs-basic.test \
+test-trs-recover.test \
+test-trs-recover2.test \
+parse.test \
+percent.test \
+percent2.test \
+phony.test \
+pluseq.test \
+pluseq2.test \
+pluseq3.test \
+pluseq4.test \
+pluseq5.test \
+pluseq6.test \
+pluseq7.test \
+pluseq8.test \
+pluseq9.test \
+pluseq10.test \
+pluseq11.test \
+posixsubst-data.test \
+posixsubst-extradist.test \
+posixsubst-ldadd.test \
+posixsubst-libraries.test \
+posixsubst-ltlibraries.test \
+posixsubst-programs.test \
+posixsubst-scripts.test \
+posixsubst-sources.test \
+posixsubst-tests.test \
+postproc.test \
+ppf77.test \
+pr2.test \
+pr9.test \
+pr72.test \
+pr87.test \
+pr204.test \
+pr211.test \
+pr220.test \
+pr224.test \
+pr229.test \
+pr243.test \
+pr266.test \
+pr279.test \
+pr279-2.test \
+pr287.test \
+pr300-lib.test \
+pr300-ltlib.test \
+pr300-prog.test \
+pr307.test \
+pr401.test \
+pr401b.test \
+pr401c.test \
+prefix.test \
+primary.test \
+primary2.test \
+primary3.test \
+primary-prefix-invalid-couples.tap \
+primary-prefix-valid-couples.test \
+primary-prefix-couples-force-valid.test \
+primary-prefix-couples-documented-valid.test \
+proginst.test \
+programs-primary-rewritten.test \
++py-compile-basedir.test \
++py-compile-basic.test \
++py-compile-basic2.test \
++py-compile-destdir.test \
++py-compile-env.test \
++py-compile-option-terminate.test \
++py-compile-usage.test \
++python-dist.test \
+python.test \
+python2.test \
+python3.test \
+python4.test \
+python5.test \
+python5b.test \
+python6.test \
+python7.test \
+python8.test \
+python9.test \
+python10.test \
+python11.test \
+python12.test \
+python-dist.test \
+python-vars.test \
+python-virtualenv.test \
+recurs.test \
+recurs2.test \
+remake.test \
+remake1a.test \
+remake2.test \
+remake3.test \
+remake3a.test \
+remake4.test \
+remake5.test \
+remake6.test \
+remake7.test \
+remake8a.test \
+remake8b.test \
+remake9a.test \
+remake9b.test \
+remake9c.test \
+remake9d.test \
+remake10a.test \
+remake10b.test \
+remake10c.test \
+remake11.test \
+remake12.test \
+remake-all-1.test \
+remake-all-2.test \
+remake-subdir-from-subdir.test \
+remake-subdir-gnu.test \
+remake-subdir.test \
+remake-subdir2.test \
+remake-subdir-long-time.test \
+remake-gnulib-add-acsubst.test \
+remake-gnulib-add-header.test \
+remake-gnulib-remove-header.test \
+remake-moved-m4-file.test \
+remake-deleted-m4-file.test \
+remake-renamed-m4-file.test \
+remake-renamed-m4-macro-and-file.test \
+remake-renamed-m4-macro.test \
+pr8365-remake-timing.test \
+regex.test \
+regex-obsolete.test \
+req.test \
+reqd.test \
+reqd2.test \
+repeated-options.test \
+rulepat.test \
+self-check-cleanup.tap \
+self-check-dir.tap \
+self-check-env-sanitize.tap \
+self-check-exit.tap \
+self-check-explicit-skips.test \
+self-check-is_newest.tap \
+self-check-me.tap \
+self-check-reexec.tap \
+self-check-report.test \
+self-check-sanity.test \
+self-check-seq.tap \
+self-check-is-blocked-signal.tap \
+self-check-tap.test \
+self-check-unindent.tap \
+sanity.test \
+scripts.test \
+seenc.test \
+silent.test \
+silent2.test \
+silent3.test \
+silent4.test \
+silent6.test \
+silent7.test \
+silent8.test \
+silent9.test \
+silentcxx.test \
+silentcxx-gcc.test \
+silentf77.test \
+silentf90.test \
+silent-many-gcc.test \
+silent-many-generic.test \
+silent-lex-gcc.test \
+silent-lex-generic.test \
+silent-yacc-gcc.test \
+silent-yacc-generic.test \
+silent-nowarn.test \
+silent-configsite.test \
+srcsub.test \
+srcsub2.test \
+space.test \
+specflg.test \
+specflg2.test \
+specflg3.test \
+specflg6.test \
+specflg7.test \
+specflg8.test \
+specflg9.test \
+specflg10.test \
+specflg-dummy.test \
+spell.test \
+spell2.test \
+spell3.test \
+spelling.test \
+spy.test \
+stdinc.test \
+stamph2.test \
+stdlib.test \
+stdlib2.test \
+strictness-override.test \
+strictness-precedence.test \
+strip.test \
+strip2.test \
+strip3.test \
+subdir.test \
+subdir2.test \
+subdir3.test \
+subdir4.test \
+subdir5.test \
+subdir6.test \
+subdir7.test \
+subdir8.test \
+subdir9.test \
+subdir10.test \
+subdirbuiltsources.test \
+subcond.test \
+subcond2.test \
+subcond3.test \
+subobj.test \
+subobj2.test \
+subobj4.test \
+subobj5.test \
+subobj6.test \
+subobj7.test \
+subobj8.test \
+subobj9.test \
+subobj10.test \
+subobj11a.test \
+subobj11b.test \
+subobj11c.test \
+subobjname.test \
+subpkg.test \
+subpkg2.test \
+subpkg3.test \
+subpkg4.test \
+subst.test \
+subst3.test \
+subst4.test \
+subst5.test \
+subst-no-trailing-empty-line.test \
+substref.test \
+substre2.test \
+substtarg.test \
+suffix.test \
+suffix2.test \
+suffix3.tap \
+suffix4.test \
+suffix5.test \
+suffix6.test \
+suffix6b.test \
+suffix6c.test \
+suffix7.test \
+suffix8.tap \
+suffix9.test \
+suffix10.tap \
+suffix11.tap \
+suffix12.test \
+suffix13.test \
+suffix-chain.tap \
+symlink.test \
+symlink2.test \
+syntax.test \
+tap-ambiguous-directive.test \
+tap-autonumber.test \
+tap-bailout.test \
+tap-bailout-and-logging.test \
+tap-bailout-suppress-badexit.test \
+tap-bailout-suppress-later-diagnostic.test \
+tap-bailout-suppress-later-errors.test \
+tap-color.test \
+tap-deps.test \
+tap-diagnostic.test \
+tap-empty-diagnostic.test \
+tap-empty.test \
+tap-escape-directive.test \
+tap-escape-directive-2.test \
+tap-exit.test \
+tap-signal.tap \
+tap-fancy.test \
+tap-fancy2.test \
+tap-global-log.test \
+tap-global-result.test \
+tap-html.test \
+tap-log.test \
+tap-msg0-result.test \
+tap-msg0-directive.test \
+tap-msg0-planskip.test \
+tap-msg0-bailout.test \
+tap-msg0-misc.test \
+tap-merge-stdout-stderr.test \
+tap-no-merge-stdout-stderr.test \
+tap-no-disable-hard-error.test \
+tap-no-spurious-summary.test \
+tap-no-spurious-numbers.test \
+tap-no-spurious.test \
+tap-not-ok-skip.test \
+tap-number-wordboundary.test \
+tap-numeric-description.test \
+tap-negative-numbers.test \
+tap-numbers-leading-zero.test \
+tap-out-of-order.test \
+tap-passthrough.test \
+tap-passthrough-exit.test \
+tap-plan.test \
+tap-plan-corner.test \
+tap-plan-errors.test \
+tap-plan-middle.test \
+tap-plan-whitespace.test \
+tap-plan-leading-zero.test \
+tap-plan-malformed.test \
+tap-missing-plan-and-bad-exit.test \
+tap-planskip.test \
+tap-planskip-late.test \
+tap-planskip-and-logging.test \
+tap-planskip-unplanned.test \
+tap-planskip-unplanned-corner.test \
+tap-planskip-case-insensitive.test \
+tap-planskip-whitespace.test \
+tap-planskip-badexit.test \
+tap-planskip-bailout.test \
+tap-planskip-later-errors.test \
+tap-realtime.test \
+tap-test-number-0.test \
+tap-recheck-logs.test \
+tap-result-comment.test \
+tap-todo-skip-together.test \
+tap-todo-skip-whitespace.test \
+tap-todo-skip.test \
+tap-unplanned.test \
+tap-whitespace-normalization.test \
+tap-with-and-without-number.test \
+tap-xfail-tests.test \
+tap-common-setup.test \
+tap-bad-prog.tap \
+tap-basic.test \
+tap-diagnostic-custom.test \
+tap-driver-stderr.test \
+tap-doc.test \
+tap-doc2.test \
+tap-more.test \
+tap-more2.test \
+tap-recheck.test \
+tap-summary.test \
+tap-summary-color.test \
+tags.test \
+tags2.test \
+tagsub.test \
+tar.test \
+tar2.test \
+tar3.test \
+target-cflags.test \
+targetclash.test \
+tests-environment-fd-redirect.test \
+tests-environment-and-log-compiler.test \
+txinfo.test \
+txinfo2.test \
+txinfo3.test \
+txinfo4.test \
+txinfo5.test \
+txinfo5b.test \
+txinfo6.test \
+txinfo7.test \
+txinfo8.test \
+txinfo9.test \
+txinfo10.test \
+txinfo13.test \
+txinfo16.test \
+txinfo17.test \
+txinfo18.test \
+txinfo19.test \
+txinfo20.test \
+txinfo21.test \
+txinfo22.test \
+txinfo23.test \
+txinfo24.test \
+txinfo25.test \
+txinfo26.test \
+txinfo27.test \
+txinfo28.test \
+txinfo29.test \
+txinfo30.test \
+txinfo31.test \
+txinfo32.test \
+txinfo33.test \
+txinfo-unrecognized-extension.test \
+transform.test \
+transform2.test \
+unused.test \
+upc.test \
+upc2.test \
+upc3.test \
+vala.test \
+vala1.test \
+vala2.test \
+vala3.test \
+vala4.test \
+vala5.test \
+vala-vpath.test \
+vars.test \
+vars3.test \
+vartar.test \
+vartypos.test \
+vartypo2.test \
+version.test \
+version2.test \
+version3.test \
+version4.test \
+version6.test \
+version7.test \
+version8.test \
+vpath.test \
+vtexi.test \
+vtexi2.test \
+vtexi3.test \
+vtexi4.test \
+warnings-override.test \
+warnings-precedence.test \
+warnings-strictness-interactions.test \
+warnings-unknown.test \
+warnopts.test \
+warnings-win-over-strictness.test \
+warning-groups-win-over-strictness.test \
+werror.test \
+werror2.test \
+werror3.test \
+werror4.test \
+whoami.test \
+xsource.test \
+xz.test \
+yacc-basic.test \
+yacc-d-basic.test \
+yacc-clean.test \
+yacc.test \
+yacc2.test \
+yacc4.test \
+yacc5.test \
+yacc6.test \
+yacc7.test \
+yacc8.test \
+yaccdry.test \
+yacc-dist-nobuild.test \
+yacc-nodist.test \
+yaccpp.test \
+yaccvpath.test \
+yacc-d-vpath.test \
+yacc-dist-nobuild-subdir.test \
+yflags.test \
+yflags2.test \
+yflags-cmdline-override.test \
+yflags-conditional.test \
+yflags-d-false-positives.test \
+yflags-force-override.test \
+yflags-force-conditional.test \
+yflags-var-expand.test
+
+print-list-of-tests:
+ @echo $(handwritten_TESTS)
+.PHONY: print-list-of-tests