summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
Diffstat (limited to 't')
-rwxr-xr-xt/ac-output-old.tap25
-rwxr-xr-xt/acloca10.sh2
-rwxr-xr-xt/acloca17.sh41
-rwxr-xr-xt/aclocal-I-order-1.sh (renamed from t/aclocal9.sh)2
-rwxr-xr-xt/aclocal-I-order-2.sh (renamed from t/acloca11.sh)3
-rwxr-xr-xt/aclocal-I-order-3.sh (renamed from t/acloca12.sh)4
-rwxr-xr-xt/aclocal-acdir.sh31
-rwxr-xr-xt/aclocal-amflags.sh69
-rwxr-xr-xt/aclocal-autoconf-version-check.sh (renamed from t/missing6.sh)2
-rwxr-xr-xt/aclocal-comments-respected.sh (renamed from t/acloca21.sh)2
-rwxr-xr-xt/aclocal-deleted-header-aclocal-amflags.sh60
-rwxr-xr-xt/aclocal-deleted-header.sh (renamed from t/acloca22.sh)14
-rwxr-xr-xt/aclocal-deps-subdir.sh (renamed from t/aclocal5.sh)18
-rwxr-xr-xt/aclocal-deps.sh (renamed from t/aclocal4.sh)6
-rwxr-xr-xt/aclocal-install-absdir.sh2
-rwxr-xr-xt/aclocal-install-fail.sh2
-rwxr-xr-xt/aclocal-install-mkdir.sh2
-rwxr-xr-xt/aclocal-m4-include-are-scanned-aclocal-amflags.sh (renamed from t/acloca14.sh)2
-rwxr-xr-xt/aclocal-m4-include-are-scanned.sh108
-rwxr-xr-xt/aclocal-m4-sinclude.sh (renamed from t/acloca13.sh)7
-rwxr-xr-xt/aclocal-macrodir.tap211
-rwxr-xr-xt/aclocal-macrodirs.tap416
-rwxr-xr-xt/aclocal-missing-macros.sh (renamed from t/aclocal3.sh)2
-rwxr-xr-xt/aclocal-no-extra-scan.sh (renamed from t/acloca16.sh)5
-rwxr-xr-xt/aclocal-no-force.sh (renamed from t/aclocal7.sh)2
-rwxr-xr-xt/aclocal-no-install-no-mkdir.sh2
-rwxr-xr-xt/aclocal-no-symlinked-overwrite.sh (renamed from t/acloca20.sh)2
-rwxr-xr-xt/aclocal-no-unused-required.sh (renamed from t/aclocal8.sh)2
-rwxr-xr-xt/aclocal-path-install-serial.sh2
-rwxr-xr-xt/aclocal-path-install.sh4
-rwxr-xr-xt/aclocal-path-nonexistent.sh2
-rwxr-xr-xt/aclocal-path-precedence.sh4
-rwxr-xr-xt/aclocal-path.sh2
-rwxr-xr-xt/aclocal-pr450.sh (renamed from t/acloca19.sh)2
-rwxr-xr-xt/aclocal-print-acdir.sh5
-rwxr-xr-xt/aclocal-remake-misc.sh (renamed from t/aclocal6.sh)6
-rwxr-xr-xt/aclocal-scan-configure-ac-pr319.sh (renamed from t/acloca15.sh)2
-rwxr-xr-xt/aclocal-serial.sh (renamed from t/acloca18.sh)2
-rwxr-xr-xt/aclocal-underquoted-defun.sh (renamed from t/acloca23.sh)2
-rwxr-xr-xt/aclocal-verbose-install.sh2
-rwxr-xr-xt/aclocal.sh2
-rwxr-xr-xt/acsilent.sh9
-rwxr-xr-xt/acsubst.sh2
-rwxr-xr-xt/acsubst2.sh2
-rwxr-xr-xt/add-missing.tap13
-rwxr-xr-xt/all.sh2
-rwxr-xr-xt/all2.sh2
-rwxr-xr-xt/alloca.sh2
-rwxr-xr-xt/alloca2.sh2
-rwxr-xr-xt/alpha.sh2
-rwxr-xr-xt/alpha2.sh2
-rwxr-xr-xt/am-default-source-ext.sh2
-rwxr-xr-xt/am-macro-not-found.sh2
-rwxr-xr-xt/am-missing-prog.sh6
-rwxr-xr-xt/am-tests-environment.sh2
-rwxr-xr-xt/amassign.sh2
-rwxr-xr-xt/amhello-binpkg.sh2
-rwxr-xr-xt/amhello-cflags.sh2
-rwxr-xr-xt/amhello-cross-compile.sh2
-rwxr-xr-xt/aminit-moreargs-deprecation.sh2
-rwxr-xr-xt/amopt.sh2
-rwxr-xr-xt/amopts-location.sh2
-rwxr-xr-xt/amopts-variable-expansion.sh2
-rwxr-xr-xt/amsubst.sh2
-rwxr-xr-xt/ansi2knr-no-more.sh2
-rwxr-xr-xt/ar-lib.sh2
-rwxr-xr-xt/ar-lib2.sh2
-rwxr-xr-xt/ar-lib3.sh2
-rwxr-xr-xt/ar-lib4.sh2
-rwxr-xr-xt/ar-lib5a.sh2
-rwxr-xr-xt/ar-lib5b.sh2
-rwxr-xr-xt/ar-lib6a.sh2
-rwxr-xr-xt/ar-lib6b.sh2
-rwxr-xr-xt/ar-lib7.sh2
-rwxr-xr-xt/ar.sh2
-rwxr-xr-xt/ar2.sh2
-rwxr-xr-xt/ar3.sh2
-rwxr-xr-xt/ar4.sh2
-rwxr-xr-xt/ar5.sh2
-rwxr-xr-xt/asm.sh2
-rwxr-xr-xt/asm2.sh2
-rwxr-xr-xt/asm3.sh2
-rwxr-xr-xt/autodist-acconfig-no-subdir.sh2
-rwxr-xr-xt/autodist-acconfig.sh2
-rwxr-xr-xt/autodist-aclocal-m4.sh2
-rwxr-xr-xt/autodist-config-headers.sh2
-rwxr-xr-xt/autodist-configure-no-subdir.sh2
-rwxr-xr-xt/autodist-no-duplicate.sh2
-rwxr-xr-xt/autodist-stamp-vti.sh2
-rwxr-xr-xt/autodist-subdir.sh2
-rwxr-xr-xt/autodist.sh2
-rwxr-xr-xt/autohdr-subdir-pr12495.sh2
-rwxr-xr-xt/autohdr.sh2
-rwxr-xr-xt/autohdr2.sh30
-rwxr-xr-xt/autohdr3.sh2
-rwxr-xr-xt/autohdr4.sh2
-rwxr-xr-xt/autohdrdry.sh4
-rwxr-xr-xt/automake-cmdline.tap2
-rwxr-xr-xt/auxdir-autodetect.sh2
-rwxr-xr-xt/auxdir-computed.tap2
-rwxr-xr-xt/auxdir-misplaced.sh2
-rwxr-xr-xt/auxdir-nonexistent.sh2
-rwxr-xr-xt/auxdir-unportable.tap2
-rwxr-xr-xt/auxdir.sh2
-rwxr-xr-xt/auxdir6.sh2
-rwxr-xr-xt/auxdir7.sh2
-rwxr-xr-xt/auxdir8.sh2
-rw-r--r--t/ax/am-test-lib.sh17
-rw-r--r--t/ax/depcomp.sh2
-rw-r--r--t/ax/extract-testsuite-summary.pl4
-rw-r--r--t/ax/tap-setup.sh2
-rw-r--r--t/ax/tap-summary-aux.sh5
-rw-r--r--t/ax/testsuite-summary-checks.sh8
-rwxr-xr-xt/backcompat-acout.sh (renamed from t/backcompat4.sh)2
-rwxr-xr-xt/backcompat.sh2
-rwxr-xr-xt/backcompat2.sh2
-rwxr-xr-xt/backcompat3.sh13
-rwxr-xr-xt/backcompat5.sh126
-rwxr-xr-xt/backcompat6.sh8
-rwxr-xr-xt/backsl.sh2
-rwxr-xr-xt/backsl2.sh2
-rwxr-xr-xt/backsl3.sh2
-rwxr-xr-xt/backsl4.sh2
-rwxr-xr-xt/badline.sh2
-rwxr-xr-xt/badopt.sh2
-rwxr-xr-xt/badprog.sh2
-rwxr-xr-xt/block.sh2
-rwxr-xr-xt/built-sources-check.sh2
-rwxr-xr-xt/built-sources-cond.sh2
-rwxr-xr-xt/built-sources-fork-bomb.sh2
-rwxr-xr-xt/built-sources-install.sh2
-rwxr-xr-xt/built-sources-subdir.sh2
-rwxr-xr-xt/built-sources.sh2
-rwxr-xr-xt/candist.sh2
-rwxr-xr-xt/canon-name.sh2
-rwxr-xr-xt/canon.sh2
-rwxr-xr-xt/canon2.sh2
-rwxr-xr-xt/canon3.sh2
-rwxr-xr-xt/canon4.sh2
-rwxr-xr-xt/canon5.sh2
-rwxr-xr-xt/canon6.sh2
-rwxr-xr-xt/canon7.sh2
-rwxr-xr-xt/canon8.sh2
-rwxr-xr-xt/ccnoco.sh5
-rwxr-xr-xt/ccnoco2.sh2
-rwxr-xr-xt/ccnoco3.sh5
-rwxr-xr-xt/check-concurrency-bug9245.sh2
-rwxr-xr-xt/check-exported-srcdir.sh4
-rwxr-xr-xt/check-fd-redirect.sh2
-rwxr-xr-xt/check-no-test-driver.sh10
-rwxr-xr-xt/check-subst-prog.sh2
-rwxr-xr-xt/check-subst.sh4
-rwxr-xr-xt/check-tests-in-builddir.sh10
-rwxr-xr-xt/check.sh2
-rwxr-xr-xt/check10.sh2
-rwxr-xr-xt/check11.sh2
-rwxr-xr-xt/check12.sh2
-rwxr-xr-xt/check2.sh2
-rwxr-xr-xt/check4.sh2
-rwxr-xr-xt/check5.sh2
-rwxr-xr-xt/check6.sh2
-rwxr-xr-xt/check7.sh2
-rwxr-xr-xt/check8.sh4
-rwxr-xr-xt/checkall.sh2
-rwxr-xr-xt/clean.sh2
-rwxr-xr-xt/colneq.sh2
-rwxr-xr-xt/colneq2.sh2
-rwxr-xr-xt/colneq3.sh2
-rwxr-xr-xt/colon.sh2
-rwxr-xr-xt/colon2.sh2
-rwxr-xr-xt/colon3.sh2
-rwxr-xr-xt/colon4.sh2
-rwxr-xr-xt/colon5.sh2
-rwxr-xr-xt/colon6.sh2
-rwxr-xr-xt/colon7.sh2
-rwxr-xr-xt/color-tests-opt.sh (renamed from t/version.sh)32
-rwxr-xr-xt/color-tests.sh (renamed from t/color.sh)3
-rwxr-xr-xt/color-tests2.sh (renamed from t/color2.sh)20
-rwxr-xr-xt/commen10.sh2
-rwxr-xr-xt/commen11.sh2
-rwxr-xr-xt/comment.sh2
-rwxr-xr-xt/comment2.sh2
-rwxr-xr-xt/comment3.sh2
-rwxr-xr-xt/comment4.sh2
-rwxr-xr-xt/comment5.sh2
-rwxr-xr-xt/comment6.sh2
-rwxr-xr-xt/comment7.sh4
-rwxr-xr-xt/comment8.sh2
-rwxr-xr-xt/comment9.sh2
-rwxr-xr-xt/comments-in-var-def.sh2
-rwxr-xr-xt/compile.sh2
-rwxr-xr-xt/compile2.sh2
-rwxr-xr-xt/compile3.sh2
-rwxr-xr-xt/compile4.sh2
-rwxr-xr-xt/compile5.sh2
-rwxr-xr-xt/compile6.sh2
-rwxr-xr-xt/compile_f90_c_cxx.sh2
-rwxr-xr-xt/compile_f_c_cxx.sh8
-rwxr-xr-xt/cond-basic.sh2
-rwxr-xr-xt/cond.sh2
-rwxr-xr-xt/cond10.sh2
-rwxr-xr-xt/cond11.sh2
-rwxr-xr-xt/cond13.sh2
-rwxr-xr-xt/cond14.sh2
-rwxr-xr-xt/cond15.sh2
-rwxr-xr-xt/cond16.sh2
-rwxr-xr-xt/cond17.sh2
-rwxr-xr-xt/cond18.sh2
-rwxr-xr-xt/cond19.sh2
-rwxr-xr-xt/cond20.sh2
-rwxr-xr-xt/cond21.sh2
-rwxr-xr-xt/cond22.sh2
-rwxr-xr-xt/cond23.sh2
-rwxr-xr-xt/cond24.sh2
-rwxr-xr-xt/cond25.sh2
-rwxr-xr-xt/cond26.sh2
-rwxr-xr-xt/cond27.sh2
-rwxr-xr-xt/cond28.sh2
-rwxr-xr-xt/cond3.sh2
-rwxr-xr-xt/cond30.sh2
-rwxr-xr-xt/cond31.sh2
-rwxr-xr-xt/cond32.sh2
-rwxr-xr-xt/cond33.sh2
-rwxr-xr-xt/cond34.sh2
-rwxr-xr-xt/cond35.sh2
-rwxr-xr-xt/cond36.sh2
-rwxr-xr-xt/cond37.sh2
-rwxr-xr-xt/cond38.sh2
-rwxr-xr-xt/cond39.sh2
-rwxr-xr-xt/cond4.sh2
-rwxr-xr-xt/cond40.sh2
-rwxr-xr-xt/cond41.sh2
-rwxr-xr-xt/cond42.sh2
-rwxr-xr-xt/cond43.sh2
-rwxr-xr-xt/cond44.sh2
-rwxr-xr-xt/cond45.sh2
-rwxr-xr-xt/cond46.sh2
-rwxr-xr-xt/cond5.sh2
-rwxr-xr-xt/cond6.sh2
-rwxr-xr-xt/cond7.sh2
-rwxr-xr-xt/cond8.sh2
-rwxr-xr-xt/cond9.sh2
-rwxr-xr-xt/condd.sh2
-rwxr-xr-xt/condhook.sh2
-rwxr-xr-xt/condhook2.sh2
-rwxr-xr-xt/condinc.sh2
-rwxr-xr-xt/condinc2.sh2
-rwxr-xr-xt/condlib.sh2
-rwxr-xr-xt/condman2.sh2
-rwxr-xr-xt/condman3.sh2
-rwxr-xr-xt/confdeps.sh2
-rwxr-xr-xt/conff.sh2
-rwxr-xr-xt/conff2.sh6
-rwxr-xr-xt/conffile-leading-dot.sh2
-rwxr-xr-xt/confh-subdir-clean.sh4
-rwxr-xr-xt/confh.sh4
-rwxr-xr-xt/confh4.sh4
-rwxr-xr-xt/confh5.sh2
-rwxr-xr-xt/confh6.sh4
-rwxr-xr-xt/confh7.sh4
-rwxr-xr-xt/confh8.sh4
-rwxr-xr-xt/configure.sh2
-rwxr-xr-xt/confincl.sh2
-rwxr-xr-xt/conflnk.sh2
-rwxr-xr-xt/conflnk2.sh2
-rwxr-xr-xt/conflnk3.sh2
-rwxr-xr-xt/conflnk4.sh2
-rwxr-xr-xt/confsub.sh4
-rwxr-xr-xt/confvar.sh2
-rwxr-xr-xt/confvar2.sh2
-rwxr-xr-xt/copy.sh2
-rwxr-xr-xt/cscope.tap2
-rwxr-xr-xt/cscope2.sh2
-rwxr-xr-xt/cscope3.sh2
-rwxr-xr-xt/cxx-demo.sh2
-rwxr-xr-xt/cxx-lt-demo.sh2
-rwxr-xr-xt/cxx.sh2
-rwxr-xr-xt/cxx2.sh2
-rwxr-xr-xt/cxxcpp.sh2
-rwxr-xr-xt/cxxlibobj.sh2
-rwxr-xr-xt/cxxlink.sh2
-rwxr-xr-xt/cxxnoc.sh2
-rwxr-xr-xt/cygnus-dependency-tracking.sh74
-rwxr-xr-xt/cygnus-imply-foreign.sh60
-rwxr-xr-xt/cygnus-no-dist.sh86
-rwxr-xr-xt/cygnus-no-installinfo.sh55
-rwxr-xr-xt/cygnus-no-more.sh (renamed from t/cygnus-deprecation.sh)32
-rwxr-xr-xt/cygwin32.sh2
-rwxr-xr-xt/dash.sh2
-rwxr-xr-xt/defun.sh2
-rwxr-xr-xt/defun2.sh2
-rwxr-xr-xt/dejagnu-absolute-builddir.sh2
-rwxr-xr-xt/dejagnu-relative-srcdir.sh2
-rwxr-xr-xt/dejagnu-siteexp-append.sh2
-rwxr-xr-xt/dejagnu-siteexp-extend.sh2
-rwxr-xr-xt/dejagnu-siteexp-useredit.sh2
-rwxr-xr-xt/dejagnu.sh2
-rwxr-xr-xt/dejagnu2.sh2
-rwxr-xr-xt/dejagnu3.sh2
-rwxr-xr-xt/dejagnu4.sh2
-rwxr-xr-xt/dejagnu5.sh2
-rwxr-xr-xt/dejagnu6.sh2
-rwxr-xr-xt/dejagnu7.sh2
-rwxr-xr-xt/deleted-am.sh2
-rwxr-xr-xt/deleted-m4.sh2
-rwxr-xr-xt/depacl2.sh2
-rwxr-xr-xt/depcomp-implicit-auxdir.sh2
-rwxr-xr-xt/depcomp.sh2
-rwxr-xr-xt/depcomp2.sh2
-rwxr-xr-xt/depcomp8a.sh2
-rwxr-xr-xt/depcomp8b.sh2
-rwxr-xr-xt/depdist.sh2
-rwxr-xr-xt/depend.sh2
-rwxr-xr-xt/depend3.sh2
-rwxr-xr-xt/depend4.sh2
-rwxr-xr-xt/depend5.sh7
-rwxr-xr-xt/depend6.sh2
-rwxr-xr-xt/deprecated-acinit.sh2
-rwxr-xr-xt/destdir.sh2
-rwxr-xr-xt/dir-named-obj-is-bad.sh2
-rwxr-xr-xt/dirlist-abspath.sh2
-rwxr-xr-xt/dirlist.sh9
-rwxr-xr-xt/dirlist2.sh11
-rwxr-xr-xt/discover.sh2
-rwxr-xr-xt/dist-auxdir-many-subdirs.sh7
-rwxr-xr-xt/dist-auxfile-2.sh2
-rwxr-xr-xt/dist-auxfile.sh2
-rwxr-xr-xt/dist-formats.tap2
-rwxr-xr-xt/dist-included-parent-dir.sh2
-rwxr-xr-xt/dist-missing-am.sh2
-rwxr-xr-xt/dist-missing-included-m4.sh2
-rwxr-xr-xt/dist-missing-m4.sh2
-rwxr-xr-xt/dist-pr109765.sh2
-rwxr-xr-xt/dist-readonly.sh2
-rwxr-xr-xt/dist-repeated.sh2
-rwxr-xr-xt/distcheck-configure-flags-am.sh2
-rwxr-xr-xt/distcheck-configure-flags-subpkg.sh2
-rwxr-xr-xt/distcheck-configure-flags.sh2
-rwxr-xr-xt/distcheck-hook.sh2
-rwxr-xr-xt/distcheck-hook2.sh2
-rwxr-xr-xt/distcheck-missing-m4.sh2
-rwxr-xr-xt/distcheck-outdated-m4.sh2
-rwxr-xr-xt/distcheck-override-infodir.sh2
-rwxr-xr-xt/distcheck-pr10470.sh2
-rwxr-xr-xt/distcheck-pr9579.sh2
-rwxr-xr-xt/distcheck-writable-srcdir.sh2
-rwxr-xr-xt/distcleancheck.sh2
-rwxr-xr-xt/distcom-subdir.sh4
-rwxr-xr-xt/distcom2.sh4
-rwxr-xr-xt/distcom3.sh2
-rwxr-xr-xt/distcom4.sh5
-rwxr-xr-xt/distcom5.sh2
-rwxr-xr-xt/distdir.sh2
-rwxr-xr-xt/disthook.sh2
-rwxr-xr-xt/distlinks.sh2
-rwxr-xr-xt/distlinksbrk.sh2
-rwxr-xr-xt/distname.sh2
-rwxr-xr-xt/dmalloc.sh2
-rwxr-xr-xt/doc-parsing-buglets-colneq-subst.sh2
-rwxr-xr-xt/doc-parsing-buglets-tabs.sh2
-rwxr-xr-xt/dollar.sh2
-rwxr-xr-xt/dollarvar.sh13
-rwxr-xr-xt/dollarvar2.sh2
-rwxr-xr-xt/double.sh2
-rwxr-xr-xt/dup2.sh2
-rwxr-xr-xt/else.sh2
-rwxr-xr-xt/empty-data-primary.sh2
-rwxr-xr-xt/empty-sources-primary.tap2
-rwxr-xr-xt/exdir.sh2
-rwxr-xr-xt/exdir2.sh2
-rwxr-xr-xt/exdir3.sh2
-rwxr-xr-xt/exeext.sh2
-rwxr-xr-xt/exeext2.sh2
-rwxr-xr-xt/exeext3.sh2
-rwxr-xr-xt/exeext4.sh2
-rwxr-xr-xt/exsource.sh2
-rwxr-xr-xt/ext.sh9
-rwxr-xr-xt/ext2.sh2
-rwxr-xr-xt/ext3.sh2
-rwxr-xr-xt/extra-portability.sh2
-rwxr-xr-xt/extra-portability2.sh2
-rwxr-xr-xt/extra-portability3.sh2
-rwxr-xr-xt/extra-programs-empty.sh2
-rwxr-xr-xt/extra.sh2
-rwxr-xr-xt/extra10.sh2
-rwxr-xr-xt/extra11.sh2
-rwxr-xr-xt/extra12.sh2
-rwxr-xr-xt/extra2.sh2
-rwxr-xr-xt/extra3.sh2
-rwxr-xr-xt/extra4.sh2
-rwxr-xr-xt/extra5.sh2
-rwxr-xr-xt/extra6.sh2
-rwxr-xr-xt/extra7.sh2
-rwxr-xr-xt/extra8.sh2
-rwxr-xr-xt/extra9.sh2
-rwxr-xr-xt/extradep.sh2
-rwxr-xr-xt/extradep2.sh2
-rwxr-xr-xt/f90only.sh2
-rwxr-xr-xt/flavor.sh19
-rwxr-xr-xt/flibs.sh2
-rwxr-xr-xt/fn99.sh2
-rwxr-xr-xt/fn99subdir.sh2
-rwxr-xr-xt/fnoc.sh2
-rwxr-xr-xt/fonly.sh2
-rwxr-xr-xt/forcemiss.sh2
-rwxr-xr-xt/forcemiss2.sh2
-rwxr-xr-xt/fort1.sh2
-rwxr-xr-xt/fort2.sh2
-rwxr-xr-xt/fort4.sh2
-rwxr-xr-xt/fort5.sh2
-rwxr-xr-xt/fortdep.sh2
-rwxr-xr-xt/gcj.sh2
-rwxr-xr-xt/gcj2.sh2
-rwxr-xr-xt/gcj3.sh2
-rwxr-xr-xt/gcj4.sh2
-rwxr-xr-xt/gcj5.sh2
-rwxr-xr-xt/gcj6.sh2
-rwxr-xr-xt/get-sysconf.sh2
-rwxr-xr-xt/gettext-macros.sh6
-rwxr-xr-xt/gettext.sh2
-rwxr-xr-xt/gettext2.sh2
-rwxr-xr-xt/gettext3.sh2
-rwxr-xr-xt/gnits.sh2
-rwxr-xr-xt/gnits2.sh2
-rwxr-xr-xt/gnits3.sh2
-rwxr-xr-xt/gnumake.sh2
-rwxr-xr-xt/gnuwarn.sh2
-rwxr-xr-xt/gnuwarn2.sh2
-rwxr-xr-xt/hdr-vars-defined-once.sh2
-rwxr-xr-xt/header.sh2
-rwxr-xr-xt/help-depend.sh2
-rwxr-xr-xt/help-depend2.sh2
-rwxr-xr-xt/help-dmalloc.sh2
-rwxr-xr-xt/help-init.sh2
-rwxr-xr-xt/help-lispdir.sh2
-rwxr-xr-xt/help-multilib.sh34
-rwxr-xr-xt/help-python.sh2
-rwxr-xr-xt/help-silent.sh21
-rwxr-xr-xt/help-upc.sh2
-rwxr-xr-xt/help.sh2
-rwxr-xr-xt/help2.sh2
-rwxr-xr-xt/help3.sh2
-rwxr-xr-xt/help4.sh2
-rwxr-xr-xt/hfs.sh2
-rwxr-xr-xt/implicit.sh2
-rwxr-xr-xt/init.sh2
-rwxr-xr-xt/init2.sh2
-rwxr-xr-xt/insh2.sh2
-rwxr-xr-xt/install-info-dir.sh2
-rwxr-xr-xt/install2.sh2
-rwxr-xr-xt/installdir.sh2
-rwxr-xr-xt/instdat.sh2
-rwxr-xr-xt/instdat2.sh2
-rwxr-xr-xt/instdir-cond.sh2
-rwxr-xr-xt/instdir-cond2.sh2
-rwxr-xr-xt/instdir-java.sh2
-rwxr-xr-xt/instdir-lisp.sh2
-rwxr-xr-xt/instdir-ltlib.sh2
-rwxr-xr-xt/instdir-no-empty.sh2
-rwxr-xr-xt/instdir-prog.sh2
-rwxr-xr-xt/instdir-python.sh2
-rwxr-xr-xt/instdir-texi.sh4
-rwxr-xr-xt/instdir.sh2
-rwxr-xr-xt/instdir2.sh2
-rwxr-xr-xt/instexec.sh2
-rwxr-xr-xt/instfail-info.sh2
-rwxr-xr-xt/instfail-java.sh2
-rwxr-xr-xt/instfail-libtool.sh2
-rwxr-xr-xt/instfail.sh2
-rwxr-xr-xt/insthook.sh2
-rwxr-xr-xt/instman.sh2
-rwxr-xr-xt/instman2.sh2
-rwxr-xr-xt/instmany-mans.sh2
-rwxr-xr-xt/instmany-python.sh2
-rwxr-xr-xt/instmany.sh2
-rwxr-xr-xt/instsh.sh2
-rwxr-xr-xt/instsh2.sh2
-rwxr-xr-xt/instsh3.sh2
-rwxr-xr-xt/instspc.tap2
-rwxr-xr-xt/interp.sh2
-rwxr-xr-xt/interp2.sh2
-rwxr-xr-xt/java-check.sh2
-rwxr-xr-xt/java-clean.sh2
-rwxr-xr-xt/java-compile-install.sh2
-rwxr-xr-xt/java-compile-run-flat.sh6
-rwxr-xr-xt/java-compile-run-nested.sh12
-rwxr-xr-xt/java-empty-classpath.sh2
-rwxr-xr-xt/java-extra.sh2
-rwxr-xr-xt/java-mix.sh2
-rwxr-xr-xt/java-no-duplicate.sh2
-rwxr-xr-xt/java-nobase.sh2
-rwxr-xr-xt/java-noinst.sh2
-rwxr-xr-xt/java-rebuild.sh2
-rwxr-xr-xt/java-sources.sh2
-rwxr-xr-xt/java-uninstall.sh2
-rwxr-xr-xt/java.sh2
-rwxr-xr-xt/java2.sh2
-rwxr-xr-xt/java3.sh2
-rwxr-xr-xt/javadir-undefined.sh2
-rwxr-xr-xt/javaflags.sh2
-rwxr-xr-xt/javaprim.sh2
-rwxr-xr-xt/javasubst.sh2
-rwxr-xr-xt/ldadd.sh2
-rwxr-xr-xt/ldflags.sh2
-rwxr-xr-xt/lex-clean-cxx.sh2
-rwxr-xr-xt/lex-clean.sh2
-rwxr-xr-xt/lex-depend-cxx.sh2
-rwxr-xr-xt/lex-depend-grep.sh2
-rwxr-xr-xt/lex-depend.sh2
-rwxr-xr-xt/lex-header.sh2
-rwxr-xr-xt/lex-lib-external.sh2
-rwxr-xr-xt/lex-lib.sh2
-rwxr-xr-xt/lex-libobj.sh2
-rwxr-xr-xt/lex-line.sh2
-rwxr-xr-xt/lex-nodist.sh2
-rwxr-xr-xt/lex-noyywrap.sh2
-rwxr-xr-xt/lex-pr204.sh2
-rwxr-xr-xt/lex-subobj-nodep.sh2
-rwxr-xr-xt/lex.sh2
-rwxr-xr-xt/lex2.sh2
-rwxr-xr-xt/lex3.sh2
-rwxr-xr-xt/lex5.sh2
-rwxr-xr-xt/lexcpp.sh2
-rwxr-xr-xt/lexvpath.sh2
-rwxr-xr-xt/lflags.sh2
-rwxr-xr-xt/lflags2.sh2
-rwxr-xr-xt/libexec.sh2
-rwxr-xr-xt/libobj-basic.sh2
-rwxr-xr-xt/libobj10.sh2
-rwxr-xr-xt/libobj12.sh2
-rwxr-xr-xt/libobj13.sh2
-rwxr-xr-xt/libobj14.sh2
-rwxr-xr-xt/libobj15a.sh2
-rwxr-xr-xt/libobj15b.sh2
-rwxr-xr-xt/libobj15c.sh2
-rwxr-xr-xt/libobj16a.sh2
-rwxr-xr-xt/libobj16b.sh2
-rwxr-xr-xt/libobj17.sh2
-rwxr-xr-xt/libobj18.sh2
-rwxr-xr-xt/libobj19.sh2
-rwxr-xr-xt/libobj2.sh2
-rwxr-xr-xt/libobj20a.sh2
-rwxr-xr-xt/libobj20b.sh2
-rwxr-xr-xt/libobj20c.sh2
-rwxr-xr-xt/libobj3.sh2
-rwxr-xr-xt/libobj4.sh2
-rwxr-xr-xt/libobj5.sh2
-rwxr-xr-xt/libobj7.sh2
-rwxr-xr-xt/library.sh2
-rwxr-xr-xt/library2.sh2
-rwxr-xr-xt/library3.sh2
-rwxr-xr-xt/libtoo10.sh2
-rwxr-xr-xt/libtoo11.sh2
-rwxr-xr-xt/libtool-macros.sh2
-rwxr-xr-xt/libtool.sh2
-rwxr-xr-xt/libtool2.sh2
-rwxr-xr-xt/libtool3.sh2
-rwxr-xr-xt/libtool4.sh2
-rwxr-xr-xt/libtool5.sh2
-rwxr-xr-xt/libtool6.sh2
-rwxr-xr-xt/libtool7.sh2
-rwxr-xr-xt/libtool8.sh2
-rwxr-xr-xt/libtool9.sh2
-rwxr-xr-xt/license.sh2
-rwxr-xr-xt/license2.sh2
-rwxr-xr-xt/link_c_cxx.sh2
-rwxr-xr-xt/link_cond.sh2
-rwxr-xr-xt/link_dist.sh2
-rwxr-xr-xt/link_f90_only.sh2
-rwxr-xr-xt/link_f_only.sh2
-rwxr-xr-xt/link_fc.sh2
-rwxr-xr-xt/link_fccxx.sh2
-rwxr-xr-xt/link_fcxx.sh2
-rwxr-xr-xt/link_override.sh2
-rwxr-xr-xt/lisp-flags.sh (renamed from t/version2.sh)40
-rwxr-xr-xt/lisp-loadpath.sh67
-rwxr-xr-xt/lisp-pr11806.sh2
-rwxr-xr-xt/lisp-subdir-mix.sh96
-rwxr-xr-xt/lisp-subdir.sh80
-rwxr-xr-xt/lisp-subdir2.sh78
-rwxr-xr-xt/lisp2.sh2
-rwxr-xr-xt/lisp3.sh12
-rwxr-xr-xt/lisp4.sh3
-rwxr-xr-xt/lisp5.sh3
-rwxr-xr-xt/lisp6.sh7
-rwxr-xr-xt/lisp7.sh4
-rwxr-xr-xt/lisp8.sh6
-rwxr-xr-xt/lispdry.sh6
-rw-r--r--t/list-of-tests.mk142
-rwxr-xr-xt/listval.sh2
-rwxr-xr-xt/location.sh2
-rwxr-xr-xt/longlin2.sh2
-rwxr-xr-xt/longline.sh2
-rwxr-xr-xt/ltcond.sh2
-rwxr-xr-xt/ltcond2.sh2
-rwxr-xr-xt/ltconv.sh2
-rwxr-xr-xt/ltdeps.sh2
-rwxr-xr-xt/ltinit.sh2
-rwxr-xr-xt/ltinstloc.sh2
-rwxr-xr-xt/ltlibobjs.sh2
-rwxr-xr-xt/ltlibsrc.sh2
-rwxr-xr-xt/ltorder.sh2
-rwxr-xr-xt/lzma.sh2
-rwxr-xr-xt/m4-inclusion.sh2
-rwxr-xr-xt/maintclean-vpath.sh2
-rwxr-xr-xt/maintclean.sh2
-rwxr-xr-xt/maintmode-configure-msg.sh2
-rwxr-xr-xt/make-dryrun.tap2
-rwxr-xr-xt/make.sh2
-rwxr-xr-xt/makefile-deps.sh2
-rwxr-xr-xt/makej.sh2
-rwxr-xr-xt/makej2.sh2
-rwxr-xr-xt/maken.sh2
-rwxr-xr-xt/maken3.sh12
-rwxr-xr-xt/makevars.sh2
-rwxr-xr-xt/man.sh2
-rwxr-xr-xt/man2.sh2
-rwxr-xr-xt/man3.sh2
-rwxr-xr-xt/man4.sh105
-rwxr-xr-xt/man5.sh2
-rwxr-xr-xt/man6.sh6
-rwxr-xr-xt/man7.sh2
-rwxr-xr-xt/man8.sh2
-rwxr-xr-xt/mdate.sh2
-rwxr-xr-xt/mdate2.sh2
-rwxr-xr-xt/mdate3.sh2
-rwxr-xr-xt/mdate4.sh2
-rwxr-xr-xt/mdate5.sh2
-rwxr-xr-xt/mdate6.sh2
-rwxr-xr-xt/missing-auxfile-stops-makefiles-creation.sh2
-rwxr-xr-xt/missing-version-mismatch.sh (renamed from t/missing2.sh)56
-rwxr-xr-xt/missing.sh66
-rwxr-xr-xt/missing3.sh50
-rwxr-xr-xt/missing5.sh64
-rwxr-xr-xt/mkdir_p.sh2
-rwxr-xr-xt/mkdirp-deprecation.sh42
-rwxr-xr-xt/mkinst2.sh2
-rwxr-xr-xt/mkinst3.sh2
-rwxr-xr-xt/mkinstall.sh2
-rwxr-xr-xt/mmode.sh2
-rwxr-xr-xt/mmodely.sh2
-rwxr-xr-xt/multlib.sh162
-rwxr-xr-xt/no-extra-makefile-code.sh2
-rwxr-xr-xt/no-spurious-install-recursive.sh2
-rwxr-xr-xt/nobase-libtool.sh2
-rwxr-xr-xt/nobase-nodist.sh2
-rwxr-xr-xt/nobase-python.sh2
-rwxr-xr-xt/nobase.sh2
-rwxr-xr-xt/nodef.sh4
-rwxr-xr-xt/nodef2.sh2
-rwxr-xr-xt/nodep.sh2
-rwxr-xr-xt/nodep2.sh9
-rwxr-xr-xt/nodepcomp.sh2
-rwxr-xr-xt/nodist.sh2
-rwxr-xr-xt/nodist2.sh2
-rwxr-xr-xt/nodist3.sh2
-rwxr-xr-xt/noinst.sh2
-rwxr-xr-xt/noinstdir.sh2
-rwxr-xr-xt/nolink.sh2
-rwxr-xr-xt/nostdinc.sh2
-rwxr-xr-xt/notrans.sh2
-rwxr-xr-xt/number.sh2
-rwxr-xr-xt/objc-basic.sh2
-rwxr-xr-xt/objc-deps.sh2
-rwxr-xr-xt/objc-flags.sh4
-rwxr-xr-xt/objc-megademo.sh12
-rwxr-xr-xt/objc-minidemo.sh2
-rwxr-xr-xt/objcxx-basic.sh13
-rwxr-xr-xt/objcxx-deps.sh12
-rwxr-xr-xt/objcxx-flags.sh15
-rwxr-xr-xt/objcxx-minidemo.sh12
-rwxr-xr-xt/objext-pr10128.sh2
-rwxr-xr-xt/obsolete.sh57
-rwxr-xr-xt/oldvars.sh2
-rwxr-xr-xt/order.sh2
-rwxr-xr-xt/output-order.sh2
-rwxr-xr-xt/output.sh2
-rwxr-xr-xt/output10.sh2
-rwxr-xr-xt/output11.sh2
-rwxr-xr-xt/output12.sh2
-rwxr-xr-xt/output13.sh2
-rwxr-xr-xt/output2.sh2
-rwxr-xr-xt/output3.sh2
-rwxr-xr-xt/output4.sh2
-rwxr-xr-xt/output5.sh2
-rwxr-xr-xt/output6.sh2
-rwxr-xr-xt/output7.sh2
-rwxr-xr-xt/output8.sh2
-rwxr-xr-xt/output9.sh2
-rwxr-xr-xt/override-conditional-1.sh2
-rwxr-xr-xt/override-conditional-2.sh2
-rwxr-xr-xt/override-html.sh2
-rwxr-xr-xt/override-suggest-local.sh2
-rwxr-xr-xt/parallel-am.sh2
-rwxr-xr-xt/parallel-am2.sh2
-rwxr-xr-xt/parallel-am3.sh2
-rwxr-xr-xt/parallel-tests-basics.sh2
-rwxr-xr-xt/parallel-tests-cmdline-override.sh2
-rwxr-xr-xt/parallel-tests-concurrency-2.sh2
-rwxr-xr-xt/parallel-tests-concurrency.sh2
-rwxr-xr-xt/parallel-tests-console-output.sh2
-rwxr-xr-xt/parallel-tests-driver-install.sh49
-rwxr-xr-xt/parallel-tests-dry-run-1.sh4
-rwxr-xr-xt/parallel-tests-dry-run-2.sh4
-rwxr-xr-xt/parallel-tests-empty-testlogs.sh2
-rwxr-xr-xt/parallel-tests-empty.sh2
-rwxr-xr-xt/parallel-tests-exeext.sh2
-rwxr-xr-xt/parallel-tests-exit-statuses.sh2
-rwxr-xr-xt/parallel-tests-extra-programs.sh2
-rwxr-xr-xt/parallel-tests-fd-redirect-exeext.sh2
-rwxr-xr-xt/parallel-tests-fd-redirect.sh2
-rwxr-xr-xt/parallel-tests-fork-bomb.sh2
-rwxr-xr-xt/parallel-tests-generated-and-distributed.sh2
-rwxr-xr-xt/parallel-tests-harderror.sh2
-rwxr-xr-xt/parallel-tests-interrupt.tap4
-rwxr-xr-xt/parallel-tests-log-compiler-1.sh2
-rwxr-xr-xt/parallel-tests-log-compiler-2.sh2
-rwxr-xr-xt/parallel-tests-log-compiler-example.sh2
-rwxr-xr-xt/parallel-tests-log-override-1.sh2
-rwxr-xr-xt/parallel-tests-log-override-2.sh2
-rwxr-xr-xt/parallel-tests-log-override-recheck.sh2
-rwxr-xr-xt/parallel-tests-no-color-in-log.sh4
-rwxr-xr-xt/parallel-tests-no-spurious-summary.sh2
-rwxr-xr-xt/parallel-tests-once.sh2
-rwxr-xr-xt/parallel-tests-recheck-depends-on-all.sh2
-rwxr-xr-xt/parallel-tests-recheck-pr11791.sh2
-rwxr-xr-xt/parallel-tests-recheck.sh2
-rwxr-xr-xt/parallel-tests-reset-term.sh4
-rwxr-xr-xt/parallel-tests-subdir.sh4
-rwxr-xr-xt/parallel-tests-suffix-prog.sh2
-rwxr-xr-xt/parallel-tests-suffix.sh2
-rwxr-xr-xt/parallel-tests-trailing-whitespace.sh2
-rwxr-xr-xt/parallel-tests-unreadable.sh2
-rwxr-xr-xt/parallel-tests2.sh146
-rwxr-xr-xt/parse.sh2
-rwxr-xr-xt/percent.sh2
-rwxr-xr-xt/percent2.sh2
-rwxr-xr-xt/perf/cond.sh2
-rwxr-xr-xt/perf/testsuite-recheck.sh2
-rwxr-xr-xt/perf/testsuite-summary.sh4
-rwxr-xr-xt/phony.sh2
-rwxr-xr-xt/pluseq.sh2
-rwxr-xr-xt/pluseq10.sh2
-rwxr-xr-xt/pluseq11.sh2
-rwxr-xr-xt/pluseq2.sh2
-rwxr-xr-xt/pluseq3.sh2
-rwxr-xr-xt/pluseq4.sh2
-rwxr-xr-xt/pluseq5.sh2
-rwxr-xr-xt/pluseq6.sh2
-rwxr-xr-xt/pluseq7.sh2
-rwxr-xr-xt/pluseq8.sh2
-rwxr-xr-xt/pluseq9.sh2
-rwxr-xr-xt/posixsubst-data.sh2
-rwxr-xr-xt/posixsubst-extradist.sh2
-rwxr-xr-xt/posixsubst-ldadd.sh2
-rwxr-xr-xt/posixsubst-libraries.sh2
-rwxr-xr-xt/posixsubst-ltlibraries.sh2
-rwxr-xr-xt/posixsubst-programs.sh2
-rwxr-xr-xt/posixsubst-scripts.sh2
-rwxr-xr-xt/posixsubst-sources.sh2
-rwxr-xr-xt/posixsubst-tests.sh2
-rwxr-xr-xt/postproc.sh2
-rwxr-xr-xt/ppf77.sh2
-rwxr-xr-xt/pr2.sh2
-rwxr-xr-xt/pr211.sh2
-rwxr-xr-xt/pr220.sh2
-rwxr-xr-xt/pr224.sh2
-rwxr-xr-xt/pr229.sh2
-rwxr-xr-xt/pr243.sh2
-rwxr-xr-xt/pr266.sh2
-rwxr-xr-xt/pr279-2.sh2
-rwxr-xr-xt/pr279.sh2
-rwxr-xr-xt/pr287.sh2
-rwxr-xr-xt/pr300-lib.sh2
-rwxr-xr-xt/pr300-ltlib.sh2
-rwxr-xr-xt/pr300-prog.sh2
-rwxr-xr-xt/pr307.sh2
-rwxr-xr-xt/pr401.sh2
-rwxr-xr-xt/pr401b.sh2
-rwxr-xr-xt/pr401c.sh2
-rwxr-xr-xt/pr72.sh2
-rwxr-xr-xt/pr87.sh2
-rwxr-xr-xt/pr9.sh2
-rwxr-xr-xt/prefix.sh2
-rwxr-xr-xt/primary-prefix-couples-documented-valid.sh2
-rwxr-xr-xt/primary-prefix-couples-force-valid.sh2
-rwxr-xr-xt/primary-prefix-invalid-couples.tap3
-rwxr-xr-xt/primary-prefix-valid-couples.sh3
-rwxr-xr-xt/primary.sh2
-rwxr-xr-xt/primary2.sh2
-rwxr-xr-xt/primary3.sh2
-rwxr-xr-xt/print-libdir.sh2
-rwxr-xr-xt/proginst.sh2
-rwxr-xr-xt/programs-primary-rewritten.sh2
-rwxr-xr-xt/py-compile-basedir.sh2
-rwxr-xr-xt/py-compile-basic.sh2
-rwxr-xr-xt/py-compile-destdir.sh2
-rwxr-xr-xt/py-compile-env.sh2
-rwxr-xr-xt/py-compile-option-terminate.sh2
-rwxr-xr-xt/py-compile-usage.sh2
-rwxr-xr-xt/python-am-path-iftrue.sh2
-rwxr-xr-xt/python-dist.sh2
-rwxr-xr-xt/python-missing.sh2
-rwxr-xr-xt/python-pr10995.sh2
-rwxr-xr-xt/python-too-old.sh2
-rwxr-xr-xt/python-vars.sh2
-rwxr-xr-xt/python-virtualenv.sh2
-rwxr-xr-xt/python.sh2
-rwxr-xr-xt/python10.sh2
-rwxr-xr-xt/python11.sh2
-rwxr-xr-xt/python12.sh2
-rwxr-xr-xt/python2.sh2
-rwxr-xr-xt/python3.sh2
-rwxr-xr-xt/recurs-user-deeply-nested.sh97
-rwxr-xr-xt/recurs-user-indir.sh99
-rwxr-xr-xt/recurs-user-keep-going.sh95
-rwxr-xr-xt/recurs-user-many.sh73
-rwxr-xr-xt/recurs-user-no-subdirs.sh (renamed from t/silent-amopts.sh)38
-rwxr-xr-xt/recurs-user-no-top-level.sh (renamed from t/cygnus-check-without-all.sh)40
-rwxr-xr-xt/recurs-user-override.sh68
-rwxr-xr-xt/recurs-user-phony.sh (renamed from t/cygnus-requires-maintainer-mode.sh)49
-rwxr-xr-xt/recurs-user-wrap.sh (renamed from t/clean2.sh)67
-rwxr-xr-xt/recurs-user.sh81
-rwxr-xr-xt/recurs-user2.sh103
-rwxr-xr-xt/relativize.tap2
-rwxr-xr-xt/remake-aclocal-version-mismatch.sh (renamed from t/missing4.sh)2
-rwxr-xr-xt/remake-after-acinclude-m4.sh2
-rwxr-xr-xt/remake-after-aclocal-m4.sh2
-rwxr-xr-xt/remake-after-configure-ac.sh2
-rwxr-xr-xt/remake-after-makefile-am.sh2
-rwxr-xr-xt/remake-all-1.sh2
-rwxr-xr-xt/remake-all-2.sh2
-rwxr-xr-xt/remake-am-pr10111.sh2
-rwxr-xr-xt/remake-deeply-nested.sh2
-rwxr-xr-xt/remake-deleted-am-2.sh2
-rwxr-xr-xt/remake-deleted-am-subdir.sh2
-rwxr-xr-xt/remake-deleted-am.sh2
-rwxr-xr-xt/remake-deleted-m4-file.sh2
-rwxr-xr-xt/remake-fail.sh2
-rwxr-xr-xt/remake-gnulib-add-acsubst.sh2
-rwxr-xr-xt/remake-gnulib-add-header.sh2
-rwxr-xr-xt/remake-gnulib-remove-header.sh2
-rwxr-xr-xt/remake-include-aclocal.sh6
-rwxr-xr-xt/remake-include-configure.sh2
-rwxr-xr-xt/remake-include-makefile.sh2
-rwxr-xr-xt/remake-m4-pr10111.sh2
-rwxr-xr-xt/remake-macrodir.sh83
-rwxr-xr-xt/remake-maintainer-mode.sh2
-rwxr-xr-xt/remake-makefile-intree.sh14
-rwxr-xr-xt/remake-makefile-vpath.sh14
-rwxr-xr-xt/remake-mild-stress.sh2
-rwxr-xr-xt/remake-moved-m4-file.sh2
-rwxr-xr-xt/remake-not-after-make-dist.sh2
-rwxr-xr-xt/remake-recurs-user.sh89
-rwxr-xr-xt/remake-renamed-am.sh2
-rwxr-xr-xt/remake-renamed-m4-file.sh2
-rwxr-xr-xt/remake-renamed-m4-macro-and-file.sh2
-rwxr-xr-xt/remake-renamed-m4-macro.sh2
-rwxr-xr-xt/remake-subdir-from-subdir.sh2
-rwxr-xr-xt/remake-subdir-gnu.sh2
-rwxr-xr-xt/remake-subdir-grepping.sh2
-rwxr-xr-xt/remake-subdir-long-time.sh2
-rwxr-xr-xt/remake-subdir-no-makefile.sh2
-rwxr-xr-xt/remake-subdir-only.sh2
-rwxr-xr-xt/remake-subdir.sh2
-rwxr-xr-xt/remake-subdir2.sh2
-rwxr-xr-xt/remake-subdir3.sh4
-rwxr-xr-xt/remake-timing-bug-pr8365.sh2
-rwxr-xr-xt/repeated-options.sh2
-rwxr-xr-xt/req.sh11
-rwxr-xr-xt/reqd.sh2
-rwxr-xr-xt/reqd2.sh2
-rwxr-xr-xt/rulepat.sh2
-rwxr-xr-xt/sanity.sh2
-rwxr-xr-xt/seenc.sh2
-rwxr-xr-xt/self-check-configure-help.sh2
-rwxr-xr-xt/self-check-dir.tap10
-rwxr-xr-xt/self-check-exit.tap18
-rwxr-xr-xt/self-check-explicit-skips.sh4
-rwxr-xr-xt/self-check-is-blocked-signal.tap2
-rwxr-xr-xt/self-check-is_newest.tap2
-rwxr-xr-xt/self-check-me.tap10
-rwxr-xr-xt/self-check-report.sh2
-rwxr-xr-xt/self-check-seq.tap2
-rwxr-xr-xt/self-check-unindent.tap2
-rwxr-xr-xt/serial-tests.sh2
-rwxr-xr-xt/silent-c.sh (renamed from t/silent.sh)56
-rwxr-xr-xt/silent-configsite.sh14
-rwxr-xr-xt/silent-custom.sh (renamed from t/silent6.sh)4
-rwxr-xr-xt/silent-cxx.sh (renamed from t/silentcxx.sh)9
-rwxr-xr-xt/silent-f77.sh (renamed from t/silentf77.sh)5
-rwxr-xr-xt/silent-f90.sh (renamed from t/silentf90.sh)5
-rwxr-xr-xt/silent-gen.sh (renamed from t/silent7.sh)18
-rwxr-xr-xt/silent-lex.sh3
-rwxr-xr-xt/silent-lt.sh (renamed from t/silent9.sh)63
-rwxr-xr-xt/silent-many-gcc.sh241
-rwxr-xr-xt/silent-many-languages.sh (renamed from t/silent-many-generic.sh)6
-rwxr-xr-xt/silent-nested-vars.sh2
-rwxr-xr-xt/silent-nowarn.sh44
-rwxr-xr-xt/silent-obsolescent-warns.sh71
-rwxr-xr-xt/silent-texi.sh87
-rwxr-xr-xt/silent-yacc-headers.sh3
-rwxr-xr-xt/silent-yacc.sh4
-rwxr-xr-xt/silent2.sh84
-rwxr-xr-xt/silent3.sh87
-rwxr-xr-xt/silent4.sh88
-rwxr-xr-xt/silent8.sh66
-rwxr-xr-xt/silentcxx-gcc.sh109
-rwxr-xr-xt/sourcefile-in-subdir.sh2
-rwxr-xr-xt/space.sh2
-rwxr-xr-xt/specflg-dummy.sh2
-rwxr-xr-xt/specflg6.sh2
-rwxr-xr-xt/specflg7.sh2
-rwxr-xr-xt/specflg8.sh2
-rwxr-xr-xt/specflg9.sh2
-rwxr-xr-xt/spell.sh2
-rwxr-xr-xt/spell2.sh2
-rwxr-xr-xt/spell3.sh2
-rwxr-xr-xt/spelling.sh2
-rwxr-xr-xt/spy-rm.tap2
-rwxr-xr-xt/spy.sh2
-rwxr-xr-xt/src-acsubst.sh2
-rwxr-xr-xt/stamph2.sh9
-rwxr-xr-xt/stdinc.sh2
-rwxr-xr-xt/stdlib.sh2
-rwxr-xr-xt/stdlib2.sh2
-rwxr-xr-xt/strictness-override.sh2
-rwxr-xr-xt/strictness-precedence.sh2
-rwxr-xr-xt/strip.sh2
-rwxr-xr-xt/strip2.sh2
-rwxr-xr-xt/strip3.sh2
-rwxr-xr-xt/subdir-ac-subst.sh2
-rwxr-xr-xt/subdir-add-pr46.sh2
-rwxr-xr-xt/subdir-add2-pr46.sh6
-rwxr-xr-xt/subdir-am-cond.sh2
-rwxr-xr-xt/subdir-cond-err.sh2
-rwxr-xr-xt/subdir-cond-gettext.sh2
-rwxr-xr-xt/subdir-distclean.sh2
-rwxr-xr-xt/subdir-env-interference.sh2
-rwxr-xr-xt/subdir-order.sh2
-rwxr-xr-xt/subdir-subsub.sh2
-rwxr-xr-xt/subdir-with-slash.sh2
-rwxr-xr-xt/subdir.sh2
-rwxr-xr-xt/subobj-clean-lt-pr10697.sh2
-rwxr-xr-xt/subobj-clean-pr10697.sh2
-rwxr-xr-xt/subobj.sh2
-rwxr-xr-xt/subobj10.sh2
-rwxr-xr-xt/subobj11a.sh2
-rwxr-xr-xt/subobj11b.sh2
-rwxr-xr-xt/subobj11c.sh2
-rwxr-xr-xt/subobj2.sh2
-rwxr-xr-xt/subobj4.sh2
-rwxr-xr-xt/subobj5.sh2
-rwxr-xr-xt/subobj6.sh2
-rwxr-xr-xt/subobj7.sh2
-rwxr-xr-xt/subobj8.sh2
-rwxr-xr-xt/subobj9.sh2
-rwxr-xr-xt/subobjname.sh2
-rwxr-xr-xt/subpkg-macrodir.sh87
-rwxr-xr-xt/subpkg-yacc.sh2
-rwxr-xr-xt/subpkg.sh12
-rwxr-xr-xt/subpkg2.sh12
-rwxr-xr-xt/subpkg3.sh2
-rwxr-xr-xt/subpkg4.sh2
-rwxr-xr-xt/subst-no-trailing-empty-line.sh2
-rwxr-xr-xt/subst.sh2
-rwxr-xr-xt/subst3.sh2
-rwxr-xr-xt/subst4.sh2
-rwxr-xr-xt/subst5.sh2
-rwxr-xr-xt/substre2.sh2
-rwxr-xr-xt/substref.sh2
-rwxr-xr-xt/substtarg.sh2
-rwxr-xr-xt/suffix-chain.tap2
-rwxr-xr-xt/suffix-custom-subobj-and-specflg.sh2
-rwxr-xr-xt/suffix-custom-subobj.sh2
-rwxr-xr-xt/suffix.sh2
-rwxr-xr-xt/suffix10.tap2
-rwxr-xr-xt/suffix11.tap2
-rwxr-xr-xt/suffix2.sh2
-rwxr-xr-xt/suffix3.tap2
-rwxr-xr-xt/suffix4.sh2
-rwxr-xr-xt/suffix5.sh2
-rwxr-xr-xt/suffix6.sh2
-rwxr-xr-xt/suffix6b.sh2
-rwxr-xr-xt/suffix6c.sh2
-rwxr-xr-xt/suffix7.sh2
-rwxr-xr-xt/suffix8.tap2
-rwxr-xr-xt/suffix9.sh2
-rwxr-xr-xt/symlink.sh2
-rwxr-xr-xt/symlink2.sh2
-rwxr-xr-xt/syntax.sh2
-rwxr-xr-xt/tags-pr12372.sh2
-rwxr-xr-xt/tags.sh2
-rwxr-xr-xt/tags2.sh2
-rwxr-xr-xt/tagsub.sh2
-rwxr-xr-xt/tap-ambiguous-directive.sh2
-rwxr-xr-xt/tap-autonumber.sh2
-rwxr-xr-xt/tap-bad-prog.tap2
-rwxr-xr-xt/tap-bailout-and-logging.sh2
-rwxr-xr-xt/tap-bailout-leading-space.sh2
-rwxr-xr-xt/tap-bailout-suppress-badexit.sh2
-rwxr-xr-xt/tap-bailout-suppress-later-diagnostic.sh2
-rwxr-xr-xt/tap-bailout-suppress-later-errors.sh2
-rwxr-xr-xt/tap-bailout.sh2
-rwxr-xr-xt/tap-basic.sh2
-rwxr-xr-xt/tap-color.sh2
-rwxr-xr-xt/tap-common-setup.sh2
-rwxr-xr-xt/tap-deps.sh2
-rwxr-xr-xt/tap-diagnostic-custom.sh2
-rwxr-xr-xt/tap-diagnostic.sh2
-rwxr-xr-xt/tap-doc.sh2
-rwxr-xr-xt/tap-doc2.sh4
-rwxr-xr-xt/tap-driver-stderr.sh2
-rwxr-xr-xt/tap-empty-diagnostic.sh2
-rwxr-xr-xt/tap-empty.sh2
-rwxr-xr-xt/tap-escape-directive-2.sh2
-rwxr-xr-xt/tap-escape-directive.sh2
-rwxr-xr-xt/tap-exit.sh2
-rwxr-xr-xt/tap-fancy.sh2
-rwxr-xr-xt/tap-fancy2.sh2
-rwxr-xr-xt/tap-global-log.sh2
-rwxr-xr-xt/tap-global-result.sh2
-rwxr-xr-xt/tap-log.sh2
-rwxr-xr-xt/tap-merge-stdout-stderr.sh2
-rwxr-xr-xt/tap-missing-plan-and-bad-exit.sh2
-rwxr-xr-xt/tap-more.sh2
-rwxr-xr-xt/tap-more2.sh2
-rwxr-xr-xt/tap-msg0-bailout.sh2
-rwxr-xr-xt/tap-msg0-directive.sh2
-rwxr-xr-xt/tap-msg0-misc.sh2
-rwxr-xr-xt/tap-msg0-planskip.sh2
-rwxr-xr-xt/tap-msg0-result.sh2
-rwxr-xr-xt/tap-negative-numbers.sh2
-rwxr-xr-xt/tap-no-disable-hard-error.sh2
-rwxr-xr-xt/tap-no-merge-stdout-stderr.sh2
-rwxr-xr-xt/tap-no-spurious-numbers.sh2
-rwxr-xr-xt/tap-no-spurious-summary.sh2
-rwxr-xr-xt/tap-no-spurious.sh2
-rwxr-xr-xt/tap-not-ok-skip.sh2
-rwxr-xr-xt/tap-number-wordboundary.sh2
-rwxr-xr-xt/tap-numbers-leading-zero.sh2
-rwxr-xr-xt/tap-numeric-description.sh2
-rwxr-xr-xt/tap-out-of-order.sh2
-rwxr-xr-xt/tap-passthrough-exit.sh2
-rwxr-xr-xt/tap-passthrough.sh2
-rwxr-xr-xt/tap-plan-corner.sh2
-rwxr-xr-xt/tap-plan-errors.sh2
-rwxr-xr-xt/tap-plan-leading-zero.sh2
-rwxr-xr-xt/tap-plan-malformed.sh2
-rwxr-xr-xt/tap-plan-middle.sh2
-rwxr-xr-xt/tap-plan-whitespace.sh2
-rwxr-xr-xt/tap-plan.sh2
-rwxr-xr-xt/tap-planskip-and-logging.sh2
-rwxr-xr-xt/tap-planskip-badexit.sh2
-rwxr-xr-xt/tap-planskip-bailout.sh2
-rwxr-xr-xt/tap-planskip-case-insensitive.sh2
-rwxr-xr-xt/tap-planskip-late.sh2
-rwxr-xr-xt/tap-planskip-later-errors.sh2
-rwxr-xr-xt/tap-planskip-unplanned-corner.sh2
-rwxr-xr-xt/tap-planskip-unplanned.sh2
-rwxr-xr-xt/tap-planskip-whitespace.sh2
-rwxr-xr-xt/tap-planskip.sh2
-rwxr-xr-xt/tap-realtime.sh4
-rwxr-xr-xt/tap-recheck-logs.sh2
-rwxr-xr-xt/tap-recheck.sh2
-rwxr-xr-xt/tap-result-comment.sh2
-rwxr-xr-xt/tap-signal.tap2
-rwxr-xr-xt/tap-test-number-0.sh2
-rwxr-xr-xt/tap-todo-skip-together.sh2
-rwxr-xr-xt/tap-todo-skip-whitespace.sh2
-rwxr-xr-xt/tap-todo-skip.sh2
-rwxr-xr-xt/tap-unplanned.sh2
-rwxr-xr-xt/tap-whitespace-normalization.sh2
-rwxr-xr-xt/tap-with-and-without-number.sh2
-rwxr-xr-xt/tap-xfail-tests.sh2
-rwxr-xr-xt/tar-override.sh2
-rwxr-xr-xt/tar.sh2
-rwxr-xr-xt/tar2.sh2
-rwxr-xr-xt/tar3.sh2
-rwxr-xr-xt/target-cflags.sh2
-rwxr-xr-xt/targetclash.sh2
-rwxr-xr-xt/test-driver-acsubst.sh2
-rwxr-xr-xt/test-driver-cond.sh2
-rwxr-xr-xt/test-driver-create-log-dir.sh2
-rwxr-xr-xt/test-driver-custom-multitest-recheck.sh2
-rwxr-xr-xt/test-driver-custom-multitest-recheck2.sh2
-rwxr-xr-xt/test-driver-custom-multitest.sh2
-rwxr-xr-xt/test-driver-custom-no-extra-driver.sh2
-rwxr-xr-xt/test-driver-custom-xfail-tests.sh2
-rwxr-xr-xt/test-driver-custom.sh2
-rwxr-xr-xt/test-driver-fail.sh2
-rwxr-xr-xt/test-driver-is-distributed.sh40
-rwxr-xr-xt/test-driver-strip-vpath.sh2
-rwxr-xr-xt/test-driver-trs-suffix-registered.sh2
-rwxr-xr-xt/test-extensions-cond.sh2
-rwxr-xr-xt/test-extensions.sh2
-rwxr-xr-xt/test-harness-vpath-rewrite.sh2
-rwxr-xr-xt/test-log.sh2
-rwxr-xr-xt/test-logs-repeated.sh2
-rwxr-xr-xt/test-metadata-global-log.sh4
-rwxr-xr-xt/test-metadata-global-result.sh2
-rwxr-xr-xt/test-metadata-recheck.sh2
-rwxr-xr-xt/test-metadata-results.sh2
-rwxr-xr-xt/test-missing.sh2
-rwxr-xr-xt/test-missing2.sh2
-rwxr-xr-xt/test-trs-basic.sh2
-rwxr-xr-xt/test-trs-recover.sh2
-rwxr-xr-xt/test-trs-recover2.sh2
-rwxr-xr-xt/tests-environment-and-log-compiler.sh2
-rwxr-xr-xt/tests-environment-backcompat.sh4
-rwxr-xr-xt/tests-environment-fd-redirect.sh2
-rwxr-xr-xt/tests-environment.sh2
-rwxr-xr-xt/testsuite-summary-count-many.sh2
-rwxr-xr-xt/testsuite-summary-reference-log.sh2
-rwxr-xr-xt/transform.sh2
-rwxr-xr-xt/transform2.sh2
-rwxr-xr-xt/transform3.sh2
-rwxr-xr-xt/txinfo-no-clutter.sh91
-rwxr-xr-xt/txinfo-unrecognized-extension.sh2
-rwxr-xr-xt/txinfo.sh2
-rwxr-xr-xt/txinfo10.sh2
-rwxr-xr-xt/txinfo13.sh4
-rwxr-xr-xt/txinfo16.sh2
-rwxr-xr-xt/txinfo17.sh2
-rwxr-xr-xt/txinfo19.sh2
-rwxr-xr-xt/txinfo2.sh2
-rwxr-xr-xt/txinfo20.sh2
-rwxr-xr-xt/txinfo21.sh21
-rwxr-xr-xt/txinfo22.sh2
-rwxr-xr-xt/txinfo23.sh4
-rwxr-xr-xt/txinfo24.sh4
-rwxr-xr-xt/txinfo25.sh4
-rwxr-xr-xt/txinfo26.sh2
-rwxr-xr-xt/txinfo27.sh2
-rwxr-xr-xt/txinfo28.sh4
-rwxr-xr-xt/txinfo29.sh2
-rwxr-xr-xt/txinfo3.sh2
-rwxr-xr-xt/txinfo30.sh63
-rwxr-xr-xt/txinfo31.sh2
-rwxr-xr-xt/txinfo32.sh2
-rwxr-xr-xt/txinfo33.sh4
-rwxr-xr-xt/txinfo4.sh2
-rwxr-xr-xt/txinfo5.sh38
-rwxr-xr-xt/txinfo5b.sh42
-rwxr-xr-xt/txinfo6.sh2
-rwxr-xr-xt/txinfo7.sh2
-rwxr-xr-xt/txinfo8.sh2
-rwxr-xr-xt/txinfo9.sh2
-rwxr-xr-xt/uninstall-fail.sh2
-rwxr-xr-xt/uninstall-pr9578.sh2
-rwxr-xr-xt/unused.sh2
-rwxr-xr-xt/upc.sh2
-rwxr-xr-xt/upc2.sh2
-rwxr-xr-xt/upc3.sh2
-rwxr-xr-xt/var-recurs.sh (renamed from t/recurs.sh)4
-rwxr-xr-xt/var-recurs2.sh (renamed from t/recurs2.sh)4
-rwxr-xr-xt/vars.sh2
-rwxr-xr-xt/vars3.sh2
-rwxr-xr-xt/vartar.sh2
-rwxr-xr-xt/vartypo2.sh2
-rwxr-xr-xt/vartypos.sh2
-rwxr-xr-xt/version3.sh2
-rwxr-xr-xt/version4.sh2
-rwxr-xr-xt/version6.sh2
-rwxr-xr-xt/version7.sh2
-rwxr-xr-xt/version8.sh2
-rwxr-xr-xt/vpath.sh2
-rwxr-xr-xt/vtexi.sh2
-rwxr-xr-xt/vtexi2.sh2
-rwxr-xr-xt/vtexi3.sh2
-rwxr-xr-xt/vtexi4.sh4
-rwxr-xr-xt/warning-groups-win-over-strictness.sh2
-rwxr-xr-xt/warnings-obsolete-default.sh2
-rwxr-xr-xt/warnings-override.sh2
-rwxr-xr-xt/warnings-precedence.sh2
-rwxr-xr-xt/warnings-strictness-interactions.sh2
-rwxr-xr-xt/warnings-unknown.sh2
-rwxr-xr-xt/warnings-win-over-strictness.sh2
-rwxr-xr-xt/warnopts.sh2
-rwxr-xr-xt/werror.sh2
-rwxr-xr-xt/werror2.sh2
-rwxr-xr-xt/werror3.sh2
-rwxr-xr-xt/werror4.sh2
-rwxr-xr-xt/whoami.sh2
-rwxr-xr-xt/xsource.sh2
-rwxr-xr-xt/yacc-auxdir.sh2
-rwxr-xr-xt/yacc-basic.sh2
-rwxr-xr-xt/yacc-bison-skeleton-cxx.sh2
-rwxr-xr-xt/yacc-bison-skeleton.sh2
-rwxr-xr-xt/yacc-clean-cxx.sh2
-rwxr-xr-xt/yacc-clean.sh2
-rwxr-xr-xt/yacc-cxx.sh2
-rwxr-xr-xt/yacc-d-basic.sh2
-rwxr-xr-xt/yacc-d-cxx.sh2
-rwxr-xr-xt/yacc-d-vpath.sh2
-rwxr-xr-xt/yacc-deleted-headers.sh2
-rwxr-xr-xt/yacc-depend.sh2
-rwxr-xr-xt/yacc-depend2.sh2
-rwxr-xr-xt/yacc-dist-nobuild-subdir.sh2
-rwxr-xr-xt/yacc-dist-nobuild.sh2
-rwxr-xr-xt/yacc-grepping.sh2
-rwxr-xr-xt/yacc-grepping2.sh2
-rwxr-xr-xt/yacc-headers-and-dist-pr47.sh2
-rwxr-xr-xt/yacc-line.sh2
-rwxr-xr-xt/yacc-mix-c-cxx.sh2
-rwxr-xr-xt/yacc-nodist.sh2
-rwxr-xr-xt/yacc-pr204.sh2
-rwxr-xr-xt/yacc-subdir.sh2
-rwxr-xr-xt/yacc-weirdnames.sh2
-rwxr-xr-xt/yacc4.sh2
-rwxr-xr-xt/yaccdry.sh2
-rwxr-xr-xt/yaccpp.sh2
-rwxr-xr-xt/yaccvpath.sh2
-rwxr-xr-xt/yflags-cmdline-override.sh2
-rwxr-xr-xt/yflags-conditional.sh2
-rwxr-xr-xt/yflags-d-false-positives.sh2
-rwxr-xr-xt/yflags-force-conditional.sh2
-rwxr-xr-xt/yflags-force-override.sh2
-rwxr-xr-xt/yflags-var-expand.sh2
-rwxr-xr-xt/yflags.sh2
-rwxr-xr-xt/yflags2.sh2
1221 files changed, 3995 insertions, 4073 deletions
diff --git a/t/ac-output-old.tap b/t/ac-output-old.tap
index e45fb5f28..a19691a49 100755
--- a/t/ac-output-old.tap
+++ b/t/ac-output-old.tap
@@ -24,8 +24,6 @@ plan_ 22
rm -f configure.ac depcomp # Not required.
-AUTOMAKE="$AUTOMAKE -Wno-obsolete"
-
# -----------------------------------------------------------------------
# Test for bug reported by François Pinard.
@@ -54,18 +52,15 @@ acoutbs_check ()
}
acoutbs_check 1 << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AC_INIT([acoutbs1], [1.0])
+AM_INIT_AUTOMAKE
AC_OUTPUT(Makefile \
zot)
END
acoutbs_check 2 << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
-AC_ARG_PROGRAM
-AC_PROG_INSTALL
-AC_PROG_MAKE_SET
+AC_INIT([acoutbs2], [1.0])
+AM_INIT_AUTOMAKE
AC_OUTPUT(\
Makefile \
zot
@@ -85,8 +80,8 @@ mkdir acoutnoq
cd acoutnoq
cat > configure.ac << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AC_INIT([acoutnoq], [1.0])
+AM_INIT_AUTOMAKE
AC_OUTPUT(Makefile, [true])
END
@@ -107,8 +102,8 @@ mkdir acoutpt
cd acoutpt
cat > configure.ac << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AC_INIT([acoutpt], [1.0])
+AM_INIT_AUTOMAKE
AC_OUTPUT([Makefile], [true])
END
@@ -163,8 +158,8 @@ mkdir acoutqnl
cd acoutqnl
cat > configure.ac << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AC_INIT([acoutqnl], [1.0])
+AM_INIT_AUTOMAKE
AC_OUTPUT([Makefile],
[echo zardoz has spoken])
END
diff --git a/t/acloca10.sh b/t/acloca10.sh
index d12035214..b7d350bd0 100755
--- a/t/acloca10.sh
+++ b/t/acloca10.sh
@@ -24,7 +24,7 @@
# TODO: puts third-party macros directly into 'acdir'.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/acloca17.sh b/t/acloca17.sh
deleted file mode 100755
index a15cd57a7..000000000
--- a/t/acloca17.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2004-2012 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/>.
-
-# Make sure aclocal report unused required macros.
-
-am_create_testdir=empty
-. ./defs || exit 1
-
-cat > configure.ac << 'END'
-AC_INIT
-SOME_DEFS
-END
-
-mkdir m4
-cat >m4/somedefs.m4 <<EOF
-AC_DEFUN([SOME_DEFS], [
- AC_REQUIRE([UNDEFINED_MACRO])
-])
-EOF
-
-# FIXME: We want autom4te's 'undefined required macro' warning to be fatal,
-# but have no means to say so to aclocal. We use WARNINGS=error instead.
-
-WARNINGS=error $ACLOCAL -I m4 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep '^configure\.ac:2:.*UNDEFINED_MACRO' stderr
-
-:
diff --git a/t/aclocal9.sh b/t/aclocal-I-order-1.sh
index bcdd6f477..bcdecb022 100755
--- a/t/aclocal9.sh
+++ b/t/aclocal-I-order-1.sh
@@ -17,7 +17,7 @@
# Make sure aclocal define macros in the same order as -I's.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/acloca11.sh b/t/aclocal-I-order-2.sh
index 3db8508ab..721b8ec03 100755
--- a/t/acloca11.sh
+++ b/t/aclocal-I-order-2.sh
@@ -16,9 +16,10 @@
# Make sure that when two files define the same macro in the same
# directory, the macro from the lexically greatest file is used.
+# See also sister test 'aclocal-I-ordering-2.sh'.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/acloca12.sh b/t/aclocal-I-order-3.sh
index 01acb0281..c98841bf7 100755
--- a/t/acloca12.sh
+++ b/t/aclocal-I-order-3.sh
@@ -16,10 +16,10 @@
# Make sure that when two files define the same macro in the same
# directory, the macro from the lexically greatest file is used.
-# Same as acloca11.sh, but without calling MACRO2.
+# Same as acloca-I-ordering.sh, but without calling MACRO2.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/aclocal-acdir.sh b/t/aclocal-acdir.sh
index abd7857d1..944604b44 100755
--- a/t/aclocal-acdir.sh
+++ b/t/aclocal-acdir.sh
@@ -14,13 +14,16 @@
# 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 aclocal's '--acdir', '--automake-acdir' and '--system-acdir'
-# options. Also check that stuff in the automake acdir takes precedence
-# over stuff in the system acdir.
+# Test aclocal's '--automake-acdir' and '--system-acdir' options. Also
+# check that stuff in the automake acdir takes precedence over stuff in
+# the system acdir.
-. ./defs || exit 1
+. test-init.sh
mkdir am sys
+# FIXME: remove in Automake 1.14.
+mkdir am/internal
+: > am/internal/ac-config-macro-dirs.m4
cat >> configure.ac <<'END'
MY_MACRO
@@ -72,24 +75,4 @@ $FGREP 'fake--init--automake' configure
$FGREP 'am--macro' configure
$FGREP 'my--macro' configure && exit 1 # Just to be sure.
-rm -rf autom4te*.cache
-
-# Obsolescent '--acdir' option.
-$ACLOCAL -Wobsolete --acdir am 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep '.*--acdir.*deprecated' stderr
-
-rm -rf autom4te*.cache
-
-$ACLOCAL -Wno-obsolete --acdir am
-$AUTOCONF --force
-$FGREP 'fake--init--automake' configure
-$FGREP 'am--macro' configure
-
-rm -rf autom4te*.cache
-
-$ACLOCAL -Wno-obsolete --acdir sys 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep 'macro .*AM_INIT_AUTOMAKE.* not found' stderr
-
:
diff --git a/t/aclocal-amflags.sh b/t/aclocal-amflags.sh
new file mode 100755
index 000000000..49bcf5f37
--- /dev/null
+++ b/t/aclocal-amflags.sh
@@ -0,0 +1,69 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that the obsolescent idiom of setting $(ACLOCAL_AMFLAGS) in
+# Makefile.am still works. Remove this test once support for this
+# obsolescent idiom is removed.
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+MACRO_FOO || AS_EXIT([1])
+AC_OUTPUT
+END
+
+mkdir m4_1 m4_2
+cat > m4_1/foo.m4 <<'END'
+AC_DEFUN([MACRO_FOO], [: > foo])
+END
+cat > m4_2/bar.m4 <<'END'
+AC_DEFUN([MACRO_BAR], [: > bar])
+END
+
+cat > Makefile.am <<'END'
+ACLOCAL_AMFLAGS = -I m4_2 --verbose
+check-local:
+ test ! -r foo
+ test -f bar
+DISTCLEANFILES = bar
+END
+
+$ACLOCAL -I m4_1 >output 2>&1 || { cat output; exit 1; }
+cat output
+grep 'found macro' output && exit 1 # Sanity check.
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+test -f foo
+rm -f foo
+
+# ACLOCAL_AMFLAGS is used in rebuild rules, so trigger them.
+$sleep
+
+sed 's/MACRO_FOO/MACRO_BAR/' configure.ac > t
+mv -f t configure.ac
+
+$MAKE Makefile >output 2>&1 || { cat output; exit 1; }
+cat output
+grep "^aclocal.*:.*found macro.*MACRO_BAR.*m4_2/bar\.m4" output
+grep "macro.*MACRO_FOO" output && exit 1
+test ! -r foo
+test -f bar
+
+$MAKE distcheck
+
+:
diff --git a/t/missing6.sh b/t/aclocal-autoconf-version-check.sh
index 8e02ae999..f5d810165 100755
--- a/t/missing6.sh
+++ b/t/aclocal-autoconf-version-check.sh
@@ -17,7 +17,7 @@
# Make sure autoconf version checks in aclocal.m4 are robust.
am_create_testdirs=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
m4_define([AC_AUTOCONF_VERSION], [9999a])
diff --git a/t/acloca21.sh b/t/aclocal-comments-respected.sh
index 2aca3f925..812f99b21 100755
--- a/t/acloca21.sh
+++ b/t/aclocal-comments-respected.sh
@@ -20,7 +20,7 @@
# an Autoconf macro.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
dnl m4_include(__some_really_bogus_nonexistent_file__.m4)
diff --git a/t/aclocal-deleted-header-aclocal-amflags.sh b/t/aclocal-deleted-header-aclocal-amflags.sh
new file mode 100755
index 000000000..ea47635c0
--- /dev/null
+++ b/t/aclocal-deleted-header-aclocal-amflags.sh
@@ -0,0 +1,60 @@
+#! /bin/sh
+# Copyright (C) 2007-2012 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/>.
+
+# Make sure the "deleted header file" issue is fixed wrt. aclocal.m4
+# dependencies.
+# NOTE: this test works by using the obsolete 'ACLOCAL_AMFLAGS' make
+# variable; see sister test 'aclocal-deleted-header.sh' for a modern
+# equivalent.
+
+. test-init.sh
+
+cat >>configure.ac <<EOF
+FOO
+AC_OUTPUT
+EOF
+
+cat >foo.m4 <<EOF
+AC_DEFUN([FOO], [AC_SUBST([GREPFOO])])
+EOF
+
+cat >bar.m4 <<EOF
+AC_DEFUN([BAR], [AC_SUBST([GREPBAR])])
+EOF
+
+cat >Makefile.am <<EOF
+ACLOCAL_AMFLAGS = -I .
+EOF
+
+$ACLOCAL -I .
+$AUTOMAKE
+$AUTOCONF
+
+./configure
+
+$MAKE
+grep GREPFOO Makefile
+grep GREPBAR Makefile && exit 1
+
+sed 's/FOO/BAR/' < configure.ac > t
+mv -f t configure.ac
+rm -f foo.m4
+
+$MAKE
+grep GREPFOO Makefile && exit 1
+grep GREPBAR Makefile
+
+:
diff --git a/t/acloca22.sh b/t/aclocal-deleted-header.sh
index 159fbcdb5..1faf21228 100755
--- a/t/acloca22.sh
+++ b/t/aclocal-deleted-header.sh
@@ -18,27 +18,30 @@
# dependencies. See also related the tests 'remake-deleted-m4-file.sh'
# and 'remake-renamed-m4-macro-and-file.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
+AC_CONFIG_MACRO_DIR([.])
FOO
AC_OUTPUT
EOF
+
cat >foo.m4 <<EOF
AC_DEFUN([FOO], [AC_SUBST([GREPFOO])])
EOF
+
cat >bar.m4 <<EOF
AC_DEFUN([BAR], [AC_SUBST([GREPBAR])])
EOF
-cat >Makefile.am <<EOF
-ACLOCAL_AMFLAGS = -I .
-EOF
-$ACLOCAL -I .
+: >Makefile.am
+
+$ACLOCAL
$AUTOMAKE
$AUTOCONF
./configure
+
$MAKE
grep GREPFOO Makefile
grep GREPBAR Makefile && exit 1
@@ -46,6 +49,7 @@ grep GREPBAR Makefile && exit 1
sed 's/FOO/BAR/' < configure.ac > t
mv -f t configure.ac
rm -f foo.m4
+
$MAKE
grep GREPFOO Makefile && exit 1
grep GREPBAR Makefile
diff --git a/t/aclocal5.sh b/t/aclocal-deps-subdir.sh
index 040666162..947311475 100755
--- a/t/aclocal5.sh
+++ b/t/aclocal-deps-subdir.sh
@@ -17,26 +17,26 @@
# Test to make sure that aclocal.m4's dependencies are honored in
# sub-directories. See also related tests 'remake-subdir*.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-AM_TEST([GREPME])
+AC_CONFIG_MACRO_DIR([m4])
+FOO_TEST([GREPME])
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
END
cat > Makefile.am << 'END'
SUBDIRS = sub
-ACLOCAL_AMFLAGS = -I m4
END
mkdir sub
: > sub/Makefile.am
mkdir m4
-echo 'AC_DEFUN([AM_TEST], [echo $@])' > m4/moredefs.m4
+echo 'AC_DEFUN([FOO_TEST], [echo $@])' > m4/moredefs.m4
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE --copy --add-missing
./configure
@@ -44,10 +44,10 @@ $MAKE
# Update an aclocal.m4 dependency, then make sure all Makefiles are
# updated, even from a sub-directory. Check that AU_ALIAS is
-# recognized. Change the definition of AM_TEST to check that its new
+# recognized. Change the definition of FOO_TEST to check that its new
# definition is used.
$sleep # Modified configure dependencies must be newer than config.status.
-echo 'AU_ALIAS([AM_TEST], [AC_SUBST])' > m4/moredefs.m4
+echo 'AU_ALIAS([FOO_TEST], [AC_SUBST])' > m4/moredefs.m4
cd sub
$MAKE
cd ..
@@ -58,10 +58,10 @@ grep GREPME sub/Makefile
$MAKE distdir
test -f $me-1.0/m4/moredefs.m4
-# Change the definition of AM_TEST to check that its new definition is
+# Change the definition of FOO_TEST to check that its new definition is
# used. Check that AC_DEFUN_ONCE is caught.
$sleep # Modified configure dependencies must be newer than config.status.
-echo 'AC_DEFUN_ONCE([AM_TEST], [AC_SUBST(__$1__)])' > m4/moredefs.m4
+echo 'AC_DEFUN_ONCE([FOO_TEST], [AC_SUBST(__$1__)])' > m4/moredefs.m4
$MAKE
grep 'm4/moredefs\.m4' aclocal.m4
grep '__GREPME__' configure
diff --git a/t/aclocal4.sh b/t/aclocal-deps.sh
index feae3ec17..3e77d9e06 100755
--- a/t/aclocal4.sh
+++ b/t/aclocal-deps.sh
@@ -18,9 +18,10 @@
# Report from Jim Meyering.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
+AC_CONFIG_MACRO_DIR([m4])
AC_PROG_RANLIB
AM_PROG_AR
AC_PROG_CC
@@ -46,7 +47,6 @@ EOF
cat >Makefile.am <<'EOF'
SUBDIRS = lib
EXTRA_DIST = m4/mymacro.m4
-ACLOCAL_AMFLAGS = -I m4
check-foo: distdir
test -f $(distdir)/lib/foo.c
test -f $(distdir)/lib/bar.c
@@ -56,7 +56,7 @@ check-not-foo: distdir
test -f $(distdir)/lib/bar.c
EOF
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE --add-missing
./configure
diff --git a/t/aclocal-install-absdir.sh b/t/aclocal-install-absdir.sh
index ada83c229..450bc7451 100755
--- a/t/aclocal-install-absdir.sh
+++ b/t/aclocal-install-absdir.sh
@@ -19,7 +19,7 @@
# ACLOCAL_PATH variable, it is clear that this is the right thing
# to do. See also automake bug#8407.
-. ./defs || exit 1
+. test-init.sh
mkdir loc sys
diff --git a/t/aclocal-install-fail.sh b/t/aclocal-install-fail.sh
index 99fa77ab6..f0cb57320 100755
--- a/t/aclocal-install-fail.sh
+++ b/t/aclocal-install-fail.sh
@@ -19,7 +19,7 @@
am_create_testdir=empty
required=ro-dir
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/aclocal-install-mkdir.sh b/t/aclocal-install-mkdir.sh
index 43eec3752..57bfd69b3 100755
--- a/t/aclocal-install-mkdir.sh
+++ b/t/aclocal-install-mkdir.sh
@@ -19,7 +19,7 @@
# FIXME: this is a good candidate for a conversion to TAP.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/acloca14.sh b/t/aclocal-m4-include-are-scanned-aclocal-amflags.sh
index eb9105dde..31a05409b 100755
--- a/t/acloca14.sh
+++ b/t/aclocal-m4-include-are-scanned-aclocal-amflags.sh
@@ -17,7 +17,7 @@
# Make sure m4_included files are also scanned for definitions.
# Report from Phil Edwards.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_LIBTOOL
diff --git a/t/aclocal-m4-include-are-scanned.sh b/t/aclocal-m4-include-are-scanned.sh
new file mode 100755
index 000000000..c84023d72
--- /dev/null
+++ b/t/aclocal-m4-include-are-scanned.sh
@@ -0,0 +1,108 @@
+#! /bin/sh
+# Copyright (C) 2004-2012 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/>.
+
+# Make sure m4_included files are also scanned for definitions.
+# Report from Phil Edwards.
+
+. test-init.sh
+
+cat >> configure.ac << 'END'
+AC_CONFIG_MACRO_DIR([defs])
+AM_PROG_LIBTOOL
+AC_OUTPUT
+END
+
+echo 'm4_include([a.m4])' > acinclude.m4
+echo 'm4_include([b.m4])' > a.m4
+
+cat >b.m4 <<EOF
+m4_include([c.m4])
+AC_DEFUN([AM_PROG_LIBTOOL],
+[AC_REQUIRE([SOMETHING])dnl
+AC_REQUIRE([SOMETHING_ELSE])dnl
+])
+
+AC_DEFUN([SOMETHING])
+EOF
+
+echo 'm4_include([d.m4])' > c.m4
+echo 'AC_DEFUN([SOMETHING_ELSE])' >d.m4
+
+mkdir defs
+echo 'AC_DEFUN([SOMETHING_ELSE])' >defs/e.m4
+echo 'AC_DEFUN([ANOTHER_MACRO])' >defs/f.m4
+
+cat >>Makefile.am<<\EOF
+testdist1: distdir
+ test -f $(distdir)/acinclude.m4
+ test -f $(distdir)/a.m4
+ test -f $(distdir)/b.m4
+ test -f $(distdir)/c.m4
+ test -f $(distdir)/d.m4
+ test ! -d $(distdir)/defs
+testdist2: distdir
+ test -f $(distdir)/acinclude.m4
+ test -f $(distdir)/a.m4
+ test -f $(distdir)/b.m4
+ test -f $(distdir)/c.m4
+ test -f $(distdir)/d.m4
+ test ! -f $(distdir)/defs/e.m4
+ test -f $(distdir)/defs/f.m4
+EOF
+
+$ACLOCAL -I defs
+
+$FGREP acinclude.m4 aclocal.m4
+# None of the following macro should be included. acinclude.m4
+# includes the first four, and the last two are not needed at all.
+$FGREP a.m4 aclocal.m4 && exit 1
+$FGREP b.m4 aclocal.m4 && exit 1
+$FGREP c.m4 aclocal.m4 && exit 1
+$FGREP d.m4 aclocal.m4 && exit 1
+$FGREP defs/e.m4 aclocal.m4 && exit 1
+$FGREP defs/f.m4 aclocal.m4 && exit 1
+
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+$MAKE testdist1
+
+cp aclocal.m4 aclocal.old
+$sleep
+echo 'AC_DEFUN([FOO], [ANOTHER_MACRO])' >> c.m4
+$MAKE
+# Because c.m4 has changed, aclocal.m4 must have been rebuilt.
+is_newest aclocal.m4 aclocal.old
+# However, since FOO is not used, f.m4 should not be included
+# and the contents of aclocal.m4 should remain the same
+diff aclocal.m4 aclocal.old
+
+# If FOO where to be used, that would be another story, of course:
+# f.m4 should be included
+$sleep
+echo FOO >> configure.ac
+$MAKE
+$FGREP defs/f.m4 aclocal.m4
+$MAKE testdist2
+
+# Make sure aclocal diagnose missing included files with correct 'file:line:'.
+rm -f b.m4
+$ACLOCAL 2>stderr && { cat stderr >&2; exit 1; }
+cat stderr >&2
+grep 'a\.m4:1: .*b\.m4.*does not exist' stderr
+
+:
diff --git a/t/acloca13.sh b/t/aclocal-m4-sinclude.sh
index bffd4f1f6..e7e7e962f 100755
--- a/t/acloca13.sh
+++ b/t/aclocal-m4-sinclude.sh
@@ -16,10 +16,13 @@
# Make sure changes to m4_included files also cause aclocal.m4 to change.
-. ./defs || exit 1
+. test-init.sh
-cat >> configure.ac << 'END'
+cat > configure.ac << 'END'
+AC_INIT([m4sinclude], [1.0])
+AM_INIT_AUTOMAKE
m4_include([somefile.m4])
+AC_CONFIG_FILES([Makefile])
AC_OUTPUT
END
diff --git a/t/aclocal-macrodir.tap b/t/aclocal-macrodir.tap
new file mode 100755
index 000000000..2d3b0d60e
--- /dev/null
+++ b/t/aclocal-macrodir.tap
@@ -0,0 +1,211 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Several tests on the use of the m4 macro AC_CONFIG_MACRO_DIR with
+# aclocal. See also related test 'aclocal-macrodir.tap'.
+
+am_create_testdir=empty
+. test-init.sh
+
+plan_ 6
+
+ocwd=$(pwd) || fatal_ "getting current working directory"
+ACLOCAL_PATH=; unset ACLOCAL_PATH
+
+#
+# General utility functions and variables.
+#
+# TODO: These should maybe be refactored, generalized and
+# moved into 't/ax/tap-functions.sh' ...
+#
+
+tcount=0
+r=invalid
+description=''
+directive=''
+
+test_begin ()
+{
+ if test -n "$description"; then
+ fatal_ "'test_begin' called, but another test seems active already"
+ else
+ r=ok
+ description=$1
+ directive=${2-}
+ echo "$description" > README.txt
+ shift
+ fi
+ tcount=$(($tcount + 1)) && test $tcount -gt 0 \
+ || fatal_ "failed to bump the test count"
+ mkdir $tcount.d
+ cd $tcount.d
+}
+
+test_end ()
+{
+ if test -z "$description"; then
+ fatal_ "'test_end' called, but no test seems active"
+ else
+ cd "$ocwd" || fatal_ "cannot chdir back to top-level directory"
+ result_ "$r" -D "$directive" -- "$description"
+ # Don't leave directories for successful subtests hanging around.
+ if test -z "$directive" && test "$r" = ok; then
+ rm -rf "$tcount.d" || fatal_ "removing subdir $tcount.d"
+ fi
+ r=invalid directive= description=
+ fi
+}
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIR is honored"
+
+cat > configure.ac <<'END'
+AC_INIT([md], [10.0])
+AC_CONFIG_MACRO_DIR([macro-dir])
+MY_FOO
+END
+
+mkdir macro-dir
+echo 'AC_DEFUN([MY_FOO], [::my::foo::])' > macro-dir/foo.m4
+
+$ACLOCAL \
+ && $FGREP 'm4_include([macro-dir/foo.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $FGREP 'MY_FOO' configure \
+ && $FGREP '::my::foo::' configure \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIR([foo]) interaction with --install"
+
+cat > configure.ac << 'END'
+AC_INIT([inst], [1.0])
+AC_CONFIG_MACRO_DIR([the-dir])
+THE_MACRO
+END
+
+mkdir sys-dir the-dir
+echo 'AC_DEFUN([THE_MACRO], [:])' > sys-dir/my.m4
+
+test ! -r the-dir/my.m4 \
+ && $ACLOCAL --install --system-acdir ./sys-dir \
+ && diff sys-dir/my.m4 the-dir/my.m4 \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "'-I' option wins over AC_CONFIG_MACRO_DIR"
+
+cat > configure.ac <<'END'
+AC_INIT([md], [4.6])
+AC_CONFIG_MACRO_DIR([dir1])
+MY_FOO
+END
+
+mkdir dir1 dir2
+echo 'AC_DEFUN([MY_FOO], [::ko::ko::])' > dir1/1.m4
+echo 'AC_DEFUN([MY_FOO], [::ok::ok::])' > dir2/2.m4
+
+$ACLOCAL -I dir2 \
+ && $FGREP 'm4_include([dir2/2.m4])' aclocal.m4 \
+ && not $FGREP 'm4_include([dir1/1.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $FGREP '::ko::ko::' configure \
+ && $FGREP '::ok::ok::' configure \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIR([foo]) can create directory 'foo'"
+
+cat > configure.ac << 'END'
+AC_INIT([x], [1.0])
+AC_CONFIG_MACRO_DIR([foo])
+MY_MACRO
+END
+
+mkdir acdir
+echo 'AC_DEFUN([MY_MACRO], [:])' > acdir/bar.m4
+
+test ! -d foo \
+ && $ACLOCAL --install --system-acdir ./acdir \
+ && diff acdir/bar.m4 foo/bar.m4 \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIR([non-existent]) errors out (1)"
+
+cat > configure.ac << 'END'
+AC_INIT([oops], [1.0])
+AC_CONFIG_MACRO_DIR([non-existent])
+END
+
+not $ACLOCAL -Wnone 2>stderr \
+ && cat stderr >&2 \
+ && grep "couldn't open directory 'non-existent'" stderr \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+# Avoid spurious failures with pre-2.70 autoconf.
+# FIXME: remove this in automake 1.14, once we require Autoconf 2.70.
+if echo 'AC_INIT AC_CONFIG_MACRO_DIRS' | $AUTOCONF -o/dev/null -; then
+
+ test_begin "AC_CONFIG_MACRO_DIR interaction with AC_REQUIRE"
+
+ unindent > configure.ac <<'END'
+ AC_INIT([req], [1.0])
+ AC_CONFIG_MACRO_DIR([macro-dir])
+ AC_DEFUN([MY_FOO], [AC_REQUIRE([MY_BAR])])
+ MY_FOO
+END
+
+ mkdir macro-dir
+ echo 'AC_DEFUN([MY_BAR], [//my//bar//])' > macro-dir/x.m4
+
+ st=0; $ACLOCAL 2>stderr || st=$?
+ cat stderr >&2
+
+ test $st -eq 0 \
+ && test ! -s stderr \
+ && $FGREP 'm4_include([macro-dir/x.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $EGREP 'MY_(FOO|BAR)' configure \
+ && $FGREP '//my//bar//' configure \
+ || r='not ok'
+
+ test_end
+
+else
+
+ skip_ -r "autoconf is too old (AC_CONFIG_MACRO_DIRS not defined)"
+
+fi
+
+:
diff --git a/t/aclocal-macrodirs.tap b/t/aclocal-macrodirs.tap
new file mode 100755
index 000000000..10256fd9e
--- /dev/null
+++ b/t/aclocal-macrodirs.tap
@@ -0,0 +1,416 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Several tests on the use of the m4 macro AC_CONFIG_MACRO_DIRS with
+# aclocal. See also related test 'aclocal-macrodir.tap'.
+
+am_create_testdir=empty
+. test-init.sh
+
+plan_ 14
+
+ocwd=$(pwd) || fatal_ "getting current working directory"
+ACLOCAL_PATH=; unset ACLOCAL_PATH
+
+#
+# General utility functions and variables.
+#
+# TODO: These should maybe be refactored, generalized and
+# moved into 't/ax/tap-functions.sh' ...
+#
+
+tcount=0
+r=invalid
+description=''
+directive=''
+
+test_begin ()
+{
+ if test -n "$description"; then
+ fatal_ "'test_begin' called, but another test seems active already"
+ else
+ r=ok
+ description=$1
+ directive=${2-}
+ echo "$description" > README.txt
+ shift
+ fi
+ tcount=$(($tcount + 1)) && test $tcount -gt 0 \
+ || fatal_ "failed to bump the test count"
+ mkdir $tcount.d
+ cd $tcount.d
+}
+
+test_end ()
+{
+ if test -z "$description"; then
+ fatal_ "'test_end' called, but no test seems active"
+ else
+ cd "$ocwd" || fatal_ "cannot chdir back to top-level directory"
+ result_ "$r" -D "$directive" -- "$description"
+ # Don't leave directories for successful subtests hanging around.
+ if test -z "$directive" && test "$r" = ok; then
+ rm -rf "$tcount.d" || fatal_ "removing subdir $tcount.d"
+ fi
+ r=invalid directive= description=
+ fi
+}
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS is honored"
+
+cat > configure.ac <<'END'
+AC_INIT([md], [10.0])
+AC_CONFIG_MACRO_DIRS([macro-dir])
+MY_FOO
+END
+
+mkdir macro-dir
+echo 'AC_DEFUN([MY_FOO], [::my::foo::])' > macro-dir/foo.m4
+
+$ACLOCAL \
+ && $FGREP 'm4_include([macro-dir/foo.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $FGREP 'MY_FOO' configure \
+ && $FGREP '::my::foo::' configure \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+three_dirs_check ()
+{
+ mkdir dir1 dir2 dir3
+ echo 'AC_DEFUN([MY_FOO], [::my::foo::])' > dir1/foo.m4
+ echo 'AC_DEFUN([MY_BAR], [!!my!!bar!!])' > dir2/zap.m4
+ echo 'AC_DEFUN([MY_BAZ], [==my==baz==])' > dir3/0.m4
+ $ACLOCAL \
+ && $FGREP 'm4_include([dir1/foo.m4])' aclocal.m4 \
+ && $FGREP 'm4_include([dir2/zap.m4])' aclocal.m4 \
+ && $FGREP 'm4_include([dir3/0.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $EGREP 'MY_(FOO|BAR|BAZ)' configure \
+ && $FGREP '::my::foo::' configure \
+ && $FGREP '!!my!!bar!!' configure \
+ && $FGREP '==my==baz==' configure \
+ || r='not ok'
+}
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS several arguments"
+
+cat > configure.ac <<'END'
+AC_INIT([more-args], [0.2])
+AC_CONFIG_MACRO_DIRS([dir1 dir2 dir3])
+MY_FOO
+MY_BAR
+MY_BAZ
+END
+
+three_dirs_check
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS several calls"
+
+cat > configure.ac <<'END'
+AC_INIT([more-calls], [2.0])
+AC_CONFIG_MACRO_DIRS([dir1])
+AC_CONFIG_MACRO_DIRS([dir2 dir3])
+MY_FOO
+MY_BAR
+MY_BAZ
+END
+
+three_dirs_check
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS extra whitespace"
+
+bslash=\\
+
+cat > configure.ac <<END
+AC_INIT([more-args], [0.2])
+AC_CONFIG_MACRO_DIRS([ dir1${bslash}
+${tab} dir2 ${tab}${tab}dir3
+${bslash}
+
+])
+MY_FOO
+MY_BAR
+MY_BAZ
+END
+
+three_dirs_check
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS precedence"
+
+cat > configure.ac <<'END'
+AC_INIT([more-calls], [2.0])
+AC_CONFIG_MACRO_DIRS([dir1])
+AC_CONFIG_MACRO_DIRS([dir2 dir3])
+MY_FOO
+MY_BAR
+MY_BAZ
+END
+
+mkdir dir1 dir2 dir3
+echo 'AC_DEFUN([MY_FOO], [OK-Foo])' > dir1/b.m4
+echo 'AC_DEFUN([MY_FOO], [KO-Foo])' > dir2/a.m4
+echo 'AC_DEFUN([MY_BAR], [OK-Bar])' > dir2/1.m4
+echo 'AC_DEFUN([MY_BAR], [KO-Bar])' > dir3/0.m4
+echo 'AC_DEFUN([MY_BAZ], [OK-Baz])' > dir3/x.m4
+
+$ACLOCAL \
+ && $FGREP 'm4_include([dir1/b.m4])' aclocal.m4 \
+ && $FGREP 'm4_include([dir2/1.m4])' aclocal.m4 \
+ && $FGREP 'm4_include([dir3/x.m4])' aclocal.m4 \
+ && test $($FGREP -c 'm4_include([dir1' aclocal.m4) -eq 1 \
+ && test $($FGREP -c 'm4_include([dir2' aclocal.m4) -eq 1 \
+ && test $($FGREP -c 'm4_include([dir3' aclocal.m4) -eq 1 \
+ && $AUTOCONF \
+ && not $EGREP 'MY_(FOO|BAR|BAZ)' configure \
+ && $FGREP 'OK-Foo' configure \
+ && $FGREP 'OK-Bar' configure \
+ && $FGREP 'OK-Baz' configure \
+ && not $FGREP 'KO-' configure \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS interaction with --install"
+
+cat > configure.ac << 'END'
+AC_INIT([inst], [1.0])
+AC_CONFIG_MACRO_DIRS([the-dir])
+THE_MACRO
+END
+
+mkdir sys-dir the-dir
+echo 'AC_DEFUN([THE_MACRO], [:])' > sys-dir/my.m4
+
+test ! -r the-dir/my.m4 \
+ && $ACLOCAL --install --system-acdir ./sys-dir \
+ && diff sys-dir/my.m4 the-dir/my.m4 \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+two_dirs_install_check ()
+{
+ mkdir sys-dir dir1 dir2
+ echo 'AC_DEFUN([THE_MACRO], [:])' > sys-dir/my.m4
+ echo 'AC_DEFUN([AX_FOO], [:])' > dir2/zap.m4
+ test ! -r dir1/my.m4 \
+ && $ACLOCAL --install --system-acdir ./sys-dir \
+ && diff sys-dir/my.m4 dir1/my.m4 \
+ && test ! -e dir2/my.m4 \
+ && $FGREP 'm4_include([dir1/my.m4])' aclocal.m4 \
+ && $FGREP 'm4_include([dir2/zap.m4])' aclocal.m4 \
+ || r='not ok'
+}
+
+#---------------------------------------------------------------------------
+
+test_begin "several AC_CONFIG_MACRO_DIRS arguments and --install"
+
+cat > configure.ac << 'END'
+AC_INIT([inst2a], [1.0])
+AC_CONFIG_MACRO_DIRS([dir1 dir2])
+THE_MACRO
+AX_FOO
+END
+
+two_dirs_install_check
+
+test_end
+
+#---------------------------------------------------------------------------
+
+
+test_begin "several AC_CONFIG_MACRO_DIRS calls and --install"
+
+cat > configure.ac << 'END'
+AC_INIT([inst2b], [1.0])
+AC_CONFIG_MACRO_DIRS([dir1])
+AC_CONFIG_MACRO_DIRS([dir2])
+THE_MACRO
+AX_FOO
+END
+
+two_dirs_install_check
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "'-I' option wins over AC_CONFIG_MACRO_DIRS"
+
+cat > configure.ac <<'END'
+AC_INIT([md], [4.6])
+AC_CONFIG_MACRO_DIRS([dir1])
+MY_FOO
+END
+
+mkdir dir1 dir2
+echo 'AC_DEFUN([MY_FOO], [::ko::ko::])' > dir1/1.m4
+echo 'AC_DEFUN([MY_FOO], [::ok::ok::])' > dir2/2.m4
+
+$ACLOCAL -I dir2 \
+ && $FGREP 'm4_include([dir2/2.m4])' aclocal.m4 \
+ && not $FGREP 'm4_include([dir1/1.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $FGREP '::ko::ko::' configure \
+ && $FGREP '::ok::ok::' configure \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS([foo]) can create directory 'foo'"
+
+cat > configure.ac << 'END'
+AC_INIT([x], [1.0])
+AC_CONFIG_MACRO_DIRS([foo])
+MY_MACRO
+END
+
+mkdir acdir
+echo 'AC_DEFUN([MY_MACRO], [:])' > acdir/bar.m4
+
+test ! -d foo \
+ && $ACLOCAL --install --system-acdir ./acdir \
+ && diff acdir/bar.m4 foo/bar.m4 \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS([non-existent]) errors out (1)"
+
+cat > configure.ac << 'END'
+AC_INIT([oops], [1.0])
+AC_CONFIG_MACRO_DIRS([non-existent])
+END
+
+not $ACLOCAL 2>stderr \
+ && cat stderr >&2 \
+ && grep "couldn't open directory 'non-existent'" stderr \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS([non-existent]) errors out (2)"
+
+cat > configure.ac << 'END'
+AC_INIT([oops], [1.0])
+AC_CONFIG_MACRO_DIRS([dir-ok])
+AC_CONFIG_MACRO_DIRS([dir-ko])
+END
+
+mkdir dir-ok
+not $ACLOCAL 2>stderr \
+ && cat stderr >&2 \
+ && grep "couldn't open directory 'dir-ko'" stderr \
+ && not grep "dir-ok" stderr \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+test_begin "AC_CONFIG_MACRO_DIRS([non-existent]) errors out (tricky setup)"
+
+cat > configure.ac << 'END'
+AC_INIT([oops], [1.0])
+AC_CONFIG_MACRO_DIRS([dir-ok])
+AC_CONFIG_MACRO_DIRS([dir-ko])
+END
+
+mkdir dir-ok
+
+not $ACLOCAL -Wnone --install 2>stderr \
+ && cat stderr >&2 \
+ && grep "couldn't open directory 'dir-ko'" stderr \
+ && test ! -e dir-ko \
+ || r='not ok'
+
+test_end
+
+#---------------------------------------------------------------------------
+
+# Avoid spurious failures with pre-2.70 autoconf.
+# FIXME: remove this in automake 1.14, once we require Autoconf 2.70.
+if echo 'AC_INIT AC_CONFIG_MACRO_DIRS' | $AUTOCONF -o/dev/null -; then
+
+ test_begin "AC_CONFIG_MACRO_DIRS interaction with AC_REQUIRE"
+
+ unindent > configure.ac <<'END'
+ AC_INIT([req], [1.0])
+ AC_CONFIG_MACRO_DIRS([m1 m2])
+ AC_DEFUN([MY_FOO], [
+ AC_REQUIRE([MY_BAR])
+ AC_REQUIRE([MY_BAZ])
+ ])
+ MY_FOO
+END
+
+ mkdir m1 m2
+ echo 'AC_DEFUN([MY_BAR], [^^my^^bar^^])' > m1/x.m4
+ echo 'AC_DEFUN([MY_BAZ], [~~my~~baz~~])' > m2/x.m4
+
+ st=0; $ACLOCAL 2>stderr || st=$?
+ cat stderr >&2
+
+ test $st -eq 0 \
+ && test ! -s stderr \
+ && $FGREP 'm4_include([m1/x.m4])' aclocal.m4 \
+ && $FGREP 'm4_include([m2/x.m4])' aclocal.m4 \
+ && $AUTOCONF \
+ && not $EGREP 'MY_(FOO|BAR|BAZ)' configure \
+ && $FGREP '^^my^^bar^^' configure \
+ && $FGREP '~~my~~baz~~' configure \
+ || r='not ok'
+
+ test_end
+
+else
+
+ skip_ -r "autoconf is too old (AC_CONFIG_MACRO_DIRS not defined)"
+
+fi
+
+:
diff --git a/t/aclocal3.sh b/t/aclocal-missing-macros.sh
index 03aa42d8b..ce93251da 100755
--- a/t/aclocal3.sh
+++ b/t/aclocal-missing-macros.sh
@@ -17,7 +17,7 @@
# Test to make sure include of include detects missing macros
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/acloca16.sh b/t/aclocal-no-extra-scan.sh
index a702f2729..34f66b191 100755
--- a/t/acloca16.sh
+++ b/t/aclocal-no-extra-scan.sh
@@ -18,9 +18,10 @@
# evaluated.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
+AC_INIT([x], [0])
AC_SUBST([POM])
END
@@ -31,6 +32,6 @@ AC_DEFUN([AM_SOME_MACRO],
EOF
$ACLOCAL -I m4
-grep m4/some.m4 aclocal.m4 && exit 1
+$EGREP 'some.m4|GREPME' aclocal.m4 && exit 1
:
diff --git a/t/aclocal7.sh b/t/aclocal-no-force.sh
index c050b07d1..9f246143e 100755
--- a/t/aclocal7.sh
+++ b/t/aclocal-no-force.sh
@@ -17,7 +17,7 @@
# Make sure aclocal does not overwrite aclocal.m4 needlessly.
# Also make sure automake --no-force does not overwrite Makefile.in needlessly.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
SOME_DEFS
diff --git a/t/aclocal-no-install-no-mkdir.sh b/t/aclocal-no-install-no-mkdir.sh
index 5b4776877..58dafb998 100755
--- a/t/aclocal-no-install-no-mkdir.sh
+++ b/t/aclocal-no-install-no-mkdir.sh
@@ -18,7 +18,7 @@
# if the '--install' option is not given.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/acloca20.sh b/t/aclocal-no-symlinked-overwrite.sh
index b5881d67f..c381dd78f 100755
--- a/t/acloca20.sh
+++ b/t/aclocal-no-symlinked-overwrite.sh
@@ -17,7 +17,7 @@
# Make sure aclocal does not write into symlinked aclocal.m4.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
echo 'm4_define([FOO], [wrong foo])' > foo.m4
echo 'm4_define([FOO], [right foo])' > acinclude.m4
diff --git a/t/aclocal8.sh b/t/aclocal-no-unused-required.sh
index a242fca36..9f2d1db81 100755
--- a/t/aclocal8.sh
+++ b/t/aclocal-no-unused-required.sh
@@ -17,7 +17,7 @@
# Make sure aclocal does not require unused macros.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/aclocal-path-install-serial.sh b/t/aclocal-path-install-serial.sh
index 683845ced..c3f0c8a56 100755
--- a/t/aclocal-path-install-serial.sh
+++ b/t/aclocal-path-install-serial.sh
@@ -18,7 +18,7 @@
# are involved.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/aclocal-path-install.sh b/t/aclocal-path-install.sh
index 4ed1a2c27..eb10f99f4 100755
--- a/t/aclocal-path-install.sh
+++ b/t/aclocal-path-install.sh
@@ -17,7 +17,7 @@
# ACLOCAL_PATH and '--install' interactions.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
@@ -41,7 +41,7 @@ END
# in a directory specified in ACLOCAL_PATH.
$ACLOCAL --install 2>stderr && { cat stderr >&2; exit 1; }
cat stderr >&2
-grep ' no -I was supplied' stderr
+grep 'impossible without -I .* nor AC_CONFIG_MACRO_DIR' stderr
test ! -e pdir/foo.m4
# The '--install' option should cause a required macro found in a
diff --git a/t/aclocal-path-nonexistent.sh b/t/aclocal-path-nonexistent.sh
index ad8d5b7ca..df1bae1dd 100755
--- a/t/aclocal-path-nonexistent.sh
+++ b/t/aclocal-path-nonexistent.sh
@@ -17,7 +17,7 @@
# Non-existent directories in ACLOCAL_PATH are ok.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/aclocal-path-precedence.sh b/t/aclocal-path-precedence.sh
index 81eee9886..054523178 100755
--- a/t/aclocal-path-precedence.sh
+++ b/t/aclocal-path-precedence.sh
@@ -17,11 +17,11 @@
# Check precedence rules for ACLOCAL_PATH.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([foo], [1.0])
-AM_INIT_AUTOMAKE([parallel-tests])
+AM_INIT_AUTOMAKE
FOO_MACRO
BAR_MACRO
AC_PROG_LIBTOOL
diff --git a/t/aclocal-path.sh b/t/aclocal-path.sh
index c22a7c4bc..a4ee3ee17 100755
--- a/t/aclocal-path.sh
+++ b/t/aclocal-path.sh
@@ -17,7 +17,7 @@
# Check basic ACLOCAL_PATH support.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/acloca19.sh b/t/aclocal-pr450.sh
index c6d23520e..502bc6979 100755
--- a/t/acloca19.sh
+++ b/t/aclocal-pr450.sh
@@ -18,7 +18,7 @@
# more than just variable definitions.
# Report from Peter Breitenlohner (PR/450).
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<'END'
AC_INIT([acloca19], [1.0])
diff --git a/t/aclocal-print-acdir.sh b/t/aclocal-print-acdir.sh
index d057d826e..440bb7235 100755
--- a/t/aclocal-print-acdir.sh
+++ b/t/aclocal-print-acdir.sh
@@ -17,14 +17,11 @@
# Test on aclocal's '--print-ac-dir' option.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
$ACLOCAL --print-ac-dir
test "$($ACLOCAL --print-ac-dir)" = "$am_system_acdir"
-$ACLOCAL -Wno-obsolete --acdir foo --print-ac-dir
-test "$($ACLOCAL -Wno-obsolete --acdir foo --print-ac-dir)" = foo
-
$ACLOCAL --system-acdir /bar --print-ac-dir
test "$($ACLOCAL --system-acdir /bar --print-ac-dir)" = /bar
diff --git a/t/aclocal6.sh b/t/aclocal-remake-misc.sh
index dc6b38db3..97b748243 100755
--- a/t/aclocal6.sh
+++ b/t/aclocal-remake-misc.sh
@@ -17,17 +17,17 @@
# Make sure aclocal.m4 is rebuilt whenever a configure
# dependency changes. Test for acinclude.m4 and VPATH too.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
SOME_DEFS
AC_CONFIG_FILES([sub/Makefile])
+AC_CONFIG_MACRO_DIR([m4])
AC_OUTPUT
END
cat > Makefile.am << 'END'
SUBDIRS = sub
-ACLOCAL_AMFLAGS = -I m4
END
mkdir sub
@@ -37,7 +37,7 @@ mkdir m4
echo 'AC_DEFUN([SOME_DEFS], [])' > m4/somedefs.m4
echo 'AC_DEFUN([MORE_DEFS], [AC_SUBST([GREPME])])' > m4/moredefs.m4
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE --copy --add-missing
diff --git a/t/acloca15.sh b/t/aclocal-scan-configure-ac-pr319.sh
index 38c6e3e66..4ce34abba 100755
--- a/t/acloca15.sh
+++ b/t/aclocal-scan-configure-ac-pr319.sh
@@ -18,7 +18,7 @@
# PR/319.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
# Start macros with AM_ because that causes aclocal to complain if it
# cannot find them.
diff --git a/t/acloca18.sh b/t/aclocal-serial.sh
index 8bdbd5689..2e1cbb5fe 100755
--- a/t/acloca18.sh
+++ b/t/aclocal-serial.sh
@@ -17,7 +17,7 @@
# Test for --install with #serial numbers.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/acloca23.sh b/t/aclocal-underquoted-defun.sh
index 2366fc40b..071ddae33 100755
--- a/t/acloca23.sh
+++ b/t/aclocal-underquoted-defun.sh
@@ -17,7 +17,7 @@
# Ensure we diagnose underquoted AC_DEFUN's.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT
diff --git a/t/aclocal-verbose-install.sh b/t/aclocal-verbose-install.sh
index 27fa0c5ba..b598bb89a 100755
--- a/t/aclocal-verbose-install.sh
+++ b/t/aclocal-verbose-install.sh
@@ -17,7 +17,7 @@
# Check verbose messages by 'aclocal --install'.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/aclocal.sh b/t/aclocal.sh
index d99da5ff8..3234496b7 100755
--- a/t/aclocal.sh
+++ b/t/aclocal.sh
@@ -17,7 +17,7 @@
# Test on some aclocal options. Report from Alexandre Oliva.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
echo "AC_INIT([$me], [0]) AM_INIT_AUTOMAKE" > configure.ac
diff --git a/t/acsilent.sh b/t/acsilent.sh
index 18f18ff92..2200d7da6 100755
--- a/t/acsilent.sh
+++ b/t/acsilent.sh
@@ -16,17 +16,16 @@
# Test to make sure there are no spurious acinclude warnings.
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<EOF
-AC_INIT
+AC_INIT([$me], [1.0])
AM_INIT_GUILE_MODULE
EOF
cat > acinclude.m4 << 'END'
-AC_DEFUN([AM_INIT_GUILE_MODULE],[
-. $srcdir/../GUILE-VERSION
-AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
+AC_DEFUN([AM_INIT_GUILE_MODULE], [
+AM_INIT_AUTOMAKE([dist-xz])
AC_CONFIG_AUX_DIR(..)
module=[$1]
AC_SUBST(module)])
diff --git a/t/acsubst.sh b/t/acsubst.sh
index 19dfbdfc1..4081f66fb 100755
--- a/t/acsubst.sh
+++ b/t/acsubst.sh
@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/acsubst2.sh b/t/acsubst2.sh
index ea7749c37..da858fd79 100755
--- a/t/acsubst2.sh
+++ b/t/acsubst2.sh
@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/add-missing.tap b/t/add-missing.tap
index c47382b5f..ac8c763c5 100755
--- a/t/add-missing.tap
+++ b/t/add-missing.tap
@@ -20,7 +20,7 @@
# default, but copied if the '--copy' option is used.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
plan_ "later"
@@ -343,17 +343,6 @@ rm -f foo.texi
check_ <<'END'
== Name ==
-elisp-comp
-== Files ==
-elisp-comp
-== configure.ac ==
-AM_PATH_LISPDIR
-== Makefile.am ==
-lisp_LISP = foo.el
-END
-
-check_ <<'END'
-== Name ==
py-compile
== Files ==
py-compile
diff --git a/t/all.sh b/t/all.sh
index 3797acf3f..0a0216c23 100755
--- a/t/all.sh
+++ b/t/all.sh
@@ -16,7 +16,7 @@
# Test to make sure several *-local's in a single rule work.
-. ./defs || exit 1
+. test-init.sh
targets='all install-exec install-data uninstall'
echo "$targets:" | sed -e 's/[ :]/-local&/g' > Makefile.am
diff --git a/t/all2.sh b/t/all2.sh
index 879cdfcee..7c9ab3245 100755
--- a/t/all2.sh
+++ b/t/all2.sh
@@ -16,7 +16,7 @@
# Test to make sure all-local and other -local targets work correctly.
-. ./defs || exit 1
+. test-init.sh
$ACLOCAL
diff --git a/t/alloca.sh b/t/alloca.sh
index e054dd4f8..aa436ff7e 100755
--- a/t/alloca.sh
+++ b/t/alloca.sh
@@ -16,7 +16,7 @@
# Make sure we complain if @ALLOCA@ is used without being set in configure.ac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AM_PROG_AR
diff --git a/t/alloca2.sh b/t/alloca2.sh
index 38d2cf84f..6410344a3 100755
--- a/t/alloca2.sh
+++ b/t/alloca2.sh
@@ -16,7 +16,7 @@
# Make sure we complain if @LTALLOCA@ is used without being set in configure.ac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/alpha.sh b/t/alpha.sh
index b1315f0b7..d8dc30a84 100755
--- a/t/alpha.sh
+++ b/t/alpha.sh
@@ -16,7 +16,7 @@
# Make sure README-alpha is distributed when appropriate. Report from
# Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([alpha], [1.0a])
diff --git a/t/alpha2.sh b/t/alpha2.sh
index 86f60b9c2..318b1c949 100755
--- a/t/alpha2.sh
+++ b/t/alpha2.sh
@@ -17,7 +17,7 @@
# Another check for README-alpha support. This time it is requested
# from configure.ac. Report from Akim Demaille.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([alpha], [1.0b])
diff --git a/t/am-default-source-ext.sh b/t/am-default-source-ext.sh
index 4e0fed893..ec91a19be 100755
--- a/t/am-default-source-ext.sh
+++ b/t/am-default-source-ext.sh
@@ -17,7 +17,7 @@
# AM_DEFAULT_SOURCE_EXT
required='cc c++'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/am-macro-not-found.sh b/t/am-macro-not-found.sh
index 038dabfe9..37e6959bc 100755
--- a/t/am-macro-not-found.sh
+++ b/t/am-macro-not-found.sh
@@ -16,7 +16,7 @@
# Test to see if aclocal correctly reports missing AM_ macro.
-. ./defs || exit 1
+. test-init.sh
echo AM_ZARDOZ >> configure.ac
diff --git a/t/am-missing-prog.sh b/t/am-missing-prog.sh
index 6368db5ba..08fc455f2 100755
--- a/t/am-missing-prog.sh
+++ b/t/am-missing-prog.sh
@@ -16,7 +16,7 @@
# Test AM_MISSING_PROG.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AM_MISSING_PROG([NO_SUCH_COMMAND], [am-none-none])
@@ -51,13 +51,11 @@ o = $@-stdout
e = $@-stderr
debug_info = grep . $@-stdout $@-stderr
-status_is = $(debug_info); echo $@: st=$$st; : test $$st -eq
+status_is = $(debug_info); echo $@: st=$$st; test $$st -eq
w_mis = 'am-none-none' is needed, and is missing on your system
w_old = 'am-exit-63' is needed, and is probably too old
-# FIXME: make this test stricter w.r.t. the exit statuses once
-# FIXME: we are merged to master!
test1:
st=0; $(NO_SUCH_COMMAND) >$o 2>$e || st=$$?; $(status_is) 127
grep "^WARNING: $(w_mis)" $e
diff --git a/t/am-tests-environment.sh b/t/am-tests-environment.sh
index e8fbbe38d..eff785013 100755
--- a/t/am-tests-environment.sh
+++ b/t/am-tests-environment.sh
@@ -17,7 +17,7 @@
# parallel-tests: check AM_TESTS_ENVIRONMENT support, and its
# interactions with TESTS_ENVIRONMENT.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_MKDIR_P
diff --git a/t/amassign.sh b/t/amassign.sh
index 555e3f4b6..96ec96d07 100755
--- a/t/amassign.sh
+++ b/t/amassign.sh
@@ -17,7 +17,7 @@
# Test to see if AM_ name can be assigned to in configure.ac.
# Report from Steve Robbins.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CFLAGS=foo
diff --git a/t/amhello-binpkg.sh b/t/amhello-binpkg.sh
index c1d2575ee..c87717c74 100755
--- a/t/amhello-binpkg.sh
+++ b/t/amhello-binpkg.sh
@@ -18,7 +18,7 @@
# using DESTDIR to build simple, no-frills binary packages.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cp "$am_docdir"/amhello-1.0.tar.gz . \
|| fatal_ "cannot get amhello tarball"
diff --git a/t/amhello-cflags.sh b/t/amhello-cflags.sh
index a120d8110..601378999 100755
--- a/t/amhello-cflags.sh
+++ b/t/amhello-cflags.sh
@@ -20,7 +20,7 @@
am_create_testdir=empty
required=gcc
-. ./defs || exit 1
+. test-init.sh
cp "$am_docdir"/amhello-1.0.tar.gz . \
|| fatal_ "cannot get amhello tarball"
diff --git a/t/amhello-cross-compile.sh b/t/amhello-cross-compile.sh
index d4476570f..c4992d491 100755
--- a/t/amhello-cross-compile.sh
+++ b/t/amhello-cross-compile.sh
@@ -19,7 +19,7 @@
am_create_testdir=empty
required=i586-mingw32msvc-gcc
-. ./defs || exit 1
+. test-init.sh
cp "$am_docdir"/amhello-1.0.tar.gz . \
|| fatal_ "cannot get amhello tarball"
diff --git a/t/aminit-moreargs-deprecation.sh b/t/aminit-moreargs-deprecation.sh
index a8d4605e2..99ac969d1 100755
--- a/t/aminit-moreargs-deprecation.sh
+++ b/t/aminit-moreargs-deprecation.sh
@@ -17,7 +17,7 @@
# Check that automake warns against old-style usages of AM_INIT_AUTOMAKE
# (i.e., calls with two or three arguments).
-. ./defs || exit 1
+. test-init.sh
warn_rx='AM_INIT_AUTOMAKE.* two-.* three-arguments form.*deprecated'
diff --git a/t/amopt.sh b/t/amopt.sh
index 5d6005de5..7b4a93301 100755
--- a/t/amopt.sh
+++ b/t/amopt.sh
@@ -17,7 +17,7 @@
# Make Automake diagnose a conditional AUTOMAKE_OPTIONS.
# Report from Bas Wijnen.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AM_CONDITIONAL([COND], [true])
diff --git a/t/amopts-location.sh b/t/amopts-location.sh
index c0d471a00..0f489a4ba 100755
--- a/t/amopts-location.sh
+++ b/t/amopts-location.sh
@@ -17,7 +17,7 @@
# Check that errors about AUTOMAKE_OPTIONS refers to correct
# locations.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<'END'
# comment \
diff --git a/t/amopts-variable-expansion.sh b/t/amopts-variable-expansion.sh
index bc0daea28..d63b5f0fa 100755
--- a/t/amopts-variable-expansion.sh
+++ b/t/amopts-variable-expansion.sh
@@ -16,7 +16,7 @@
# Check that AUTOMAKE_OPTIONS support variable expansion.
-. ./defs || exit 1
+. test-init.sh
# We want complete control over automake options.
AUTOMAKE=$am_original_AUTOMAKE
diff --git a/t/amsubst.sh b/t/amsubst.sh
index 49d50c1e0..c22992434 100755
--- a/t/amsubst.sh
+++ b/t/amsubst.sh
@@ -16,7 +16,7 @@
# Check for _AM_SUBST_NOTMAKE.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([backslash], "\\")
diff --git a/t/ansi2knr-no-more.sh b/t/ansi2knr-no-more.sh
index 5387d20fb..e28e65106 100755
--- a/t/ansi2knr-no-more.sh
+++ b/t/ansi2knr-no-more.sh
@@ -17,7 +17,7 @@
# Check that any attempt to use the obsolete de-ANSI-fication support
# is diagnosed.
-. ./defs || exit 1
+. test-init.sh
warn_rx='automatic de-ANSI-fication.*removed'
diff --git a/t/ar-lib.sh b/t/ar-lib.sh
index c6f6a3c88..e7ca34c5b 100755
--- a/t/ar-lib.sh
+++ b/t/ar-lib.sh
@@ -18,7 +18,7 @@
am_create_testdir=empty
required=xsi-lib-shell
-. ./defs || exit 1
+. test-init.sh
get_shell_script ar-lib
diff --git a/t/ar-lib2.sh b/t/ar-lib2.sh
index da2b5ca58..df5332d9d 100755
--- a/t/ar-lib2.sh
+++ b/t/ar-lib2.sh
@@ -16,7 +16,7 @@
# Test if AM_PROG_AR installs ar-lib.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ar-lib3.sh b/t/ar-lib3.sh
index 513808aa2..77a8db9f2 100755
--- a/t/ar-lib3.sh
+++ b/t/ar-lib3.sh
@@ -16,7 +16,7 @@
# Test if lib_LIBRARIES requests AM_PROG_AR.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ar-lib4.sh b/t/ar-lib4.sh
index 2bd93aa90..0bd51498c 100755
--- a/t/ar-lib4.sh
+++ b/t/ar-lib4.sh
@@ -17,7 +17,7 @@
# Test if lib_LTLIBRARIES requests AM_PROG_AR.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cp configure.ac X
diff --git a/t/ar-lib5a.sh b/t/ar-lib5a.sh
index a11e218f7..6f800e601 100755
--- a/t/ar-lib5a.sh
+++ b/t/ar-lib5a.sh
@@ -19,7 +19,7 @@
# Keep this test in sync with sister test 'ar-lib5b.sh'.
required=lib
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/ar-lib5b.sh b/t/ar-lib5b.sh
index a3007602c..fcf45b9ce 100755
--- a/t/ar-lib5b.sh
+++ b/t/ar-lib5b.sh
@@ -18,7 +18,7 @@
# This test does not require Microsoft lib.
# Keep this test in sync with sister test 'ar-lib5a.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/ar-lib6a.sh b/t/ar-lib6a.sh
index 7ee5257c1..86b8c991c 100755
--- a/t/ar-lib6a.sh
+++ b/t/ar-lib6a.sh
@@ -18,7 +18,7 @@
# Keep this test in sync with sister test 'ar-lib6b.sh'.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ar-lib6b.sh b/t/ar-lib6b.sh
index 92709f851..e402b63dc 100755
--- a/t/ar-lib6b.sh
+++ b/t/ar-lib6b.sh
@@ -18,7 +18,7 @@
# Keep this test in sync with sister test 'ar-lib6a.sh'.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ar-lib7.sh b/t/ar-lib7.sh
index c27cabf47..dd7d4a738 100755
--- a/t/ar-lib7.sh
+++ b/t/ar-lib7.sh
@@ -16,7 +16,7 @@
# Test if automake warns if ar-lib is missing when AM_PROG_AR is used.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR
diff --git a/t/ar.sh b/t/ar.sh
index da01d7537..5aa16812f 100755
--- a/t/ar.sh
+++ b/t/ar.sh
@@ -16,7 +16,7 @@
# Make sure that AR, ARFLAGS, and RANLIB can be substituted from configure.ac.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR
diff --git a/t/ar2.sh b/t/ar2.sh
index 88e90ca02..bcda001e1 100755
--- a/t/ar2.sh
+++ b/t/ar2.sh
@@ -17,7 +17,7 @@
# Make sure AR and ARFLAGS are defined for EXTRA_LIBRARIES.
# Report from Kevin Ryde.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ar3.sh b/t/ar3.sh
index f8bf855e9..3b3ab4e74 100755
--- a/t/ar3.sh
+++ b/t/ar3.sh
@@ -17,7 +17,7 @@
# Make sure that AR, ARFLAGS, etc. works also when the macro AM_PROG_AR
# is used.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ar4.sh b/t/ar4.sh
index dc82605b8..15c59138b 100755
--- a/t/ar4.sh
+++ b/t/ar4.sh
@@ -16,7 +16,7 @@
# Test if configure bails out if $AR does not work and AM_PROG_AR is used.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR
diff --git a/t/ar5.sh b/t/ar5.sh
index 50cf2b0ba..90c4f963e 100755
--- a/t/ar5.sh
+++ b/t/ar5.sh
@@ -16,7 +16,7 @@
# Test the optional argument of AM_PROG_AR.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR([
diff --git a/t/asm.sh b/t/asm.sh
index 48df68b2c..0ce4d07e9 100755
--- a/t/asm.sh
+++ b/t/asm.sh
@@ -17,7 +17,7 @@
# Test of basic assembly functionality.
# Keep this in sync with sister tests 'asm2.sh' and 'asm3.sh'.
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.stub
diff --git a/t/asm2.sh b/t/asm2.sh
index d62cb60b8..29ab10bf0 100755
--- a/t/asm2.sh
+++ b/t/asm2.sh
@@ -17,7 +17,7 @@
# Test of basic preprocessed assembly functionality.
# Keep this in sync with sister tests 'asm.sh' and 'asm3.sh'.
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.stub
diff --git a/t/asm3.sh b/t/asm3.sh
index 67bb876a6..8044c0829 100755
--- a/t/asm3.sh
+++ b/t/asm3.sh
@@ -17,7 +17,7 @@
# Test of basic preprocessed assembly functionality with extension '.sx'.
# Keep this in sync with sister tests 'asm.sh' and 'asm2.sh'.
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.stub
diff --git a/t/autodist-acconfig-no-subdir.sh b/t/autodist-acconfig-no-subdir.sh
index 474e05fa2..835d53ed8 100755
--- a/t/autodist-acconfig-no-subdir.sh
+++ b/t/autodist-acconfig-no-subdir.sh
@@ -18,7 +18,7 @@
# placed in a subdirectory.
# Related to automake bug#7819.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/autodist-acconfig.sh b/t/autodist-acconfig.sh
index 98db0a6cd..3dc417a87 100755
--- a/t/autodist-acconfig.sh
+++ b/t/autodist-acconfig.sh
@@ -18,7 +18,7 @@
# (at automake runtime).
# Related to automake bug#7819.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/autodist-aclocal-m4.sh b/t/autodist-aclocal-m4.sh
index a61d804e9..582171dfe 100755
--- a/t/autodist-aclocal-m4.sh
+++ b/t/autodist-aclocal-m4.sh
@@ -21,7 +21,7 @@
# remove this test.
# Related to automake bug#7819.
-. ./defs || exit 1
+. test-init.sh
{ echo 'm4_include([defs.m4])'
cat configure.ac
diff --git a/t/autodist-config-headers.sh b/t/autodist-config-headers.sh
index ad61fd667..ab86e8b5e 100755
--- a/t/autodist-config-headers.sh
+++ b/t/autodist-config-headers.sh
@@ -19,7 +19,7 @@
# exist at automake runtime.
# Related to automake bug#7819.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_CONFIG_HEADERS([config.h sub/config.h cfg2.h:conf2.hin])
diff --git a/t/autodist-configure-no-subdir.sh b/t/autodist-configure-no-subdir.sh
index a48a0a76c..8fd325beb 100755
--- a/t/autodist-configure-no-subdir.sh
+++ b/t/autodist-configure-no-subdir.sh
@@ -18,7 +18,7 @@
# automatically distributed when placed in a subdirectory.
# Related to automake bug#7819.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/autodist-no-duplicate.sh b/t/autodist-no-duplicate.sh
index 58742ceb5..20b3caf6c 100755
--- a/t/autodist-no-duplicate.sh
+++ b/t/autodist-no-duplicate.sh
@@ -17,7 +17,7 @@
# Check that there are no duplicates in the list of files automatically
# distributed by automake.
-. ./defs || exit 1
+. test-init.sh
re='Files .*automatically distributed.*if found'
diff --git a/t/autodist-stamp-vti.sh b/t/autodist-stamp-vti.sh
index 6d8b02d15..d8e2efda2 100755
--- a/t/autodist-stamp-vti.sh
+++ b/t/autodist-stamp-vti.sh
@@ -19,7 +19,7 @@
# Related to automake bug#7819.
required=makeinfo
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << END
AC_OUTPUT
diff --git a/t/autodist-subdir.sh b/t/autodist-subdir.sh
index 9af7128ac..0ca57dc40 100755
--- a/t/autodist-subdir.sh
+++ b/t/autodist-subdir.sh
@@ -24,7 +24,7 @@
#
# Keep this test in sync with sister test 'autodist.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/autodist.sh b/t/autodist.sh
index 2e591de38..9834508ed 100755
--- a/t/autodist.sh
+++ b/t/autodist.sh
@@ -20,7 +20,7 @@
# Keep this test in sync with sister test 'autodist-subdir.sh'.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/autohdr-subdir-pr12495.sh b/t/autohdr-subdir-pr12495.sh
index 77d2522bc..7517fd575 100755
--- a/t/autohdr-subdir-pr12495.sh
+++ b/t/autohdr-subdir-pr12495.sh
@@ -18,7 +18,7 @@
# remake rules for AC_CONFIG_HEADERS arguments after the first one,
# not even when subdirs are involved.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_HEADERS([a.h b.h sub/c.h])
diff --git a/t/autohdr.sh b/t/autohdr.sh
index 19daabeed..4079c7c57 100755
--- a/t/autohdr.sh
+++ b/t/autohdr.sh
@@ -16,7 +16,7 @@
# Check that autoheaders works, despite our AC_CONFIG_HEADERS hack.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_CONFIG_HEADERS([thisfile.h])
diff --git a/t/autohdr2.sh b/t/autohdr2.sh
deleted file mode 100755
index 292a800bd..000000000
--- a/t/autohdr2.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2002-2012 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/>.
-
-# Check that autoheaders works, despite our AC_CONFIG_HEADERS hack.
-
-. ./defs || exit 1
-
-cat >>configure.ac <<EOF
-AM_CONFIG_HEADER([thisfile.h])
-EOF
-
-: > Makefile.am
-
-$ACLOCAL
-$AUTOHEADER
-
-test -f thisfile.h.in
diff --git a/t/autohdr3.sh b/t/autohdr3.sh
index 0fccc535a..93ef52ec2 100755
--- a/t/autohdr3.sh
+++ b/t/autohdr3.sh
@@ -16,7 +16,7 @@
# Check rebuild rules for autoheader.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
m4_include([foo.m4])
diff --git a/t/autohdr4.sh b/t/autohdr4.sh
index fa1f8f0f6..6f46aaf65 100755
--- a/t/autohdr4.sh
+++ b/t/autohdr4.sh
@@ -18,7 +18,7 @@
# (This should also work without GNU Make.)
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_PROG_CC
diff --git a/t/autohdrdry.sh b/t/autohdrdry.sh
index 3bd474ea0..0a9acd36e 100755
--- a/t/autohdrdry.sh
+++ b/t/autohdrdry.sh
@@ -17,7 +17,7 @@
# Removal recovery rules for AC_CONFIG_HEADERS should not remove files
# with 'make -n'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_CONFIG_HEADERS([config.h])
@@ -37,6 +37,6 @@ $MAKE
rm -f config.h
$MAKE -n
test -f stamp-h1
-test ! -r config.h
+test ! -e config.h
:
diff --git a/t/automake-cmdline.tap b/t/automake-cmdline.tap
index dd8b30a48..eb8bf78ff 100755
--- a/t/automake-cmdline.tap
+++ b/t/automake-cmdline.tap
@@ -16,7 +16,7 @@
# Test Automake's command-line options.
-. ./defs || exit 1
+. test-init.sh
plan_ 17
diff --git a/t/auxdir-autodetect.sh b/t/auxdir-autodetect.sh
index 654a30348..580f631e3 100755
--- a/t/auxdir-autodetect.sh
+++ b/t/auxdir-autodetect.sh
@@ -17,7 +17,7 @@
# Make sure that, if AC_CONFIG_AUX_DIR is not specified, Automake tries
# to use '.', '..' and '../..', in precisely that order.
-. ./defs || exit 1
+. test-init.sh
nil=__no_such_program
diff --git a/t/auxdir-computed.tap b/t/auxdir-computed.tap
index 95d1003a1..324d8256f 100755
--- a/t/auxdir-computed.tap
+++ b/t/auxdir-computed.tap
@@ -17,7 +17,7 @@
# It should be possible to use a computed auxdir. This might seem
# bizarre, but it is actually used in multilib builds.
-. ./defs || exit 1
+. test-init.sh
plan_ 3
diff --git a/t/auxdir-misplaced.sh b/t/auxdir-misplaced.sh
index 87259b297..98e059173 100755
--- a/t/auxdir-misplaced.sh
+++ b/t/auxdir-misplaced.sh
@@ -16,7 +16,7 @@
# Test to make sure we diagnose misplaced AC_CONFIG_AUX_DIR.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_AUX_DIR([.]) dnl this will appear after AM_INIT_AUTOMAKE
diff --git a/t/auxdir-nonexistent.sh b/t/auxdir-nonexistent.sh
index 43eeed2ce..82c46b01c 100755
--- a/t/auxdir-nonexistent.sh
+++ b/t/auxdir-nonexistent.sh
@@ -16,7 +16,7 @@
# Make sure we diagnose non-existent AC_CONFIG_AUX_DIR names.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/auxdir-unportable.tap b/t/auxdir-unportable.tap
index 8f06999fc..c68740608 100755
--- a/t/auxdir-unportable.tap
+++ b/t/auxdir-unportable.tap
@@ -16,7 +16,7 @@
# Make sure we diagnose unportable AC_CONFIG_AUX_DIR names.
-. ./defs || exit 1
+. test-init.sh
plan_ 4
diff --git a/t/auxdir.sh b/t/auxdir.sh
index c7f7d7320..ea16e44f4 100755
--- a/t/auxdir.sh
+++ b/t/auxdir.sh
@@ -16,7 +16,7 @@
# Test to make sure AC_CONFIG_AUX_DIR works correctly.
-. ./defs || exit 1
+. test-init.sh
# The "./." is here so we don't have to mess with subdirs.
cat > configure.ac <<END
diff --git a/t/auxdir6.sh b/t/auxdir6.sh
index b07cd13a3..2f81b83f9 100755
--- a/t/auxdir6.sh
+++ b/t/auxdir6.sh
@@ -20,7 +20,7 @@
# config auxdir.
# Keep this in sync with sister tests 'auxdir7.sh' and 'auxdir8.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/auxdir7.sh b/t/auxdir7.sh
index 2c82bcbde..ed4cb1e30 100755
--- a/t/auxdir7.sh
+++ b/t/auxdir7.sh
@@ -19,7 +19,7 @@
# making the top-level directory the config auxdir.
# Keep this in sync with sister tests 'auxdir6.sh' and 'auxdir8.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/auxdir8.sh b/t/auxdir8.sh
index c4043293c..55c0afd94 100755
--- a/t/auxdir8.sh
+++ b/t/auxdir8.sh
@@ -21,7 +21,7 @@
# directory.
# Keep this in sync with sister tests 'auxdir6.sh' and 'auxdir7.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([subdir/Makefile])
diff --git a/t/ax/am-test-lib.sh b/t/ax/am-test-lib.sh
index 5725f28c4..6d7c69b04 100644
--- a/t/ax/am-test-lib.sh
+++ b/t/ax/am-test-lib.sh
@@ -675,13 +675,6 @@ require_tool ()
makedepend -f- \
|| skip_all_ "required program 'makedepend' not available"
;;
- makeinfo-html)
- # Make sure we have makeinfo, and it understands '--html'.
- echo "$me: running makeinfo --html --version"
- makeinfo --html --version \
- || skip_all_ "cannot find a makeinfo program that groks" \
- "the '--html' option"
- ;;
mingw)
uname_s=$(uname -s || echo UNKNOWN)
echo "$me: system name: $uname_s"
@@ -756,12 +749,6 @@ require_tool ()
skip_all_ "TeX is required, but it wasn't found by configure"
fi
;;
- texi2dvi-o)
- # Texi2dvi supports '-o' since Texinfo 4.1.
- echo "$me: running texi2dvi -o /dev/null --version"
- texi2dvi -o /dev/null --version \
- || skip_all_ "required program 'texi2dvi' not available"
- ;;
lex)
test x"$LEX" = x"false" && skip_all_ "lex not found or disabled"
export LEX
@@ -843,9 +830,9 @@ am_setup_testdir ()
{
echo "AC_INIT([$me], [1.0])"
if test x"$am_serial_tests" = x"yes"; then
- echo "AM_INIT_AUTOMAKE"
+ echo "AM_INIT_AUTOMAKE([serial-tests])"
else
- echo "AM_INIT_AUTOMAKE([parallel-tests])"
+ echo "AM_INIT_AUTOMAKE"
fi
echo "AC_CONFIG_FILES([Makefile])"
} >configure.ac || framework_failure_ "creating configure.ac skeleton"
diff --git a/t/ax/depcomp.sh b/t/ax/depcomp.sh
index f8e372f16..4094a37eb 100644
--- a/t/ax/depcomp.sh
+++ b/t/ax/depcomp.sh
@@ -67,7 +67,7 @@
# -------------------------------------------------------------------------
-# This expects ./defs has already been included has already been included..
+# This code expects test-init.sh has already been included in advance.
ocwd=$(pwd) || fatal_ "getting current working directory"
longpath=this-is/a-path/which-has/quite-a/definitely/truly/long_long_name
diff --git a/t/ax/extract-testsuite-summary.pl b/t/ax/extract-testsuite-summary.pl
index 28a9c3560..a8b634373 100644
--- a/t/ax/extract-testsuite-summary.pl
+++ b/t/ax/extract-testsuite-summary.pl
@@ -1,6 +1,6 @@
#! /usr/bin/env perl
-# Extract the testsuite summary generated by the parallel-tests harness
-# from the output of "make check".
+# Extract the testsuite summary generated by the parallel testsuite
+# harness from the output of "make check".
# Copyright (C) 2012 Free Software Foundation, Inc.
diff --git a/t/ax/tap-setup.sh b/t/ax/tap-setup.sh
index 952a49dfa..bd7efe303 100644
--- a/t/ax/tap-setup.sh
+++ b/t/ax/tap-setup.sh
@@ -22,7 +22,7 @@
# Check that we are running from a proper directory: last thing we want
# is to overwrite some random user files.
-test -f ../../automake && test -f ../../defs && test -d ../../t \
+test -f ../../automake && test -f ../../runtest && test -d ../../t \
|| fatal_ "running from a wrong directory"
test ! -f Makefile.am || mv Makefile.am Makefile.am~ \
diff --git a/t/ax/tap-summary-aux.sh b/t/ax/tap-summary-aux.sh
index 3918830a6..d86981fde 100644
--- a/t/ax/tap-summary-aux.sh
+++ b/t/ax/tap-summary-aux.sh
@@ -16,7 +16,7 @@
# Auxiliary script for tests on TAP support: checking testsuite summary.
-. ./defs || exit 1
+. test-init.sh
br='============================================================================'
@@ -29,7 +29,7 @@ fetch_tap_driver
cat > configure.ac <<END
AC_INIT([GNU AutoTAP], [5.12], [bug-automake@gnu.org])
-AM_INIT_AUTOMAKE([parallel-tests])
+AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
END
@@ -89,7 +89,6 @@ if test $use_colors = yes; then
mgn="$esc[0;35m"
brg="$esc[1m"
std="$esc[m"
- echo AUTOMAKE_OPTIONS = color-tests >> Makefile.am
else
red= grn= lgn= blu= mgn= brg= std=
fi
diff --git a/t/ax/testsuite-summary-checks.sh b/t/ax/testsuite-summary-checks.sh
index fd74a7f7f..647870529 100644
--- a/t/ax/testsuite-summary-checks.sh
+++ b/t/ax/testsuite-summary-checks.sh
@@ -14,13 +14,13 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check the testsuite summary with the parallel-tests harness. This
+# Check the testsuite summary with the parallel test harness. This
# script is meant to be sourced by other test script, so that it can
# be used to check different scenarios (colorized and non-colorized
# testsuite output, packages with and without bug-report addresses,
# testsuites in subdirectories, ...)
-. ./defs || exit 1
+. test-init.sh
case $use_colors in
yes)
@@ -28,10 +28,8 @@ case $use_colors in
# Forced colorization should take place also with non-ANSI
# terminals; hence this setting.
TERM=dumb; export TERM
- am_opts='parallel-tests color-tests'
;;
no)
- am_opts='parallel-tests'
;;
*)
fatal_ "invalid use_colors='$use_colors'";;
@@ -39,7 +37,7 @@ esac
cat > configure.ac <<END
AC_INIT([GNU AutoFoo], [7.1], [bug-automake@gnu.org])
-AM_INIT_AUTOMAKE([$am_opts])
+AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
END
diff --git a/t/backcompat4.sh b/t/backcompat-acout.sh
index f2e552bf5..c483be504 100755
--- a/t/backcompat4.sh
+++ b/t/backcompat-acout.sh
@@ -16,7 +16,7 @@
# Backward-compatibility: AC_OUTPUT with arguments.
-. ./defs || exit 1
+. test-init.sh
mkdir sub
: > Makefile.am
diff --git a/t/backcompat.sh b/t/backcompat.sh
index 214515d17..ee7906ea8 100755
--- a/t/backcompat.sh
+++ b/t/backcompat.sh
@@ -17,7 +17,7 @@
# Test usage of AM_INIT_AUTOMAKE with two or three arguments, for
# backward-compatibility.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<'END'
.PHONY: test display
diff --git a/t/backcompat2.sh b/t/backcompat2.sh
index 109483b47..fe3bb07cd 100755
--- a/t/backcompat2.sh
+++ b/t/backcompat2.sh
@@ -19,7 +19,7 @@
# third argument is empty or non-existent.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
# A trick to make the test run muuuch faster, by avoiding repeated
# runs of aclocal (one order of magnitude improvement in speed!).
diff --git a/t/backcompat3.sh b/t/backcompat3.sh
index f25bd57c0..b245e36fc 100755
--- a/t/backcompat3.sh
+++ b/t/backcompat3.sh
@@ -18,7 +18,7 @@
# AM_INIT_AUTOMAKE are both given two or more arguments.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
empty=''
@@ -76,15 +76,8 @@ diff exp got
### Run 2 ###
cat > configure.ac <<'END'
-dnl: 'AC_INIT' in Autoconf <= 2.63 doesn't have an URL argument.
-dnl: Luckily, 'AC_AUTOCONF_VERSION' and 'm4_version_prereq' are
-dnl: both present in autoconf 2.62, which we require; so that we
-dnl: can at least use the following workaround.
-m4_version_prereq([2.64],
- [AC_INIT([ac_name], [ac_version], [ac_bugreport], [ac_tarname],
- [ac_url])],
- [AC_INIT([ac_name], [ac_version], [ac_bugreport], [ac_tarname])
- AC_SUBST([PACKAGE_URL], [ac_url])])
+AC_INIT([ac_name], [ac_version], [ac_bugreport], [ac_tarname],
+ [ac_url])],
AM_INIT_AUTOMAKE([am_name], [am_version])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
diff --git a/t/backcompat5.sh b/t/backcompat5.sh
deleted file mode 100755
index caeac07cf..000000000
--- a/t/backcompat5.sh
+++ /dev/null
@@ -1,126 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Backward-compatibility test: try to build and distribute a package
-# using obsoleted forms of AC_INIT, AM_INIT_AUTOMAKE and AC_OUTPUT,
-# and configure.in as autoconf input file.
-# This script can also serve as mild stress-testing for Automake.
-# See also the similar test 'backcompat6.sh'.
-
-am_serial_tests=yes
-am_create_testdir=empty
-. ./defs || exit 1
-
-makefiles='hacky/Makefile src/Makefile data/Makefile tests/Makefile'
-
-# Yuck!
-cat > configure.in <<END
-dnl: Everything here is *deliberately* underquoted!
-AC_INIT(src/foo.input)
-AM_INIT_AUTOMAKE(foo, 1.0)
-AC_CONFIG_FILES(Makefile:mkfile.in)
-AC_OUTPUT($makefiles)
-END
-
-distdir=foo-1.0
-
-cat > mkfile.am <<'END'
-SUBDIRS = src data tests hacky
-installcheck-local:
- grep DataDataData $(DESTDIR)$(prefix)/data/$(PACKAGE)-$(VERSION)/bar
-END
-
-mkdir hacky src tests data
-
-echo 'This is a dummy package' > README
-
-cat > src/foo.input <<'END'
-#!sh
-echo Zardoz
-END
-
-cat > tests/a.test <<'END'
-#!/bin/sh
-"$srcdir/../src/foo" | grep Zardoz
-END
-chmod a+x tests/a.test
-
-cat > data/bar <<'END'
-line1
-line2
-line3
-END
-
-cat >hacky/Makefile.am <<'END'
-dist-hook:
- find $(top_distdir) -print
- chmod a+rx $(top_distdir)/tests/*.test
-END
-
-cat > src/Makefile.am <<'END'
-dist_bin_SCRIPTS = foo
-foo: foo.input
- sed '1s,^#!.*$$,#!/bin/sh,' $(srcdir)/foo.input >$@
- chmod a+x $@
-EXTRA_DIST = foo.input
-DISTCLEANFILES = foo
-END
-
-cat > data/Makefile.am <<'END'
-nodist_data_DATA = bar
-datadir = $(prefix)/data/$(PACKAGE)-$(VERSION)
-bar:
- echo DataDataData >$@
-distclean-local:
- rm -f bar
-END
-
-cat > tests/Makefile.am <<'END'
-TESTS = a.test
-EXTRA_DIST = $(TESTS)
-END
-
-$ACLOCAL -Wno-obsolete
-$AUTOCONF
-$AUTOMAKE -a -Wno-obsolete
-test -f install-sh
-for f in $makefiles; do mv -f $f.in $f.sav; done
-$AUTOMAKE -Wno-obsolete
-for f in $makefiles; do diff $f.sav $f.in; done
-
-./configure
-ls -l . hacky src data tests # For debugging.
-test ! -e mkfile
-$MAKE
-$MAKE distdir
-test ! -e $distdir/Makefile.in
-test ! -e $distdir/data/bar
-test -f $distdir/src/foo
-diff README $distdir/README
-diff mkfile.in $distdir/mkfile.in
-diff tests/a.test $distdir/tests/a.test
-diff src/foo.input $distdir/src/foo.input
-
-$MAKE check
-$MAKE distcheck
-
-test -f $distdir.tar.gz
-
-chmod a-x tests/a.test
-# dist-hook should take care of making test files executables.
-$MAKE distcheck
-
-:
diff --git a/t/backcompat6.sh b/t/backcompat6.sh
index ee86e3644..b99321a72 100755
--- a/t/backcompat6.sh
+++ b/t/backcompat6.sh
@@ -18,15 +18,15 @@
# using obsoleted forms of AC_INIT, AM_INIT_AUTOMAKE and AC_OUTPUT,
# and 'configure.in' as autconf input file.
# This script can also serve as mild stress-testing for Automake.
-# See also the similar test 'backcompat5.sh'.
+# See also the similar test 'backcompat5.test'.
required=cc
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
# Anyone doing something like this in a real-life package probably
# deserves to be killed.
-cat > configure.in <<'END'
+cat > configure.ac <<'END'
dnl: Everything here is *deliberately* underquoted!
AC_INIT(quux.c)
PACKAGE=nonesuch-zardoz
@@ -98,7 +98,7 @@ $MAKE check
distdir=nonesuch-zardoz-nonesuch-0.1
$MAKE distdir
test -f $distdir/quux.c
-test ! -e $distdir/foo.got
+test ! -f $distdir/foo.got
$MAKE distcheck
diff --git a/t/backsl.sh b/t/backsl.sh
index fb34ee169..a781e8010 100755
--- a/t/backsl.sh
+++ b/t/backsl.sh
@@ -16,7 +16,7 @@
# Test for "\" problems. Bug report from Joerg-Martin Schwarz.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/backsl2.sh b/t/backsl2.sh
index 5d9d6d158..10046f927 100755
--- a/t/backsl2.sh
+++ b/t/backsl2.sh
@@ -17,7 +17,7 @@
# We must skip the backslash, not complain about './\' not existing.
# Reported by Rick Scott <rwscott@omnisig.com>
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUBDIRS = \
diff --git a/t/backsl3.sh b/t/backsl3.sh
index 7891753f2..b17631db0 100755
--- a/t/backsl3.sh
+++ b/t/backsl3.sh
@@ -17,7 +17,7 @@
# Make sure we diagnose trailing backslash at the end of a file.
# Report from Akim Demaile <akim@epita.fr>.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
foo = \
diff --git a/t/backsl4.sh b/t/backsl4.sh
index 707d35860..7ac4c860d 100755
--- a/t/backsl4.sh
+++ b/t/backsl4.sh
@@ -17,7 +17,7 @@
# Make sure we diagnose and fix white spaces following backslash.
# Report from Peter Muir.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >>configure.ac
diff --git a/t/badline.sh b/t/badline.sh
index 3d714250a..e6eb5c80e 100755
--- a/t/badline.sh
+++ b/t/badline.sh
@@ -17,7 +17,7 @@
# Test to make sure that line number and file name in error message
# referring to variable is always correct.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/badopt.sh b/t/badopt.sh
index b548a4f53..927a10deb 100755
--- a/t/badopt.sh
+++ b/t/badopt.sh
@@ -16,7 +16,7 @@
# Test to make sure bad options cause error.
-. ./defs || exit 1
+. test-init.sh
echo 'AUTOMAKE_OPTIONS = zardoz' > Makefile.am
diff --git a/t/badprog.sh b/t/badprog.sh
index 6134e3e57..e8df06a3b 100755
--- a/t/badprog.sh
+++ b/t/badprog.sh
@@ -17,7 +17,7 @@
# Test to make sure that programs with bad names are properly
# transformed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/block.sh b/t/block.sh
index 7cdb5ff27..a50b9d3e7 100755
--- a/t/block.sh
+++ b/t/block.sh
@@ -17,7 +17,7 @@
# Make sure block comments are not double-spaced.
# Report from François Pinard.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
#START
diff --git a/t/built-sources-check.sh b/t/built-sources-check.sh
index d4d3c51e2..3e0204c88 100755
--- a/t/built-sources-check.sh
+++ b/t/built-sources-check.sh
@@ -18,7 +18,7 @@
# PR/359.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([dir/Makefile])
diff --git a/t/built-sources-cond.sh b/t/built-sources-cond.sh
index ac78a9756..a09334ff4 100755
--- a/t/built-sources-cond.sh
+++ b/t/built-sources-cond.sh
@@ -16,7 +16,7 @@
# Interaction of BUILT_SOURCES with conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AM_CONDITIONAL([COND1], [test $cond1 = yes])
diff --git a/t/built-sources-fork-bomb.sh b/t/built-sources-fork-bomb.sh
index fac37505f..bfb1b4283 100755
--- a/t/built-sources-fork-bomb.sh
+++ b/t/built-sources-fork-bomb.sh
@@ -24,7 +24,7 @@
# Backported to improve coverage of mainline Automake.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/built-sources-install.sh b/t/built-sources-install.sh
index 2f53bb51e..e1c0bbc07 100755
--- a/t/built-sources-install.sh
+++ b/t/built-sources-install.sh
@@ -17,7 +17,7 @@
# Make sure 'install:' honors $(BUILT_SOURCES).
# PR/359.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([dir/Makefile])
diff --git a/t/built-sources-subdir.sh b/t/built-sources-subdir.sh
index cc162bb99..b1c7764ca 100755
--- a/t/built-sources-subdir.sh
+++ b/t/built-sources-subdir.sh
@@ -19,7 +19,7 @@
# all-recursive-am which depended on BUILT_SOURCES.
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir lib
diff --git a/t/built-sources.sh b/t/built-sources.sh
index 517313660..2f960b0aa 100755
--- a/t/built-sources.sh
+++ b/t/built-sources.sh
@@ -17,7 +17,7 @@
# Basic test on BUILT_SOURCES.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/candist.sh b/t/candist.sh
index d87836a97..4c8416410 100755
--- a/t/candist.sh
+++ b/t/candist.sh
@@ -16,7 +16,7 @@
# Test to make sure things that cannot be dist_'ed are diagnosed.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >>configure.ac
diff --git a/t/canon-name.sh b/t/canon-name.sh
index 59f8d8dbe..460fb8938 100755
--- a/t/canon-name.sh
+++ b/t/canon-name.sh
@@ -17,7 +17,7 @@
# PR 511: Make sure we warn about e.g. AC_CONFIG_FILES([./gmakefile]),
# as not all make implementations treat 'file' and './file' equally.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/canon.sh b/t/canon.sh
index 8b3c75633..5b229489c 100755
--- a/t/canon.sh
+++ b/t/canon.sh
@@ -16,7 +16,7 @@
# Test to make sure that name canonicalization error works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/canon2.sh b/t/canon2.sh
index d9869e8a3..f79c2a563 100755
--- a/t/canon2.sh
+++ b/t/canon2.sh
@@ -16,7 +16,7 @@
# Test to make sure name canonicalization happens for texinfo.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = zar-doz.texi
diff --git a/t/canon3.sh b/t/canon3.sh
index 4a95cb5d3..2efdd4c9c 100755
--- a/t/canon3.sh
+++ b/t/canon3.sh
@@ -16,7 +16,7 @@
# Yet another canonicalization test.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/canon4.sh b/t/canon4.sh
index c79b15141..eea87aa94 100755
--- a/t/canon4.sh
+++ b/t/canon4.sh
@@ -17,7 +17,7 @@
# Test to make sure name canonicalization happens for static libraries.
# Keep this in sync with sister test 'canon6.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/canon5.sh b/t/canon5.sh
index 124da0211..dd66ec025 100755
--- a/t/canon5.sh
+++ b/t/canon5.sh
@@ -17,7 +17,7 @@
# Test to make sure that we allow variable names starting in
# non-letters. Whatever that might mean.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/canon6.sh b/t/canon6.sh
index 9c7fd94bf..aa1be20ec 100755
--- a/t/canon6.sh
+++ b/t/canon6.sh
@@ -18,7 +18,7 @@
# Keep this in sync with sister test 'canon4.sh'.
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/canon7.sh b/t/canon7.sh
index 8ffeffbf8..853db0a75 100755
--- a/t/canon7.sh
+++ b/t/canon7.sh
@@ -17,7 +17,7 @@
# Stress test on canonicalization.
required='cc libtool libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/canon8.sh b/t/canon8.sh
index bb5e7f932..4c29f6db2 100755
--- a/t/canon8.sh
+++ b/t/canon8.sh
@@ -16,7 +16,7 @@
# Check that canonicalization does not transliterate the '@' charactrer.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ccnoco.sh b/t/ccnoco.sh
index 2e5bd4fb0..960860c61 100755
--- a/t/ccnoco.sh
+++ b/t/ccnoco.sh
@@ -18,7 +18,7 @@
# understand '-c -o'.
required=gcc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
@@ -53,7 +53,8 @@ case " \$* " in
;;
esac
-# Use '$CC', not 'gcc', to honour the compiler chosen by 't/defs'.
+# Use '$CC', not 'gcc', to honour the compiler chosen
+# by the testsuite setup.
exec $CC "\$@"
END
diff --git a/t/ccnoco2.sh b/t/ccnoco2.sh
index dcb6fa70d..523018224 100755
--- a/t/ccnoco2.sh
+++ b/t/ccnoco2.sh
@@ -17,7 +17,7 @@
# Make sure Automake requires AM_PROG_CC_C_O when either per-targets
# flags or subdir-objects are used.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CC
diff --git a/t/ccnoco3.sh b/t/ccnoco3.sh
index ff773f4ca..417f0c136 100755
--- a/t/ccnoco3.sh
+++ b/t/ccnoco3.sh
@@ -17,7 +17,7 @@
# Test to make sure 'compile' doesn't call 'mv SRC SRC'.
required=gcc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
@@ -52,7 +52,8 @@ case " \$* " in
;;
esac
-# Use '$CC', not 'gcc', to honour the compiler chosen by 't/defs'.
+# Use '$CC', not 'gcc', to honour the compiler chosen
+# by the testsuite setup.
exec $CC "\$@"
END
diff --git a/t/check-concurrency-bug9245.sh b/t/check-concurrency-bug9245.sh
index 79e8ffcf9..ac0e66b91 100755
--- a/t/check-concurrency-bug9245.sh
+++ b/t/check-concurrency-bug9245.sh
@@ -18,7 +18,7 @@
# even when the Automake-generated parallel testsuite harness failed.
# See automake bug#9245.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/check-exported-srcdir.sh b/t/check-exported-srcdir.sh
index baa8c4003..26d481ff2 100755
--- a/t/check-exported-srcdir.sh
+++ b/t/check-exported-srcdir.sh
@@ -15,11 +15,11 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Check that the testsuite driver (either with or without the
-# parallel-tests option enabled) exports the 'srcdir' value in the
+# serial-tests option enabled) exports the 'srcdir' value in the
# environment of the tests. This is documented in the manual.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
show_info ()
{
diff --git a/t/check-fd-redirect.sh b/t/check-fd-redirect.sh
index a11d0cdf8..3eeb52c3f 100755
--- a/t/check-fd-redirect.sh
+++ b/t/check-fd-redirect.sh
@@ -19,7 +19,7 @@
# See also related test 'parallel-tests-fd-redirect.sh'.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/check-no-test-driver.sh b/t/check-no-test-driver.sh
index 7df5251f8..9632e8e8d 100755
--- a/t/check-no-test-driver.sh
+++ b/t/check-no-test-driver.sh
@@ -15,13 +15,15 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Check that auxiliary script 'test-driver' doesn't get needlessly
-# installed or referenced when the 'parallel-tests' option is not
-# used.
+# installed or referenced when the 'serial-tests' option is used.
am_serial_tests=yes
-. ./defs || exit 1
+. test-init.sh
-echo 'TESTS = foo.test' > Makefile.am
+cat > Makefile.am <<'END'
+AUTOMAKE_OPTIONS = serial-tests
+TESTS = foo.test
+END
$ACLOCAL
diff --git a/t/check-subst-prog.sh b/t/check-subst-prog.sh
index 77538cd9e..5400220b0 100755
--- a/t/check-subst-prog.sh
+++ b/t/check-subst-prog.sh
@@ -19,7 +19,7 @@
# For gen-testsuite-part: ==> try-with-serial-tests <==
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/check-subst.sh b/t/check-subst.sh
index b84762ed7..47d635922 100755
--- a/t/check-subst.sh
+++ b/t/check-subst.sh
@@ -16,11 +16,11 @@
# Check @substituted@ TESTS.
# Note that in this test, we rely on the .test extension for the
-# substituted names: this is necessary for parallel-tests.
+# substituted names: this is necessary for the parallel harness.
# See also sister test 'check-subst-prog.sh'.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([script_tests], ['subst-pass-script.sh subst-xfail-script.sh'])
diff --git a/t/check-tests-in-builddir.sh b/t/check-tests-in-builddir.sh
index de453d222..2421b2a9b 100755
--- a/t/check-tests-in-builddir.sh
+++ b/t/check-tests-in-builddir.sh
@@ -18,7 +18,7 @@
# well as in builddir, and that is prefers those in the builddir.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
@@ -54,8 +54,8 @@ chmod a+x bar.test
$MAKE check >out 2>&1 || { cat out; exit 1; }
cat out
-# The simple-tests driver does not strip VPATH components from
-# the name of the test, but the parallel-tests driver should.
+# The serial test driver does not strip VPATH components from
+# the name of the test, but the parallel driver should.
if test x"$am_serial_tests" = x"yes"; then
grep '^PASS: .*foo\.test *$' out
else
@@ -68,8 +68,8 @@ rm -f test-suite.log foo.log bar.log
FOO_EXIT_STATUS=1 $MAKE check >out 2>&1 && { cat out; exit 1; }
cat out
-# The simple-tests driver does not strip VPATH components from
-# the name of the test, but the parallel-tests driver should.
+# The serial test driver does not strip VPATH components from
+# the name of the test, but the parallel driver should.
if test x"$am_serial_tests" = x"yes"; then
grep '^FAIL: .*foo\.test *$' out
else
diff --git a/t/check.sh b/t/check.sh
index 1717e3b05..74fdaa3dd 100755
--- a/t/check.sh
+++ b/t/check.sh
@@ -17,7 +17,7 @@
# Test Automake style tests.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TESTS = frob.test
diff --git a/t/check10.sh b/t/check10.sh
index e76773c16..1751b60c3 100755
--- a/t/check10.sh
+++ b/t/check10.sh
@@ -18,7 +18,7 @@
# This test only makes sense for the older serial testsuite driver.
am_serial_tests=yes
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/check11.sh b/t/check11.sh
index 2fa489a44..90a5676d7 100755
--- a/t/check11.sh
+++ b/t/check11.sh
@@ -17,7 +17,7 @@
# Check skip summary.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/check12.sh b/t/check12.sh
index 53cc4e626..0294d2571 100755
--- a/t/check12.sh
+++ b/t/check12.sh
@@ -19,7 +19,7 @@
# For gen-testsuite-part: ==> try-with-serial-tests <==
required=runtest
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/check2.sh b/t/check2.sh
index 2332fd607..8b7902421 100755
--- a/t/check2.sh
+++ b/t/check2.sh
@@ -17,7 +17,7 @@
# Test Automake style tests.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([dir/Makefile])
diff --git a/t/check4.sh b/t/check4.sh
index 946290f34..f351c0cce 100755
--- a/t/check4.sh
+++ b/t/check4.sh
@@ -17,7 +17,7 @@
# Make sure 'make -k check' processes all directories.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([dir/Makefile])
diff --git a/t/check5.sh b/t/check5.sh
index 50113b96a..2f57e56b6 100755
--- a/t/check5.sh
+++ b/t/check5.sh
@@ -18,7 +18,7 @@
# For gen-testsuite-part: ==> try-with-serial-tests <==
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/check6.sh b/t/check6.sh
index d885713e8..d0965b1ca 100755
--- a/t/check6.sh
+++ b/t/check6.sh
@@ -18,7 +18,7 @@
# Also test that Solaris make VPATH rewriting is honored
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/check7.sh b/t/check7.sh
index e77249fd0..52a52bcc8 100755
--- a/t/check7.sh
+++ b/t/check7.sh
@@ -18,7 +18,7 @@
# For gen-testsuite-part: ==> try-with-serial-tests <==
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/check8.sh b/t/check8.sh
index b968c3a0d..9651c0d44 100755
--- a/t/check8.sh
+++ b/t/check8.sh
@@ -18,7 +18,7 @@
# For gen-testsuite-part: ==> try-with-serial-tests <==
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
@@ -75,7 +75,7 @@ grep '^[^X]*PASS.* bar' stdout
grep '^[^X]*PASS.* sub/bar' stdout
grep '^[^X]*FAIL.* baz' stdout
grep 'XFAIL.* sub/baz' stdout
-# 'parallel-tests' should not add circular dependencies.
+# The parallel test driver should cause circular dependencies.
# Look for known warnings from a couple of 'make' implementations.
grep -i 'circular.*dependency' stderr && exit 1
grep -i 'graph cycles' stderr && exit 1
diff --git a/t/checkall.sh b/t/checkall.sh
index 43205745e..d030738ac 100755
--- a/t/checkall.sh
+++ b/t/checkall.sh
@@ -16,7 +16,7 @@
# Test for bug where check target doesn't depend on all.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_SCRIPTS = derived
diff --git a/t/clean.sh b/t/clean.sh
index 80f56df03..683629c3e 100755
--- a/t/clean.sh
+++ b/t/clean.sh
@@ -16,7 +16,7 @@
# Test to make sure a clean target depends on previous one.
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/colneq.sh b/t/colneq.sh
index 6df427f30..1db536ab7 100755
--- a/t/colneq.sh
+++ b/t/colneq.sh
@@ -16,7 +16,7 @@
# Test that := definitions produce warnings, but otherwise work.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
ICONS := $(wildcard *.xbm)
diff --git a/t/colneq2.sh b/t/colneq2.sh
index 124b6d282..7d5d121f0 100755
--- a/t/colneq2.sh
+++ b/t/colneq2.sh
@@ -16,7 +16,7 @@
# Test that := in var substitutions works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/colneq3.sh b/t/colneq3.sh
index 4211131c7..dd1adaa43 100755
--- a/t/colneq3.sh
+++ b/t/colneq3.sh
@@ -17,7 +17,7 @@
# Test that := definitions work as expected at make time.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/colon.sh b/t/colon.sh
index f3e95a6e3..33cf35b19 100755
--- a/t/colon.sh
+++ b/t/colon.sh
@@ -17,7 +17,7 @@
# Test for bug reported by Nyul Laszlo. When using the ":" syntax in
# AC_OUTPUT, Automake fails to find the correct file.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_FILES([foo.h:foo.hin])
diff --git a/t/colon2.sh b/t/colon2.sh
index febf20a29..fde35239f 100755
--- a/t/colon2.sh
+++ b/t/colon2.sh
@@ -17,7 +17,7 @@
# Make sure ":" works with files automake generates.
# See also sister test 'colon3.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/colon3.sh b/t/colon3.sh
index e594d6fb4..49a619161 100755
--- a/t/colon3.sh
+++ b/t/colon3.sh
@@ -18,7 +18,7 @@
# This test is for multiple ":"s.
# See also sister test 'colon2.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/colon4.sh b/t/colon4.sh
index 34f0571d2..fa4b67574 100755
--- a/t/colon4.sh
+++ b/t/colon4.sh
@@ -18,7 +18,7 @@
# rebuild rules.
# Test from Maciej W. Rozycki.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_CONFIG_FILES([zardoz:one:two:three])
diff --git a/t/colon5.sh b/t/colon5.sh
index c600679bd..2b7d55b07 100755
--- a/t/colon5.sh
+++ b/t/colon5.sh
@@ -16,7 +16,7 @@
# Another multi-":" test, this time from Doug Evans.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/colon6.sh b/t/colon6.sh
index d89deaa9d..8bfb14604 100755
--- a/t/colon6.sh
+++ b/t/colon6.sh
@@ -16,7 +16,7 @@
# Yet another multi-":" test, this time from Ken Pizzini.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/colon7.sh b/t/colon7.sh
index 51607c63e..b2183d709 100755
--- a/t/colon7.sh
+++ b/t/colon7.sh
@@ -17,7 +17,7 @@
# Another test for a failing ":" in AC_OUTPUT.
# Report from Maciej Stachowiak.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([colon7], [1.0])
diff --git a/t/version.sh b/t/color-tests-opt.sh
index acfbbe6eb..ac26ab7a9 100755
--- a/t/version.sh
+++ b/t/color-tests-opt.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+# Copyright (C) 2007-2012 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
@@ -14,28 +14,26 @@
# 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 to make sure [...] is ok in version number. Report from Jim
-# Meyering.
+# Check that the 'color-tests' option, now active by default, is
+# nonetheless still silently accepted, for backward compatibility.
-. ./defs || exit 1
+. test-init.sh
-cat > configure.ac << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE([sh-utils], [1.12o])
+cat >configure.ac <<END
+AC_INIT([$me], [1.0])
+AM_INIT_AUTOMAKE([color-tests])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
END
-: > Makefile.am
+cat >Makefile.am <<END
+AUTOMAKE_OPTIONS = color-tests
+TESTS = foo.test
+END
-# Files required by Gnits.
-: > INSTALL
-: > NEWS
-: > README
-: > COPYING
-: > AUTHORS
-: > ChangeLog
-: > THANKS
+: > test-driver
$ACLOCAL
-$AUTOMAKE --gnits -Wno-obsolete
+$AUTOMAKE
+
+:
diff --git a/t/color.sh b/t/color-tests.sh
index 97063d711..b90446e4b 100755
--- a/t/color.sh
+++ b/t/color-tests.sh
@@ -19,7 +19,7 @@
required='grep-nonprint'
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
# Escape '[' for grep, below.
red="$esc\[0;31m"
@@ -34,7 +34,6 @@ AC_OUTPUT
END
cat >Makefile.am <<'END'
-AUTOMAKE_OPTIONS = color-tests
TESTS = $(check_SCRIPTS)
check_SCRIPTS = pass fail skip xpass xfail error
XFAIL_TESTS = xpass xfail
diff --git a/t/color2.sh b/t/color-tests2.sh
index 96b644735..174d734e1 100755
--- a/t/color2.sh
+++ b/t/color-tests2.sh
@@ -19,7 +19,7 @@
required='grep-nonprint'
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
# Escape '[' for grep, below.
red="$esc\[0;31m"
@@ -58,12 +58,14 @@ rm -f expect-check Makefile
# Do the tests.
-cat >>configure.ac <<END
+cat >>configure.ac << 'END'
+if $testsuite_colorized; then :; else
+ AC_SUBST([AM_COLOR_TESTS], [no])
+fi
AC_OUTPUT
END
cat >Makefile.am <<'END'
-AUTOMAKE_OPTIONS = color-tests
TESTS = $(check_SCRIPTS)
check_SCRIPTS = pass fail skip xpass xfail error
XFAIL_TESTS = xpass xfail
@@ -182,6 +184,18 @@ for vpath in false :; do
cat stdout
test_no_color
+ $srcdir/configure testsuite_colorized=false
+
+ TERM=ansi MAKE=$MAKE expect -f $srcdir/expect-make >stdout \
+ || { cat stdout; exit 1; }
+ cat stdout
+ test_no_color
+
+ TERM=ansi MAKE="env AM_COLOR_TESTS=always $MAKE" \
+ expect -f $srcdir/expect-make >stdout || { cat stdout; exit 1; }
+ cat stdout
+ test_color
+
$MAKE distclean
cd $srcdir
diff --git a/t/commen10.sh b/t/commen10.sh
index 1bc60f008..ea5144795 100755
--- a/t/commen10.sh
+++ b/t/commen10.sh
@@ -17,7 +17,7 @@
# Make sure comments following trailing backslashes are diagnosed.
# Report from Harald Dunkel.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUBDIRS = foo \
diff --git a/t/commen11.sh b/t/commen11.sh
index 139545d18..c7ea3120b 100755
--- a/t/commen11.sh
+++ b/t/commen11.sh
@@ -18,7 +18,7 @@
# comments following a trailing backslash, even when the combination
# follows a variable assignment that is preceded by a comment.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
# initial comment
diff --git a/t/comment.sh b/t/comment.sh
index 3508bed93..79f6cb614 100755
--- a/t/comment.sh
+++ b/t/comment.sh
@@ -17,7 +17,7 @@
# Make sure that '#' as start of word in AUTOMAKE_OPTIONS means
# comment.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = #no such option
diff --git a/t/comment2.sh b/t/comment2.sh
index 124e273d1..402296dea 100755
--- a/t/comment2.sh
+++ b/t/comment2.sh
@@ -17,7 +17,7 @@
# Make sure comment recognition works in PROGRAMS. Report from Mark
# Galassi.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/comment3.sh b/t/comment3.sh
index e1f15832c..b7a698bd4 100755
--- a/t/comment3.sh
+++ b/t/comment3.sh
@@ -19,7 +19,7 @@
# shell, which in turn can't find '#' as a command.
# Sigh. Some vendors must be destroyed.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
install-data-local:
diff --git a/t/comment4.sh b/t/comment4.sh
index 8a0ab4531..83413ec0a 100755
--- a/t/comment4.sh
+++ b/t/comment4.sh
@@ -16,7 +16,7 @@
# Make sure commented variables are output near their comments.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/comment5.sh b/t/comment5.sh
index 06478e0fa..fcf5650a2 100755
--- a/t/comment5.sh
+++ b/t/comment5.sh
@@ -17,7 +17,7 @@
# Test for PR/280.
# (Automake should complain about trailing backslashes in comments.)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/comment6.sh b/t/comment6.sh
index 496dfdd32..0a3a06666 100755
--- a/t/comment6.sh
+++ b/t/comment6.sh
@@ -18,7 +18,7 @@
# Automake 1.6.1 seems to have a problem parsing comments that use
# '\' to span multiple lines.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/comment7.sh b/t/comment7.sh
index a4f8d886e..26520e723 100755
--- a/t/comment7.sh
+++ b/t/comment7.sh
@@ -17,7 +17,7 @@
# Make sure comment for conditional variables are output near the
# corresponding conditional definitions.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AM_CONDITIONAL([COND], [true])
@@ -54,4 +54,4 @@ sed -n '/^#.*VAR.*COND_FALSE/ {
}' Makefile.in |
grep '@COND_FALSE@VAR = bar'
-:
+:
diff --git a/t/comment8.sh b/t/comment8.sh
index b4e871bf4..61f780a3a 100755
--- a/t/comment8.sh
+++ b/t/comment8.sh
@@ -17,7 +17,7 @@
# Make sure += does not append to a comment.
# Report from Stepan Kasal.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/comment9.sh b/t/comment9.sh
index 49a9f6f72..1c2551b1c 100755
--- a/t/comment9.sh
+++ b/t/comment9.sh
@@ -17,7 +17,7 @@
# Make sure ##-comments are ignored in variable definitions.
# Report from Julien Sopena.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
TESTS = \
diff --git a/t/comments-in-var-def.sh b/t/comments-in-var-def.sh
index dbb3b1412..dad568dcc 100755
--- a/t/comments-in-var-def.sh
+++ b/t/comments-in-var-def.sh
@@ -17,7 +17,7 @@
# Make sure Automake ignores in-line comments when using variables,
# but preserve them in the output.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/compile.sh b/t/compile.sh
index 1da1cde02..4e44206ca 100755
--- a/t/compile.sh
+++ b/t/compile.sh
@@ -17,7 +17,7 @@
# Make sure 'compile' preserves spaces in its arguments.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
get_shell_script compile
diff --git a/t/compile2.sh b/t/compile2.sh
index 5f38775ef..8c22ed54b 100755
--- a/t/compile2.sh
+++ b/t/compile2.sh
@@ -17,7 +17,7 @@
# Make sure 'compile' deals correctly with Windows-style paths.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
get_shell_script compile
diff --git a/t/compile3.sh b/t/compile3.sh
index e8bf8a439..db715b307 100755
--- a/t/compile3.sh
+++ b/t/compile3.sh
@@ -18,7 +18,7 @@
am_create_testdir=empty
required=xsi-lib-shell
-. ./defs || exit 1
+. test-init.sh
get_shell_script compile
diff --git a/t/compile4.sh b/t/compile4.sh
index e5b5c577c..80ce8610c 100755
--- a/t/compile4.sh
+++ b/t/compile4.sh
@@ -18,7 +18,7 @@
# with respect to absolute paths.
required='cl'
-. ./defs || exit 1
+. test-init.sh
get_shell_script compile
diff --git a/t/compile5.sh b/t/compile5.sh
index 89c5be30f..3661fb187 100755
--- a/t/compile5.sh
+++ b/t/compile5.sh
@@ -17,7 +17,7 @@
# Make sure the file name translation in the 'compile' script works
# correctly
-. ./defs || exit 1
+. test-init.sh
get_shell_script compile
diff --git a/t/compile6.sh b/t/compile6.sh
index 529f22c7d..c4fb22d50 100755
--- a/t/compile6.sh
+++ b/t/compile6.sh
@@ -18,7 +18,7 @@
am_create_testdir=empty
required=xsi-lib-shell
-. ./defs || exit 1
+. test-init.sh
get_shell_script compile
diff --git a/t/compile_f90_c_cxx.sh b/t/compile_f90_c_cxx.sh
index 27998dc4f..0bef8be70 100755
--- a/t/compile_f90_c_cxx.sh
+++ b/t/compile_f90_c_cxx.sh
@@ -18,7 +18,7 @@
# mixed source objects.
# (copied from compile_f_c_cxx.sh) Mike Nolta <mrnolta@princeton.edu>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/compile_f_c_cxx.sh b/t/compile_f_c_cxx.sh
index 97f8d8476..7c1a2a21e 100755
--- a/t/compile_f_c_cxx.sh
+++ b/t/compile_f_c_cxx.sh
@@ -18,7 +18,7 @@
# mixed source objects.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
@@ -39,8 +39,8 @@ $ACLOCAL
$AUTOMAKE
# Look for the macros at the beginning of rules.
-$FGREP "$tab\$(COMPILE)" Makefile.in
-$FGREP "$tab\$(CXXCOMPILE)" Makefile.in
-$FGREP "$tab\$(F77COMPILE)" Makefile.in
+$FGREP "$tab\$(AM_V_CC)\$(COMPILE)" Makefile.in
+$FGREP "$tab\$(AM_V_CXX)\$(CXXCOMPILE)" Makefile.in
+$FGREP "$tab\$(AM_V_F77)\$(F77COMPILE)" Makefile.in
:
diff --git a/t/cond-basic.sh b/t/cond-basic.sh
index 0b79032bf..f01c55820 100755
--- a/t/cond-basic.sh
+++ b/t/cond-basic.sh
@@ -16,7 +16,7 @@
# Check basic use of conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TEST], [true])
diff --git a/t/cond.sh b/t/cond.sh
index 04fb9faa8..2fd6a66a6 100755
--- a/t/cond.sh
+++ b/t/cond.sh
@@ -16,7 +16,7 @@
# Check basic use of conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TEST], [true])
diff --git a/t/cond10.sh b/t/cond10.sh
index a556a9996..89f026308 100755
--- a/t/cond10.sh
+++ b/t/cond10.sh
@@ -16,7 +16,7 @@
# Test for bug in conditionals. From Raja R Harinath.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond11.sh b/t/cond11.sh
index 95073d10e..c4beffc8a 100755
--- a/t/cond11.sh
+++ b/t/cond11.sh
@@ -18,7 +18,7 @@
# This checks that, if LDADD is set from a conditional variable
# and an AC_SUBST, the _DEPENDENCIES variable is set correctly.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([CC], [false])
diff --git a/t/cond13.sh b/t/cond13.sh
index c23df15cb..c522932ff 100755
--- a/t/cond13.sh
+++ b/t/cond13.sh
@@ -17,7 +17,7 @@
# Test for bug in conditionals.
# Report from Lars J. Aas.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond14.sh b/t/cond14.sh
index 345171e22..67aa62501 100755
--- a/t/cond14.sh
+++ b/t/cond14.sh
@@ -17,7 +17,7 @@
# Test for bug in conditionals.
# Report from Robert Boehne.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond15.sh b/t/cond15.sh
index 6ce37d74b..e21f72973 100755
--- a/t/cond15.sh
+++ b/t/cond15.sh
@@ -16,7 +16,7 @@
# Regression test for conditionally defined overriding of automatic rules.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond16.sh b/t/cond16.sh
index ded33700d..8e771e617 100755
--- a/t/cond16.sh
+++ b/t/cond16.sh
@@ -18,7 +18,7 @@
# references.
# Report from Richard Boulton.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/cond17.sh b/t/cond17.sh
index 837fa0255..6726d2eff 100755
--- a/t/cond17.sh
+++ b/t/cond17.sh
@@ -18,7 +18,7 @@
# according to a conditional.
# Report from Richard Boulton.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond18.sh b/t/cond18.sh
index 22bbfcfea..353cad6ec 100755
--- a/t/cond18.sh
+++ b/t/cond18.sh
@@ -17,7 +17,7 @@
# Regression test for substitution references to conditional variables.
# Report from Richard Boulton.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/cond19.sh b/t/cond19.sh
index b0dd05cf8..6187c4c9b 100755
--- a/t/cond19.sh
+++ b/t/cond19.sh
@@ -17,7 +17,7 @@
# Regression test for substitution references to conditional variables.
# Report from Richard Boulton.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([CC], [false])
diff --git a/t/cond20.sh b/t/cond20.sh
index 403c6098f..0a590d513 100755
--- a/t/cond20.sh
+++ b/t/cond20.sh
@@ -17,7 +17,7 @@
# Regression test for recursion handling in substitution references to
# conditional variables.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond21.sh b/t/cond21.sh
index f5c748c71..8df1232a9 100755
--- a/t/cond21.sh
+++ b/t/cond21.sh
@@ -16,7 +16,7 @@
# Check for use of = and += in different conditions.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/cond22.sh b/t/cond22.sh
index 10e1d4d4b..a28c8472c 100755
--- a/t/cond22.sh
+++ b/t/cond22.sh
@@ -17,7 +17,7 @@
# Regression test for bug when sources listed in conditional.
# Report from Richard Boulton. PR/326.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
CC=false; AC_SUBST([CC])
diff --git a/t/cond23.sh b/t/cond23.sh
index 522cffa1e..d7a01eb07 100755
--- a/t/cond23.sh
+++ b/t/cond23.sh
@@ -17,7 +17,7 @@
# Check that conditional redefinitions of AC_SUBST'ed variables are detected.
# Report from Patrik Weiskircher.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AM_CONDITIONAL([COND], [true])
diff --git a/t/cond24.sh b/t/cond24.sh
index eaaf3d7cf..3a98a4eb6 100755
--- a/t/cond24.sh
+++ b/t/cond24.sh
@@ -17,7 +17,7 @@
# Check that conditional redefinitions of AC_SUBST'ed variables are detected.
# Report from Patrik Weiskircher.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_SUBST([foo], [bar])
diff --git a/t/cond25.sh b/t/cond25.sh
index 2119a8a6a..7177faf50 100755
--- a/t/cond25.sh
+++ b/t/cond25.sh
@@ -17,7 +17,7 @@
# Check that conditional primaries can use non-conditional directories.
# From Pavel Roskin.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'EOF'
AM_CONDITIONAL([USE_FOO], [true])
diff --git a/t/cond26.sh b/t/cond26.sh
index 74cc7cc85..275b32d9b 100755
--- a/t/cond26.sh
+++ b/t/cond26.sh
@@ -17,7 +17,7 @@
# Check that non-conditional primaries can use conditional directories.
# Reported by Juergen Keil.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'EOF'
AM_CONDITIONAL([USE_FOO], [true])
diff --git a/t/cond27.sh b/t/cond27.sh
index fa4aa94aa..b1a140afd 100755
--- a/t/cond27.sh
+++ b/t/cond27.sh
@@ -17,7 +17,7 @@
# Check that non-conditional primaries cannot use directories defined
# in some conditions (but not others).
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'EOF'
AM_CONDITIONAL([USE_FOO], [true])
diff --git a/t/cond28.sh b/t/cond28.sh
index 4df74463a..a93e6fdac 100755
--- a/t/cond28.sh
+++ b/t/cond28.sh
@@ -17,7 +17,7 @@
# Check that conditional primaries can use directories defined
# in the same conditions (but not others).
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'EOF'
AM_CONDITIONAL([USE_FOO], [true])
diff --git a/t/cond3.sh b/t/cond3.sh
index 4a348d1fd..d31b9437a 100755
--- a/t/cond3.sh
+++ b/t/cond3.sh
@@ -17,7 +17,7 @@
# Test sources listed in conditional.
# Report from Rob Savoye <rob@cygnus.com>, and Lars J. Aas.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond30.sh b/t/cond30.sh
index cf505d924..09ea343d5 100755
--- a/t/cond30.sh
+++ b/t/cond30.sh
@@ -16,7 +16,7 @@
# For PR/352: make sure we support bin_PROGRAMS being defined conditionally.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([C1], [test -z "$two"])
diff --git a/t/cond31.sh b/t/cond31.sh
index b849a1a9b..d66305f71 100755
--- a/t/cond31.sh
+++ b/t/cond31.sh
@@ -16,7 +16,7 @@
# Make sure we define conditional _DEPENDENCIES correctly.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_SUBST([CC], [false])
diff --git a/t/cond32.sh b/t/cond32.sh
index 07b7814c5..842704cd2 100755
--- a/t/cond32.sh
+++ b/t/cond32.sh
@@ -16,7 +16,7 @@
# Make sure the user can override a conditional _DEPENDENCIES.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([C1], [test -z "$two"])
diff --git a/t/cond33.sh b/t/cond33.sh
index 53225cbed..9ea45f116 100755
--- a/t/cond33.sh
+++ b/t/cond33.sh
@@ -18,7 +18,7 @@
# correctly.
# Report from Ralf Corsepius.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([INC], [test -z "$two"])
diff --git a/t/cond34.sh b/t/cond34.sh
index 3d37a2b32..b4a50bb90 100755
--- a/t/cond34.sh
+++ b/t/cond34.sh
@@ -17,7 +17,7 @@
# Check for _DEPENDENCIES definition with conditional _LDADD.
# Report from Elena A. Vengerova.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([TWO], [test -n "$two"])
diff --git a/t/cond35.sh b/t/cond35.sh
index ea663ce97..fc371f5e3 100755
--- a/t/cond35.sh
+++ b/t/cond35.sh
@@ -18,7 +18,7 @@
# Report from Roman Fietze.
required='cc lex yacc'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([CASE_A], [test -z "$case_B"])
diff --git a/t/cond36.sh b/t/cond36.sh
index 2b8e584ab..a65343fed 100755
--- a/t/cond36.sh
+++ b/t/cond36.sh
@@ -16,7 +16,7 @@
# Check rules output for parser defined conditionally.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([CASE_A], [test -z "$case_B"])
diff --git a/t/cond37.sh b/t/cond37.sh
index 31a1f4059..12a2ac7ef 100755
--- a/t/cond37.sh
+++ b/t/cond37.sh
@@ -17,7 +17,7 @@
# Check conditional local rules.
# Report from Simon Josefsson.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([CASE_A], [test -n "$case_A"])
diff --git a/t/cond38.sh b/t/cond38.sh
index 887aa0381..96aefa9e8 100755
--- a/t/cond38.sh
+++ b/t/cond38.sh
@@ -17,7 +17,7 @@
# Check conditional variable ordering.
# Report from Ed Hartnett.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_CONDITIONAL([CASE_A], :)
diff --git a/t/cond39.sh b/t/cond39.sh
index 4cbda481a..0bea42031 100755
--- a/t/cond39.sh
+++ b/t/cond39.sh
@@ -17,7 +17,7 @@
# Build either as CONFIG_FILE or as PROGRAM.
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/cond4.sh b/t/cond4.sh
index 72d98c9dd..cc580c675 100755
--- a/t/cond4.sh
+++ b/t/cond4.sh
@@ -16,7 +16,7 @@
# Another sources-in-conditional test. Report from Tim Goodwin.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([CC], [false])
diff --git a/t/cond40.sh b/t/cond40.sh
index 8725a0341..2d7ba0d3c 100755
--- a/t/cond40.sh
+++ b/t/cond40.sh
@@ -16,7 +16,7 @@
# Test AM_COND_IF.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_DEFUN([FOO],
diff --git a/t/cond41.sh b/t/cond41.sh
index 9f4cc5376..3f9c3f443 100755
--- a/t/cond41.sh
+++ b/t/cond41.sh
@@ -16,7 +16,7 @@
# AM_COND_IF with an undefined condition should fail.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_COND_IF([BAD_COND], [AC_CONFIG_FILES([file1])])
diff --git a/t/cond42.sh b/t/cond42.sh
index d7f885e2b..b3d0305ce 100755
--- a/t/cond42.sh
+++ b/t/cond42.sh
@@ -18,7 +18,7 @@
# This shouldn't happen with user input, as _AM_COND_* are not documented,
# but better to be safe.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([COND], [:])
diff --git a/t/cond43.sh b/t/cond43.sh
index a6c754548..ff336756d 100755
--- a/t/cond43.sh
+++ b/t/cond43.sh
@@ -16,7 +16,7 @@
# Ensure an error with underquoted usage of AM_COND_IF in configure.ac.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([COND1], [:])
diff --git a/t/cond44.sh b/t/cond44.sh
index 8d4d7d598..b79892bc3 100755
--- a/t/cond44.sh
+++ b/t/cond44.sh
@@ -17,7 +17,7 @@
# Check that redefinitions of AC_SUBST'ed AM_SUBST_NOTMAKE'd variables
# are not diagnosed. See 'cond23.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AM_CONDITIONAL([COND], [true])
diff --git a/t/cond45.sh b/t/cond45.sh
index 5e010cf4c..0db9d8c7e 100755
--- a/t/cond45.sh
+++ b/t/cond45.sh
@@ -17,7 +17,7 @@
# Check that redefinitions of AC_SUBST'ed AM_SUBST_NOTMAKE'd variables
# are not diagnosed. See 'cond24.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_SUBST([foo], [bar])
diff --git a/t/cond46.sh b/t/cond46.sh
index 59820c4bb..18d0f9e6e 100755
--- a/t/cond46.sh
+++ b/t/cond46.sh
@@ -16,7 +16,7 @@
# Ensure the right condition is listed after 'else' and 'endif'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([USE_A], [test x = y])
diff --git a/t/cond5.sh b/t/cond5.sh
index fb5c92005..b0f11946b 100755
--- a/t/cond5.sh
+++ b/t/cond5.sh
@@ -16,7 +16,7 @@
# Yet another sources-in-conditional test. Report from Tim Goodwin.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond6.sh b/t/cond6.sh
index 640f49629..3754d0882 100755
--- a/t/cond6.sh
+++ b/t/cond6.sh
@@ -16,7 +16,7 @@
# Test for an odd conditional bug. Report from Matt Leach.
-. ./defs || exit 1
+. test-init.sh
echo 'AM_CONDITIONAL([FOO], [true])' >> configure.ac
diff --git a/t/cond7.sh b/t/cond7.sh
index 19cd12e87..4f90bde8c 100755
--- a/t/cond7.sh
+++ b/t/cond7.sh
@@ -16,7 +16,7 @@
# Test for an odd conditional bug. Report from Pavel Roskin.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
compat=yes
diff --git a/t/cond8.sh b/t/cond8.sh
index 1eab7075b..f19ede57d 100755
--- a/t/cond8.sh
+++ b/t/cond8.sh
@@ -17,7 +17,7 @@
# Test to make sure _PROGRAMS conditionals can be written in a useful
# way.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cond9.sh b/t/cond9.sh
index 942274882..80f13d194 100755
--- a/t/cond9.sh
+++ b/t/cond9.sh
@@ -16,7 +16,7 @@
# Test for bug in conditionals. From Raja R Harinath.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([WRONG], [test x = y])
diff --git a/t/condd.sh b/t/condd.sh
index 81fd0157a..cb88994a8 100755
--- a/t/condd.sh
+++ b/t/condd.sh
@@ -16,7 +16,7 @@
# Test for bug in conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
dnl Define a macro with the same name as the conditional to exhibit
diff --git a/t/condhook.sh b/t/condhook.sh
index 18ebcb343..8cfc94c49 100755
--- a/t/condhook.sh
+++ b/t/condhook.sh
@@ -18,7 +18,7 @@
# Keep this in sync with sister test 'condhook2.sh'.
# Report by Nik A. Melchior (PR/428).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TEST], [false])
diff --git a/t/condhook2.sh b/t/condhook2.sh
index a6ec7fffb..e41a24d2e 100755
--- a/t/condhook2.sh
+++ b/t/condhook2.sh
@@ -17,7 +17,7 @@
# Test install when a conditional install-*-hook is defined.
# Keep this in sync with sister test 'condhook.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TEST], [true])
diff --git a/t/condinc.sh b/t/condinc.sh
index d826f9614..d61766d16 100755
--- a/t/condinc.sh
+++ b/t/condinc.sh
@@ -16,7 +16,7 @@
# Make sure a conditional include statement is handled properly.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TOBE], [false])
diff --git a/t/condinc2.sh b/t/condinc2.sh
index 1763a6d70..57f92ea02 100755
--- a/t/condinc2.sh
+++ b/t/condinc2.sh
@@ -16,7 +16,7 @@
# Another test of conditional include statements.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TOBE], [false])
diff --git a/t/condlib.sh b/t/condlib.sh
index 3c8822688..6751386a5 100755
--- a/t/condlib.sh
+++ b/t/condlib.sh
@@ -17,7 +17,7 @@
# Test for bug with conditional library.
# From Harlan Stenn.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_RANLIB
diff --git a/t/condman2.sh b/t/condman2.sh
index ad97abcbf..8f79e0e37 100755
--- a/t/condman2.sh
+++ b/t/condman2.sh
@@ -16,7 +16,7 @@
# Make sure appropriate man install targets generated in all cases.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
man_MANS = foo.1 foo.2
diff --git a/t/condman3.sh b/t/condman3.sh
index 094a66cf0..8f0f65810 100755
--- a/t/condman3.sh
+++ b/t/condman3.sh
@@ -16,7 +16,7 @@
# Make sure conditionals work with man pages.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND], [test x"$FOO" = x"true"])
diff --git a/t/confdeps.sh b/t/confdeps.sh
index 95e60f9ee..c2dccf207 100755
--- a/t/confdeps.sh
+++ b/t/confdeps.sh
@@ -16,7 +16,7 @@
# Make sure that config* files are properly regenerated.
-. ./defs || exit 1
+. test-init.sh
echo "FOO = foo" > Makefile.am
diff --git a/t/conff.sh b/t/conff.sh
index b6f908138..745620713 100755
--- a/t/conff.sh
+++ b/t/conff.sh
@@ -17,7 +17,7 @@
# Make sure rebuild rules work even when AC_CONFIG_FILES uses colons.
# Report from Alexander Turbov.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([bar/Makefile:bar/Makefile.in:Makefile.bot])
diff --git a/t/conff2.sh b/t/conff2.sh
index 728d78e3d..9c5184926 100755
--- a/t/conff2.sh
+++ b/t/conff2.sh
@@ -16,10 +16,10 @@
# Make sure empty calls to AC_CONFIG_FILES or AC_CONFIG_HEADERS are diagnosed.
-. ./defs || exit 1
+. test-init.sh
-# We avoid using configure.ac stub initialized by ./defs, since we need
-# to keep track of line numbers (to grep for error messages).
+# We avoid using configure.ac stub initialized by our testsuite setup, as
+# we need to keep track of line numbers (to grep for error messages).
cat > configure.ac << END
AC_INIT([$me], [1.0])
AM_INIT_AUTOMAKE
diff --git a/t/conffile-leading-dot.sh b/t/conffile-leading-dot.sh
index 3eed30bb4..acdbc1f53 100755
--- a/t/conffile-leading-dot.sh
+++ b/t/conffile-leading-dot.sh
@@ -19,7 +19,7 @@
# broken in that case.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/confh-subdir-clean.sh b/t/confh-subdir-clean.sh
index 5a942da5b..05720346e 100755
--- a/t/confh-subdir-clean.sh
+++ b/t/confh-subdir-clean.sh
@@ -16,10 +16,10 @@
# Test to make sure config headers in subdirectories are cleaned.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-AM_CONFIG_HEADER([sub/config.h:sub/config.hin])
+AC_CONFIG_HEADERS([sub/config.h:sub/config.hin])
AC_OUTPUT
END
diff --git a/t/confh.sh b/t/confh.sh
index c86b63e84..81e6743a0 100755
--- a/t/confh.sh
+++ b/t/confh.sh
@@ -17,10 +17,10 @@
# Test to make sure config.h works in a subdir.
# Report from Alexandre Oliva.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-AM_CONFIG_HEADER([include/config.h])
+AC_CONFIG_HEADERS([include/config.h])
AC_OUTPUT
END
diff --git a/t/confh4.sh b/t/confh4.sh
index 2f52add86..65c03c548 100755
--- a/t/confh4.sh
+++ b/t/confh4.sh
@@ -22,11 +22,11 @@
# Use AM_CONFIG_HEADER(subdir/config.h) to place configuration
# header in subdirectory and observe that it is not included.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([include/Makefile])
-AM_CONFIG_HEADER([include/config.h])
+AC_CONFIG_HEADERS([include/config.h])
AC_PROG_CC
END
diff --git a/t/confh5.sh b/t/confh5.sh
index 354c88c32..c6c3e2593 100755
--- a/t/confh5.sh
+++ b/t/confh5.sh
@@ -16,7 +16,7 @@
# Make sure we do not distribute header sources when they are built.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([FOO], [NameToBeGrepped])
diff --git a/t/confh6.sh b/t/confh6.sh
index 5479491ca..4db74b5c4 100755
--- a/t/confh6.sh
+++ b/t/confh6.sh
@@ -18,10 +18,10 @@
# idea is that if config.h is in a subdir, and there is no Makefile in
# that subdir, then we want to build config.h as the top level.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-AM_CONFIG_HEADER([subdir/config.h])
+AC_CONFIG_HEADERS([subdir/config.h])
AC_OUTPUT
END
diff --git a/t/confh7.sh b/t/confh7.sh
index 86148ac80..4d3bbbb5f 100755
--- a/t/confh7.sh
+++ b/t/confh7.sh
@@ -17,10 +17,10 @@
# Test to make sure several config headers are allowed.
# See also sister "semantic" test 'confh8.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-AM_CONFIG_HEADER([config.h two.h])
+AC_CONFIG_HEADERS([config.h two.h])
END
: > Makefile.am
diff --git a/t/confh8.sh b/t/confh8.sh
index 35168e0e6..e2fc36f43 100755
--- a/t/confh8.sh
+++ b/t/confh8.sh
@@ -17,10 +17,10 @@
# Test to make sure several config headers are allowed.
# See also sister "minimalistic" test 'confh7.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-AM_CONFIG_HEADER([one.h two.h])
+AC_CONFIG_HEADERS([one.h two.h])
AC_OUTPUT
END
diff --git a/t/configure.sh b/t/configure.sh
index 6ba740e86..1a1bb94ad 100755
--- a/t/configure.sh
+++ b/t/configure.sh
@@ -18,7 +18,7 @@
# Diagnose if both configure.in and configure.ac are present, prefer
# configure.ac.
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<EOF
AC_INIT([$me], [1.0])
diff --git a/t/confincl.sh b/t/confincl.sh
index 4527a144d..c106d6b0f 100755
--- a/t/confincl.sh
+++ b/t/confincl.sh
@@ -18,7 +18,7 @@
# If config.h is not used, @CONFIG_INCLUDE_SPEC@ should not appear
# in Makefile.in.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/conflnk.sh b/t/conflnk.sh
index 8446ac859..7b316a79d 100755
--- a/t/conflnk.sh
+++ b/t/conflnk.sh
@@ -17,7 +17,7 @@
# Test to make sure links created by AC_CONFIG_LINKS get removed with
# 'make distclean'
-. ./defs || exit 1
+. test-init.sh
echo 'SUBDIRS = sdir' > Makefile.am
: > src
diff --git a/t/conflnk2.sh b/t/conflnk2.sh
index fa0b0092b..66b1a49f3 100755
--- a/t/conflnk2.sh
+++ b/t/conflnk2.sh
@@ -17,7 +17,7 @@
# Test to make sure that sources for links created by AC_CONFIG_LINKS
# are distributed.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUBDIRS = sdir
diff --git a/t/conflnk3.sh b/t/conflnk3.sh
index a0b8842c8..1f844fd7e 100755
--- a/t/conflnk3.sh
+++ b/t/conflnk3.sh
@@ -17,7 +17,7 @@
# Test to make sure that AC_CONFIG_LINKS using a variable source
# is not broken.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUBDIRS = sdir
diff --git a/t/conflnk4.sh b/t/conflnk4.sh
index 090f809f2..d879fbf2c 100755
--- a/t/conflnk4.sh
+++ b/t/conflnk4.sh
@@ -17,7 +17,7 @@
# Test to make sure links to _identical files_ created by AC_CONFIG_LINKS get
# removed with 'make distclean' only if doing a VPATH build.
-. ./defs || exit 1
+. test-init.sh
mkdir nonmk-subdir sdir sdir/mk-subdir
: > src
diff --git a/t/confsub.sh b/t/confsub.sh
index 979c66560..6ab6a2fcb 100755
--- a/t/confsub.sh
+++ b/t/confsub.sh
@@ -17,11 +17,11 @@
# Test to make sure config.h can be in subdir.
# Also, make sure config.h is properly rebuilt.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([subdir/Makefile])
-AM_CONFIG_HEADER([subdir/config.h:subdir/config.hin])
+AC_CONFIG_HEADERS([subdir/config.h:subdir/config.hin])
AC_OUTPUT
END
diff --git a/t/confvar.sh b/t/confvar.sh
index 39739d9fe..28e9e06d7 100755
--- a/t/confvar.sh
+++ b/t/confvar.sh
@@ -16,7 +16,7 @@
# Test to make sure configure_vars stuff works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([QBERT])
diff --git a/t/confvar2.sh b/t/confvar2.sh
index fc78f6e48..cada47050 100755
--- a/t/confvar2.sh
+++ b/t/confvar2.sh
@@ -16,7 +16,7 @@
# Test for bug reported by Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([OTHER_SCRIPTS])
diff --git a/t/copy.sh b/t/copy.sh
index 64a829d9c..04cb94c95 100755
--- a/t/copy.sh
+++ b/t/copy.sh
@@ -17,7 +17,7 @@
# Test to make sure '-c' works. Report from Andris Pavenis.
# See also the much more in-depth test 'add-missing'.
-. ./defs || exit 1
+. test-init.sh
# We'll have to cater to systems like MSYS/MinGW where there are no
# true symlinks ('ln -s' behaves like 'cp -p'); see automake bug#10441.
diff --git a/t/cscope.tap b/t/cscope.tap
index 9db0d8e81..213481c45 100755
--- a/t/cscope.tap
+++ b/t/cscope.tap
@@ -16,7 +16,7 @@
# Test cscope functionality.
-. ./defs || exit 1
+. test-init.sh
plan_ 18
diff --git a/t/cscope2.sh b/t/cscope2.sh
index 631642fb0..16419a757 100755
--- a/t/cscope2.sh
+++ b/t/cscope2.sh
@@ -17,7 +17,7 @@
# The 'cscope' target should not fail if there are no sources.
required=
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/cscope3.sh b/t/cscope3.sh
index 30e8c0cc9..a7468f880 100755
--- a/t/cscope3.sh
+++ b/t/cscope3.sh
@@ -19,7 +19,7 @@
# is empty.
required=cscope
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/cxx-demo.sh b/t/cxx-demo.sh
index 77f7c83b6..6caae27d5 100755
--- a/t/cxx-demo.sh
+++ b/t/cxx-demo.sh
@@ -18,7 +18,7 @@
required=c++
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([GNU C++ Demo], [1.3], [bug-automake@gnu.org])
diff --git a/t/cxx-lt-demo.sh b/t/cxx-lt-demo.sh
index a060fc851..9289196dc 100755
--- a/t/cxx-lt-demo.sh
+++ b/t/cxx-lt-demo.sh
@@ -18,7 +18,7 @@
required='libtoolize c++'
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([GNU C++/Libtool Demo], [0.73], [bug-automake@gnu.org])
diff --git a/t/cxx.sh b/t/cxx.sh
index fc7fe96bf..744cde27a 100755
--- a/t/cxx.sh
+++ b/t/cxx.sh
@@ -17,7 +17,7 @@
# Test that '.c++' extension works.
# From Ralf Corsepius.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/cxx2.sh b/t/cxx2.sh
index 7ffba4e9d..4abcefc0c 100755
--- a/t/cxx2.sh
+++ b/t/cxx2.sh
@@ -16,7 +16,7 @@
# Test that Automake suggests using AC_PROG_CXX if C++ sources are used.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >>configure.ac
diff --git a/t/cxxcpp.sh b/t/cxxcpp.sh
index cd5d392a9..dca17c7d9 100755
--- a/t/cxxcpp.sh
+++ b/t/cxxcpp.sh
@@ -16,7 +16,7 @@
# Make sure automake sees AC_PROG_CXXCPP. From Garth Corral.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXXCPP
diff --git a/t/cxxlibobj.sh b/t/cxxlibobj.sh
index b6d023146..7c95a4fb5 100755
--- a/t/cxxlibobj.sh
+++ b/t/cxxlibobj.sh
@@ -16,7 +16,7 @@
# Test to make sure LIBOBJS and C++ sources work right.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/cxxlink.sh b/t/cxxlink.sh
index ff271c39c..734dc753d 100755
--- a/t/cxxlink.sh
+++ b/t/cxxlink.sh
@@ -16,7 +16,7 @@
# Test to make sure C++ linker is used when appropriate.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/cxxnoc.sh b/t/cxxnoc.sh
index b3e563126..1cdf58b16 100755
--- a/t/cxxnoc.sh
+++ b/t/cxxnoc.sh
@@ -16,7 +16,7 @@
# Test to make sure pure C++ sources don't include C-specific code.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/cygnus-dependency-tracking.sh b/t/cygnus-dependency-tracking.sh
deleted file mode 100755
index 6fe7edea5..000000000
--- a/t/cygnus-dependency-tracking.sh
+++ /dev/null
@@ -1,74 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Check that cygnus mode disables automatic dependency tracking.
-# And check that this *cannot* be overridden.
-
-required=cc
-. ./defs || exit 1
-
-cat >> configure.ac <<'END'
-AM_MAINTAINER_MODE
-AC_PROG_CC
-AC_OUTPUT
-END
-
-cat > Makefile.am <<'END'
-AUTOMAKE_OPTIONS = -Wno-obsolete
-bin_PROGRAMS = foo
-foo_SOURCES = foo.c
-.PHONY: test-nodeps
-test-nodeps:
- test ! -d .deps
- test ! -d _deps
- test ! -d '$(DEPDIR)'
-END
-
-cat > foo.c <<'END'
-#include "bar.h"
-int main ()
-{
- GIVE_BACK 0;
-}
-END
-
-cat > bar.sav <<'END'
-#define GIVE_BACK return
-END
-
-cp bar.sav bar.h
-
-$ACLOCAL
-$AUTOMAKE --include-deps --cygnus --include-deps
-$AUTOCONF
-
-# Unknown options should cause just warnings from configure.
-./configure --enable-dependency-tracking
-$MAKE
-$MAKE test-nodeps
-
-: > bar.h
-$MAKE
-$MAKE test-nodeps
-
-# Sanity check.
-$MAKE clean
-$MAKE >out 2>&1 && { cat out; exit 1; }
-cat out
-# Not all compilers mention the undefined symbol in the error message.
-grep GIVE_BACK out || grep main out
-
-:
diff --git a/t/cygnus-imply-foreign.sh b/t/cygnus-imply-foreign.sh
deleted file mode 100755
index 461265032..000000000
--- a/t/cygnus-imply-foreign.sh
+++ /dev/null
@@ -1,60 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Check that 'cygnus' mode imply 'foreign' mode.
-
-. ./defs || exit 1
-
-cat >> configure.ac <<'END'
-# This is *required* in cygnus mode
-AM_MAINTAINER_MODE
-END
-
-$ACLOCAL
-
-: > Makefile.am
-
-# We want complete control automake flags, while honouring the
-# user overrides for $AUTOMAKE.
-AUTOMAKE="$am_original_AUTOMAKE -Wno-obsolete"
-
-# Sanity check: gnu mode must complain about missing files and
-# portability problems.
-AUTOMAKE_fails
-grep 'required file.*README' stderr
-
-# But cygnus mode should imply foreign mode, so no complaints.
-# And cygnus mode should by able to override gnu and gnits modes.
-$AUTOMAKE --cygnus -Werror
-$AUTOMAKE --gnu --cygnus -Werror
-$AUTOMAKE --gnits --cygnus -Werror
-
-# Try again, this time enabling cygnus mode from Makefile.am.
-cp Makefile.am Makefile.sav
-echo 'AUTOMAKE_OPTIONS = gnu cygnus' >> Makefile.am
-$AUTOMAKE -Werror
-mv -f Makefile.sav Makefile.am
-
-# Try again, this time enabling cygnus mode from configure.ac.
-cp configure.ac configure.sav
-sed 's/^AM_INIT_AUTOMAKE/&([gnits cygnus])/' configure.sav >configure.ac
-cmp configure.ac configure.sav && fatal_ 'failed to edit configure.ac'
-
-$ACLOCAL --force
-$AUTOMAKE -Werror
-mv -f configure.sav configure.ac
-
-:
diff --git a/t/cygnus-no-dist.sh b/t/cygnus-no-dist.sh
deleted file mode 100755
index af2c45f59..000000000
--- a/t/cygnus-no-dist.sh
+++ /dev/null
@@ -1,86 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Check that cygnus mode forbids creation of distribution tarball.
-
-. ./defs || exit 1
-
-echo AM_MAINTAINER_MODE >> configure.ac
-mv -f configure.ac configure.stub
-
-cat configure.stub - > configure.ac <<'END'
-AC_OUTPUT
-END
-
-: > Makefile.am
-
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --cygnus -Wno-obsolete
-
-./configure
-$MAKE
-
-for target in dist distdir distcheck dist-all dist-gzip; do
- $MAKE -n $target >out 2>&1 && { cat out; exit 1; }
- cat out
- grep $target out
-done
-
-# Now check that cygnus mode in a subdirectory disables
-# distribution-building in that subdirectory.
-
-cat > Makefile.am <<'END'
-SUBDIRS = sub1 sub2
-END
-
-mkdir sub1 sub2
-: > sub1/Makefile.am
-cat > sub2/Makefile.am <<'END'
-# The '-Wall' after 'cygnus' should ensure no warning gets
-# unintentionally disabled. We are particularly interested
-# in override warnings, for when (below) we add the 'distdir'
-# target.
-AUTOMAKE_OPTIONS = cygnus -Wall
-# This is required because the 'cygnus' option is now deprecated.
-AUTOMAKE_OPTIONS += -Wno-obsolete
-END
-
-cat configure.stub - > configure.ac <<'END'
-AC_CONFIG_FILES([sub1/Makefile sub2/Makefile])
-AC_OUTPUT
-END
-
-$AUTOCONF
-$AUTOMAKE
-
-./configure
-$MAKE
-cd sub2
-$MAKE -n distdir >out 2>&1 && { cat out; exit 1; }
-grep distdir out
-cd ..
-
-cat >> sub2/Makefile.am <<'END'
-distdir:
-END
-$AUTOMAKE sub2/Makefile
-./config.status sub2/Makefile
-
-$MAKE distdir
-$MAKE dist
-
-:
diff --git a/t/cygnus-no-installinfo.sh b/t/cygnus-no-installinfo.sh
deleted file mode 100755
index 8fe51952b..000000000
--- a/t/cygnus-no-installinfo.sh
+++ /dev/null
@@ -1,55 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Check that cygnus mode enables the 'no-installinfo' option.
-
-required=makeinfo
-. ./defs || exit 1
-
-cat >> configure.ac <<'END'
-AM_MAINTAINER_MODE
-AC_OUTPUT
-END
-
-cat > Makefile.am <<'END'
-info_TEXINFOS = foo.texi
-END
-
-cat > foo.texi <<'END'
-@setfilename foo.info
-END
-
-$ACLOCAL
-# -Wno-override works around a buglet in definition of $(MAKEINFO)
-# in cygnus mode; see also xfailing test 'txinfo5.test'.
-# -Wno-obsolete accounts for the fact that the cygnus mode is now
-# deprecated.
-$AUTOMAKE --cygnus -Wno-override -Wno-obsolete
-$AUTOCONF
-
-cwd=$(pwd) || exit 1
-./configure --prefix="$cwd"/_inst
-$MAKE
-$MAKE install
-test ! -e _inst
-test ! -e foo.info
-test ! -e _inst/share/info
-$MAKE install-info
-ls -l _inst
-test -f foo.info
-test -f _inst/share/info/foo.info
-
-:
diff --git a/t/cygnus-deprecation.sh b/t/cygnus-no-more.sh
index 551d0e66a..33803b184 100755
--- a/t/cygnus-deprecation.sh
+++ b/t/cygnus-no-more.sh
@@ -18,39 +18,20 @@
# That feature will be removed in the next major Automake release.
# See automake bug#11034.
-. ./defs || exit 1
+. test-init.sh
-warn_rx='support for Cygnus.*trees.*deprecated'
-
-cat >> configure.ac <<'END'
-AC_PROG_CC
-AM_MAINTAINER_MODE
-END
+warn_rx='support for Cygnus.*trees.*removed'
$ACLOCAL
-$AUTOCONF
-
-: > Makefile.am
-# 'cygnus' option from command line
-$AUTOMAKE --cygnus -Wno-obsolete
-AUTOMAKE_fails --cygnus
-grep "^automake.*: .*$warn_rx" stderr
-AUTOMAKE_fails -Wnone -Wobsolete --cygnus
-grep "^automake.*: .*$warn_rx" stderr
-AUTOMAKE_fails --cygnus -Wnone -Wobsolete
-grep "^automake.*: .*$warn_rx" stderr
-
-rm -rf autom4te*.cache
+# Use of 'cygnus' option must raise an unconditional error, not a
+# warning.
+AUTOMAKE="$am_original_AUTOMAKE -Wnone -Wno-error"
# 'cygnus' option in Makefile.am
echo "AUTOMAKE_OPTIONS = cygnus" > Makefile.am
-cat Makefile.am # For debugging.
-$AUTOMAKE -Wno-obsolete
AUTOMAKE_fails
grep "^Makefile\.am:1:.*$warn_rx" stderr
-AUTOMAKE_fails -Wnone -Wobsolete
-grep "^Makefile\.am:1:.*$warn_rx" stderr
rm -rf autom4te*.cache
@@ -59,10 +40,7 @@ rm -rf autom4te*.cache
sed "s|^\\(AM_INIT_AUTOMAKE\\).*|\1([cygnus])|" configure.ac > t
diff configure.ac t && fatal_ "failed to edit configure.ac"
mv -f t configure.ac
-$AUTOMAKE -Wno-obsolete
AUTOMAKE_fails
grep "^configure\.ac:2:.*$warn_rx" stderr
-AUTOMAKE_fails -Wnone -Wobsolete
-grep "^configure\.ac:2:.*$warn_rx" stderr
:
diff --git a/t/cygwin32.sh b/t/cygwin32.sh
index 95b442e91..716388435 100755
--- a/t/cygwin32.sh
+++ b/t/cygwin32.sh
@@ -16,7 +16,7 @@
# Test basic Cygwin32 functionality.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/dash.sh b/t/dash.sh
index 6c9c9e03b..4cf34f3c3 100755
--- a/t/dash.sh
+++ b/t/dash.sh
@@ -17,7 +17,7 @@
# Test to make sure '-' can be used in path.
# Report from Matthew D. Langston.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
include Make-lang
diff --git a/t/defun.sh b/t/defun.sh
index 5a4530c19..0f6bd0a7d 100755
--- a/t/defun.sh
+++ b/t/defun.sh
@@ -16,7 +16,7 @@
# Make sure aclocal picks up on all macro definitions.
-. ./defs || exit 1
+. test-init.sh
cat > acinclude.m4 << 'END'
AC_DEFUN([AM_FUNC_THREE])
diff --git a/t/defun2.sh b/t/defun2.sh
index 2c74cc497..cb1cee7db 100755
--- a/t/defun2.sh
+++ b/t/defun2.sh
@@ -17,7 +17,7 @@
# Make sure we don't mistake a macro definition for an invocation.
# From Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
dnl if buggy this will require getloadavg.c
diff --git a/t/dejagnu-absolute-builddir.sh b/t/dejagnu-absolute-builddir.sh
index 22f7cc5a7..6b873d091 100755
--- a/t/dejagnu-absolute-builddir.sh
+++ b/t/dejagnu-absolute-builddir.sh
@@ -18,7 +18,7 @@
# to an absolute path.
required=runtest
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/dejagnu-relative-srcdir.sh b/t/dejagnu-relative-srcdir.sh
index 9fdf17926..141f56e54 100755
--- a/t/dejagnu-relative-srcdir.sh
+++ b/t/dejagnu-relative-srcdir.sh
@@ -18,7 +18,7 @@
# (both as TCL variable and as environment variable).
required=runtest
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/dejagnu-siteexp-append.sh b/t/dejagnu-siteexp-append.sh
index c980c8537..07254ca2b 100755
--- a/t/dejagnu-siteexp-append.sh
+++ b/t/dejagnu-siteexp-append.sh
@@ -17,7 +17,7 @@
# Check that the files in $(EXTRA_DEJAGNU_SITE_CONFIG) get appended to
# site.exp in the same order in which they're listed in that variable.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/dejagnu-siteexp-extend.sh b/t/dejagnu-siteexp-extend.sh
index 45d8a225b..8c16c5476 100755
--- a/t/dejagnu-siteexp-extend.sh
+++ b/t/dejagnu-siteexp-extend.sh
@@ -18,7 +18,7 @@
# automake-generated Makefile.
required=runtest
-. ./defs || exit 1
+. test-init.sh
write_check_for ()
{
diff --git a/t/dejagnu-siteexp-useredit.sh b/t/dejagnu-siteexp-useredit.sh
index 42f4d4404..207d8a1ef 100755
--- a/t/dejagnu-siteexp-useredit.sh
+++ b/t/dejagnu-siteexp-useredit.sh
@@ -17,7 +17,7 @@
# Check that the user can edit the Makefile-generated site.exp, and
# have its edits survive to the remaking of that file.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/dejagnu.sh b/t/dejagnu.sh
index 7583347bd..0293de57e 100755
--- a/t/dejagnu.sh
+++ b/t/dejagnu.sh
@@ -17,7 +17,7 @@
# Superficial test to check that dejagnu tests and automake-style
# tests can coexist. See also related deeper test 'check12.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = dejagnu
diff --git a/t/dejagnu2.sh b/t/dejagnu2.sh
index 5b75bb698..78cfb1593 100755
--- a/t/dejagnu2.sh
+++ b/t/dejagnu2.sh
@@ -16,7 +16,7 @@
# Make sure we don't override the user's site.exp rule.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/dejagnu3.sh b/t/dejagnu3.sh
index 42345bee0..4b2580564 100755
--- a/t/dejagnu3.sh
+++ b/t/dejagnu3.sh
@@ -17,7 +17,7 @@
# Check that the DejaGnu rules work for a simple program and test case.
required=runtest
-. ./defs || exit 1
+. test-init.sh
cat > hammer << 'END'
#! /bin/sh
diff --git a/t/dejagnu4.sh b/t/dejagnu4.sh
index 655218b1a..18119b0d5 100755
--- a/t/dejagnu4.sh
+++ b/t/dejagnu4.sh
@@ -24,7 +24,7 @@
# previous tools, but at first glance "make check" has passed.
required=runtest
-. ./defs || exit 1
+. test-init.sh
cat > hammer << 'END'
#! /bin/sh
diff --git a/t/dejagnu5.sh b/t/dejagnu5.sh
index d64a7f2c6..816a65223 100755
--- a/t/dejagnu5.sh
+++ b/t/dejagnu5.sh
@@ -18,7 +18,7 @@
# the package by default.
required=runtest
-. ./defs || exit 1
+. test-init.sh
package=$me
diff --git a/t/dejagnu6.sh b/t/dejagnu6.sh
index 80ff02785..71998cc8e 100755
--- a/t/dejagnu6.sh
+++ b/t/dejagnu6.sh
@@ -17,7 +17,7 @@
# Check that "make check" fails, when a DejaGnu test fails.
required=runtest
-. ./defs || exit 1
+. test-init.sh
cat > faildeja << 'END'
#! /bin/sh
diff --git a/t/dejagnu7.sh b/t/dejagnu7.sh
index d34931b7f..17e5a1864 100755
--- a/t/dejagnu7.sh
+++ b/t/dejagnu7.sh
@@ -18,7 +18,7 @@
# (to detect TCL errors) on a file with TCL errors.
required=runtest
-. ./defs || exit 1
+. test-init.sh
runtest --help | grep '.*--status' \
|| skip_ "dejagnu lacks support for '--status'"
diff --git a/t/deleted-am.sh b/t/deleted-am.sh
index 9dc015a64..ee17a2911 100755
--- a/t/deleted-am.sh
+++ b/t/deleted-am.sh
@@ -19,7 +19,7 @@
# erroring out when a still-required file is missing.
# See also discussion about automake bug#9768.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/deleted-m4.sh b/t/deleted-m4.sh
index 296f453cf..841e30e93 100755
--- a/t/deleted-m4.sh
+++ b/t/deleted-m4.sh
@@ -19,7 +19,7 @@
# erroring out when a still-required file is missing.
# See also discussion about automake bug#9768.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
m4_include([foobar.m4])
diff --git a/t/depacl2.sh b/t/depacl2.sh
index 897a5a226..c7fd85ee1 100755
--- a/t/depacl2.sh
+++ b/t/depacl2.sh
@@ -17,7 +17,7 @@
# Test to make sure dependencies work when required macro is part of
# autoconf.
-. ./defs || exit 1
+. test-init.sh
echo 'AM_FOO' >> configure.ac
echo 'AC_DEFUN([AM_FOO], [AC_REQUIRE([AC_HEADER_STDC])])' > AM_FOO.m4
diff --git a/t/depcomp-implicit-auxdir.sh b/t/depcomp-implicit-auxdir.sh
index dc93a85cb..964b72020 100755
--- a/t/depcomp-implicit-auxdir.sh
+++ b/t/depcomp-implicit-auxdir.sh
@@ -17,7 +17,7 @@
# Make sure a top-level depcomp file is found when
# AC_CONFIG_AUX_DIR is not specified.
-. ./defs || exit 1
+. test-init.sh
mkdir lib src
diff --git a/t/depcomp.sh b/t/depcomp.sh
index 63c702f57..33c293dbe 100755
--- a/t/depcomp.sh
+++ b/t/depcomp.sh
@@ -17,7 +17,7 @@
# Test to make sure depcomp is installed and found properly
# when required for multiple directories.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/depcomp2.sh b/t/depcomp2.sh
index c29d9cdfd..a00236f88 100755
--- a/t/depcomp2.sh
+++ b/t/depcomp2.sh
@@ -18,7 +18,7 @@
# From Pavel Roskin.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([subdir/Makefile])
diff --git a/t/depcomp8a.sh b/t/depcomp8a.sh
index 4e34777df..61ffa5692 100755
--- a/t/depcomp8a.sh
+++ b/t/depcomp8a.sh
@@ -20,7 +20,7 @@
# same thing for libtool objects.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/depcomp8b.sh b/t/depcomp8b.sh
index 3e26392ac..a97e2c31a 100755
--- a/t/depcomp8b.sh
+++ b/t/depcomp8b.sh
@@ -20,7 +20,7 @@
# same thing for non-libtool objects.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/depdist.sh b/t/depdist.sh
index 8965cd8cc..e6b245982 100755
--- a/t/depdist.sh
+++ b/t/depdist.sh
@@ -18,7 +18,7 @@
# From Eric Magnien.
required=cc
-. ./defs || exit 1
+. test-init.sh
rm -f configure.ac
diff --git a/t/depend.sh b/t/depend.sh
index 846a4247f..9dbbe8244 100755
--- a/t/depend.sh
+++ b/t/depend.sh
@@ -18,7 +18,7 @@
# In some cases the auto-dependency can get confused and try
# to '-include' a directory (if a backslash-newline appears in _SOURCES).
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/depend3.sh b/t/depend3.sh
index 65f83ce05..fddc9688b 100755
--- a/t/depend3.sh
+++ b/t/depend3.sh
@@ -16,7 +16,7 @@
# Test _DEPENDENCIES variable. From Lee Iverson.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/depend4.sh b/t/depend4.sh
index 3a7174158..ddd77eb2e 100755
--- a/t/depend4.sh
+++ b/t/depend4.sh
@@ -16,7 +16,7 @@
# Check that dependencies are included when there are many header files.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/depend5.sh b/t/depend5.sh
index 2bc6a8f5a..518e00d44 100755
--- a/t/depend5.sh
+++ b/t/depend5.sh
@@ -18,7 +18,7 @@
# quoting in $CONFIG_FILES, done by newer Autoconf.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << END
AC_PROG_CC
@@ -47,9 +47,8 @@ else
depdir=
fi
-# For the fun of it, we should also cope with makefile
-# names that contain weird characters, with Autoconf 2.62
-# and newer.
+# For the fun of it, we should also cope with Makefile names
+# that contain weird characters and newer.
# Pick the first name that the file system will accept.
for name in \
'weird name with $ `#() &! characters"' \
diff --git a/t/depend6.sh b/t/depend6.sh
index 0795f9381..4878b50ab 100755
--- a/t/depend6.sh
+++ b/t/depend6.sh
@@ -17,7 +17,7 @@
# Check for _AM_OUTPUT_DEPENDENCY_COMMANDS grouping bug,
# reported by Markus Duft.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << END
AC_PROG_CC
diff --git a/t/deprecated-acinit.sh b/t/deprecated-acinit.sh
index 516b13979..60b3e5a6f 100755
--- a/t/deprecated-acinit.sh
+++ b/t/deprecated-acinit.sh
@@ -17,7 +17,7 @@
# Check that automake and autoconf complain about an old-style AC_INIT
# call used with a new-style AM_AUTOMAKE_INIT call.
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/destdir.sh b/t/destdir.sh
index f10480b36..6b279845e 100755
--- a/t/destdir.sh
+++ b/t/destdir.sh
@@ -21,7 +21,7 @@
# It will only work for non-root users.
required='ro-dir'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/dir-named-obj-is-bad.sh b/t/dir-named-obj-is-bad.sh
index d14f8c8f3..7b77a906b 100755
--- a/t/dir-named-obj-is-bad.sh
+++ b/t/dir-named-obj-is-bad.sh
@@ -16,7 +16,7 @@
# Naming a subdirectory 'obj/' is a bad idea. Automake should say so.
-. ./defs || exit 1
+. test-init.sh
mkdir obj
diff --git a/t/dirlist-abspath.sh b/t/dirlist-abspath.sh
index 3c25fba5d..d90c1dc46 100755
--- a/t/dirlist-abspath.sh
+++ b/t/dirlist-abspath.sh
@@ -17,7 +17,7 @@
# Check use of absolute paths in dirlist.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
mkdir acdir-more sub sub/acdir
echo "$(pwd)/acdir-more" > sub/acdir/dirlist
diff --git a/t/dirlist.sh b/t/dirlist.sh
index e18877711..2dc903886 100755
--- a/t/dirlist.sh
+++ b/t/dirlist.sh
@@ -16,10 +16,10 @@
# Check dirlist support.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<EOF
-AC_INIT
+AC_INIT([$me], [1.0])
AM_INIT_GUILE_MODULE
EOF
@@ -29,7 +29,7 @@ echo ./dirlist-test > acdir/dirlist
cat >dirlist-test/dirlist-check.m4 <<'END'
AC_DEFUN([AM_INIT_GUILE_MODULE],[
. $srcdir/../GUILE-VERSION
-AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
+AM_INIT_AUTOMAKE(foreign)
AC_CONFIG_AUX_DIR(..)
module=[$1]
AC_SUBST(module)])
@@ -50,8 +50,7 @@ grep m4_include aclocal.m4 && exit 1
grep 'GUILE-VERSION' configure
# This bug can occur only when we do a VPATH build of Automake
-# (because of the '-I' passed to aclocal in tests/defs/aclocal.in) but
-# it's OK because VPATH builds are done by 'make distcheck'.
+# but it's OK because VPATH builds are done by 'make distcheck'.
grep 'I should not be included' configure && exit 1
:
diff --git a/t/dirlist2.sh b/t/dirlist2.sh
index 5a11769c2..a678252c1 100755
--- a/t/dirlist2.sh
+++ b/t/dirlist2.sh
@@ -16,10 +16,10 @@
# Check dirlist globbing support.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<EOF
-AC_INIT
+AC_INIT([$me], [1.0])
AM_INIT_GUILE_MODULE
AM_FOO_BAR
EOF
@@ -27,12 +27,7 @@ EOF
mkdir dirlist21-test dirlist22-test
cat >dirlist21-test/dirlist21-check.m4 <<'END'
-AC_DEFUN([AM_INIT_GUILE_MODULE],[
-. $srcdir/../GUILE-VERSION
-AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
-AC_CONFIG_AUX_DIR(..)
-module=[$1]
-AC_SUBST(module)])
+AC_DEFUN([AM_INIT_GUILE_MODULE],[. $srcdir/../GUILE-VERSION])
END
cat >dirlist22-test/dirlist22-check.m4 <<'END'
diff --git a/t/discover.sh b/t/discover.sh
index 4ecf2effc..df11ca3a3 100755
--- a/t/discover.sh
+++ b/t/discover.sh
@@ -16,7 +16,7 @@
# Test to make sure LIBOBJS file cannot be mentioned explicitly.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_RANLIB
diff --git a/t/dist-auxdir-many-subdirs.sh b/t/dist-auxdir-many-subdirs.sh
index eb6b98c33..334e3bdc5 100755
--- a/t/dist-auxdir-many-subdirs.sh
+++ b/t/dist-auxdir-many-subdirs.sh
@@ -19,7 +19,7 @@
am_create_testdir=empty
required=cc
-. ./defs || exit 1
+. test-init.sh
count=0
ocwd=$(pwd) || fatal_ "cannot get current working directory"
@@ -41,7 +41,7 @@ do_check ()
unindent > configure.ac << END
AC_INIT([$me], [$count])
AC_CONFIG_AUX_DIR([$auxdir])
- AM_INIT_AUTOMAKE([parallel-tests])
+ AM_INIT_AUTOMAKE
AC_PROG_CC
# We don't want to require python or emcas in this test, so
# the tricks below.
@@ -56,8 +56,6 @@ END
foo_SOURCES = foo.c
## For py-compile.
python_PYTHON = bar.py
- ## For elisp-comp.
- lisp_LISP = baz.el
## For test-driver.
TESTS =
END
@@ -67,7 +65,6 @@ END
missing
depcomp
py-compile
- elisp-comp
test-driver
'
diff --git a/t/dist-auxfile-2.sh b/t/dist-auxfile-2.sh
index c11083abc..cd62ef067 100755
--- a/t/dist-auxfile-2.sh
+++ b/t/dist-auxfile-2.sh
@@ -20,7 +20,7 @@
# Related to automake bug#9651.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/dist-auxfile.sh b/t/dist-auxfile.sh
index 21c100c77..776997910 100755
--- a/t/dist-auxfile.sh
+++ b/t/dist-auxfile.sh
@@ -20,7 +20,7 @@
# directory was set to '.' by AC_CONFIG_AUX_DIR.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
i=0
for auxdir in build-aux ''; do
diff --git a/t/dist-formats.tap b/t/dist-formats.tap
index 893aa554d..6f217133f 100755
--- a/t/dist-formats.tap
+++ b/t/dist-formats.tap
@@ -18,7 +18,7 @@
# archives.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
plan_ 70
diff --git a/t/dist-included-parent-dir.sh b/t/dist-included-parent-dir.sh
index aed105102..6c225a9f2 100755
--- a/t/dist-included-parent-dir.sh
+++ b/t/dist-included-parent-dir.sh
@@ -16,7 +16,7 @@
# Make sure included files in parent directory are distributed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/dist-missing-am.sh b/t/dist-missing-am.sh
index 80254c49a..2774fa69a 100755
--- a/t/dist-missing-am.sh
+++ b/t/dist-missing-am.sh
@@ -19,7 +19,7 @@
# required '.am' file from a distribution tarball.
# See discussion about automake bug#9768.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/dist-missing-included-m4.sh b/t/dist-missing-included-m4.sh
index 93d11b7de..81fce45be 100755
--- a/t/dist-missing-included-m4.sh
+++ b/t/dist-missing-included-m4.sh
@@ -20,7 +20,7 @@
# See discussion about automake bug#9768.
# See also sister test 'dist-missing-m4.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
m4_include([foobar.m4])
diff --git a/t/dist-missing-m4.sh b/t/dist-missing-m4.sh
index 4ab1e1632..e0ed88614 100755
--- a/t/dist-missing-m4.sh
+++ b/t/dist-missing-m4.sh
@@ -20,7 +20,7 @@
# See discussion about automake bug#9768.
# See also sister test 'dist-missing-included-m4.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
m4_pattern_forbid([^MY_])
diff --git a/t/dist-pr109765.sh b/t/dist-pr109765.sh
index 50085a68f..5c4766964 100755
--- a/t/dist-pr109765.sh
+++ b/t/dist-pr109765.sh
@@ -19,7 +19,7 @@
# so that the latter ones fail.
required=bzip2
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
: > Makefile.am
diff --git a/t/dist-readonly.sh b/t/dist-readonly.sh
index b7b0e0ecc..ab000ee17 100755
--- a/t/dist-readonly.sh
+++ b/t/dist-readonly.sh
@@ -20,7 +20,7 @@
# This test expect the user to be unable to write on files lacking
# write permissions -- so it won't work if the user is 'root'.
required='non-root cc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/dist-repeated.sh b/t/dist-repeated.sh
index 491cf2939..edfbc0f07 100755
--- a/t/dist-repeated.sh
+++ b/t/dist-repeated.sh
@@ -18,7 +18,7 @@
# The distdir target should take care of not copying it more than one
# time anyway.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/distcheck-configure-flags-am.sh b/t/distcheck-configure-flags-am.sh
index 11c992c14..330fde1b4 100755
--- a/t/distcheck-configure-flags-am.sh
+++ b/t/distcheck-configure-flags-am.sh
@@ -17,7 +17,7 @@
# Check support for AM_DISTCHECK_CONFIGURE_FLAGS at "make distcheck"
# time, and its interactions with DISTCHECK_CONFIGURE_FLAGS.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_ARG_ENABLE([success], [], [success=$enableval], [success=no])
diff --git a/t/distcheck-configure-flags-subpkg.sh b/t/distcheck-configure-flags-subpkg.sh
index f5bc15d26..480ad44e3 100755
--- a/t/distcheck-configure-flags-subpkg.sh
+++ b/t/distcheck-configure-flags-subpkg.sh
@@ -20,7 +20,7 @@
# passed down to the configure script of the subpackage. This is
# explicitly documented in the manual.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_SUBDIRS([subpkg])
diff --git a/t/distcheck-configure-flags.sh b/t/distcheck-configure-flags.sh
index e10b2bafe..42dda300c 100755
--- a/t/distcheck-configure-flags.sh
+++ b/t/distcheck-configure-flags.sh
@@ -16,7 +16,7 @@
# Check support for DISTCHECK_CONFIGURE_FLAGS at "make distcheck" time.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_ARG_ENABLE([success], [], [success=$enableval], [success=no])
diff --git a/t/distcheck-hook.sh b/t/distcheck-hook.sh
index 81a6646e1..f55918f68 100755
--- a/t/distcheck-hook.sh
+++ b/t/distcheck-hook.sh
@@ -16,7 +16,7 @@
# Check basic support for distcheck-hook.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/distcheck-hook2.sh b/t/distcheck-hook2.sh
index ee177ee8d..6b4d588ca 100755
--- a/t/distcheck-hook2.sh
+++ b/t/distcheck-hook2.sh
@@ -18,7 +18,7 @@
# Automake, and that a used-defined 'distcheck-hook' is *not* honored
# in a subpackage Makefile.am.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_SUBDIRS([subpkg])
diff --git a/t/distcheck-missing-m4.sh b/t/distcheck-missing-m4.sh
index e903cfefd..c35da0cbf 100755
--- a/t/distcheck-missing-m4.sh
+++ b/t/distcheck-missing-m4.sh
@@ -18,7 +18,7 @@
# missing from the dist tarball (interaction with '--install').
# See automake bug#9037.
-. ./defs || exit 1
+. test-init.sh
cwd=$(pwd) || fatal_ "cannot get current working directory"
diff --git a/t/distcheck-outdated-m4.sh b/t/distcheck-outdated-m4.sh
index 449ed0fbe..fe2fab230 100755
--- a/t/distcheck-outdated-m4.sh
+++ b/t/distcheck-outdated-m4.sh
@@ -18,7 +18,7 @@
# files in a dist tarball (interaction with '--install').
# See automake bug#9037.
-. ./defs || exit 1
+. test-init.sh
cwd=$(pwd) || fatal_ "cannot get current working directory"
diff --git a/t/distcheck-override-infodir.sh b/t/distcheck-override-infodir.sh
index e65078f7a..607c573e4 100755
--- a/t/distcheck-override-infodir.sh
+++ b/t/distcheck-override-infodir.sh
@@ -18,7 +18,7 @@
# working. Related to automake bug#9579.
required='makeinfo tex texi2dvi install-info'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/distcheck-pr10470.sh b/t/distcheck-pr10470.sh
index d888a9972..89a21fee5 100755
--- a/t/distcheck-pr10470.sh
+++ b/t/distcheck-pr10470.sh
@@ -19,7 +19,7 @@
# by a process (e.g., that is its "current working directory").
# See automake bug#10470.
-. ./defs || exit 1
+. test-init.sh
mkdir foo.d
sh -c "cd foo.d && sleep '4'" &
diff --git a/t/distcheck-pr9579.sh b/t/distcheck-pr9579.sh
index ae1da2b92..8c6b6da54 100755
--- a/t/distcheck-pr9579.sh
+++ b/t/distcheck-pr9579.sh
@@ -17,7 +17,7 @@
# Check against automake bug#9579: distcheck does not always detect
# incomplete uninstall as advertised.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/distcheck-writable-srcdir.sh b/t/distcheck-writable-srcdir.sh
index 034dc1e44..4dfd21f92 100755
--- a/t/distcheck-writable-srcdir.sh
+++ b/t/distcheck-writable-srcdir.sh
@@ -21,7 +21,7 @@
# case too (since it doesn't cost us anything but this test).
# See automake bug#10878.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/distcleancheck.sh b/t/distcleancheck.sh
index 5cdd6f181..213ee4e6c 100755
--- a/t/distcleancheck.sh
+++ b/t/distcleancheck.sh
@@ -18,7 +18,7 @@
# The example Makefile.am we use is from the FAQ entry 'distcleancheck'.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'END'
AC_PROG_CC
diff --git a/t/distcom-subdir.sh b/t/distcom-subdir.sh
index cb4d9c33d..b0cbf12de 100755
--- a/t/distcom-subdir.sh
+++ b/t/distcom-subdir.sh
@@ -17,7 +17,7 @@
# Test to make sure that if an auxfile (here depcomp) is required
# by a subdir Makefile.am, it is distributed by that Makefile.am.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([subdir/Makefile])
@@ -50,7 +50,7 @@ test -f depcomp
# FIXME: the logic of this check and other similar ones in other
# FIXME: 'distcom*.sh' files should be factored out in a common
-# FIXME: subroutine in 'defs'...
+# FIXME: subroutine in 'am-test-lib.sh'...
sed -n -e "
/^DIST_COMMON =.*\\\\$/ {
:loop
diff --git a/t/distcom2.sh b/t/distcom2.sh
index 27b7dc9a3..1fba523d1 100755
--- a/t/distcom2.sh
+++ b/t/distcom2.sh
@@ -18,7 +18,7 @@
# Report from Pavel Roskin. Report of problems with '--no-force' from
# Scott James Remnant (Debian #206299)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
@@ -52,7 +52,7 @@ for opt in '' --no-force; do
for dir in . subdir; do
# FIXME: the logic of this check and other similar ones in other
# FIXME: 'distcom*.sh' files should be factored out in a common
- # FIXME: subroutine in 'defs'...
+ # FIXME: subroutine in 'am-test-lib.sh'...
sed -n -e "
/^DIST_COMMON =.*\\\\$/ {
:loop
diff --git a/t/distcom3.sh b/t/distcom3.sh
index a2ffe0b0c..35dc73908 100755
--- a/t/distcom3.sh
+++ b/t/distcom3.sh
@@ -17,7 +17,7 @@
# Test to make sure that non-existing common files are distributed
# if they are buildable.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
README:
diff --git a/t/distcom4.sh b/t/distcom4.sh
index 8786ca2cb..04e9cdc88 100755
--- a/t/distcom4.sh
+++ b/t/distcom4.sh
@@ -18,9 +18,8 @@
# This tries to distribute a file from a subdirectory, without
# Makefile in that directory. 'distcom5.sh' performs the same
# test with a Makefile in the directory.
-# Also make sure that README appears first in DIST_COMMON.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([tests/autoconf:tests/wrapper.in],
@@ -71,7 +70,5 @@ cat dc.txt # For debugging.
test 1 -eq $(grep -c tests dc.txt)
grep configure dc.txt
-# README must come first.
-grep 'DIST_COMMON = README' Makefile.in
:
diff --git a/t/distcom5.sh b/t/distcom5.sh
index 6a2c7366e..29ea76c09 100755
--- a/t/distcom5.sh
+++ b/t/distcom5.sh
@@ -19,7 +19,7 @@
# a Makefile in that directory. 'distcom4.sh' performs the same
# test without Makefile in the directory.
-. ./defs || exit 1
+. test-init.sh
extract_distcommon ()
{
diff --git a/t/distdir.sh b/t/distdir.sh
index 9600746b2..d4694fbc8 100755
--- a/t/distdir.sh
+++ b/t/distdir.sh
@@ -21,7 +21,7 @@
# Also test DISTFILES containing a directory and a file in it,
# and repeated directories.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/disthook.sh b/t/disthook.sh
index 6fefacbea..68e6f107b 100755
--- a/t/disthook.sh
+++ b/t/disthook.sh
@@ -16,7 +16,7 @@
# Check that 'dist-hook' works. See automake bug#10878.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/distlinks.sh b/t/distlinks.sh
index 7d05b6eeb..35b8f3f98 100755
--- a/t/distlinks.sh
+++ b/t/distlinks.sh
@@ -17,7 +17,7 @@
# Check that distributed symlinks in the source tree will be expanded
# as regular files in $(distdir).
-. ./defs || exit 1
+. test-init.sh
echo text > file
diff --git a/t/distlinksbrk.sh b/t/distlinksbrk.sh
index eccfd9c70..b549374aa 100755
--- a/t/distlinksbrk.sh
+++ b/t/distlinksbrk.sh
@@ -17,7 +17,7 @@
# Check that distributed broken symlinks cause 'make dist' to fail, and
# to do so with (mostly) meaningful diagnostic.
-. ./defs || exit 1
+. test-init.sh
# We need, for our broken symlinks, names that make it hard to get false
# positives when grepping make output to look for them.
diff --git a/t/distname.sh b/t/distname.sh
index 19806cef0..0b1b54151 100755
--- a/t/distname.sh
+++ b/t/distname.sh
@@ -18,7 +18,7 @@
# From Rainer Orth.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_SRCDIR([a.c])
diff --git a/t/dmalloc.sh b/t/dmalloc.sh
index 3f37eb5ab..ff2d05ea5 100755
--- a/t/dmalloc.sh
+++ b/t/dmalloc.sh
@@ -16,7 +16,7 @@
# Simple checks on the 'AM_WITH_DMALLOC' macro.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_HEADERS([config.h])
diff --git a/t/doc-parsing-buglets-colneq-subst.sh b/t/doc-parsing-buglets-colneq-subst.sh
index f099f0224..ddf37d090 100755
--- a/t/doc-parsing-buglets-colneq-subst.sh
+++ b/t/doc-parsing-buglets-colneq-subst.sh
@@ -22,7 +22,7 @@
# See: <http://lists.gnu.org/archive/html/automake/2010-08/msg00074.html>
# or: <http://thread.gmane.org/gmane.comp.sysutils.automake.general/11943/focus=11962>
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<'END'
$(FOO:=x): bar
diff --git a/t/doc-parsing-buglets-tabs.sh b/t/doc-parsing-buglets-tabs.sh
index 8c9ea4d35..eb51431bc 100755
--- a/t/doc-parsing-buglets-tabs.sh
+++ b/t/doc-parsing-buglets-tabs.sh
@@ -20,7 +20,7 @@
# If you cause some parts of this test to fail, chances are that you've
# improved the Automake parser ;-)
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<END
.PHONY: test
diff --git a/t/dollar.sh b/t/dollar.sh
index e62f42b32..642c07fe0 100755
--- a/t/dollar.sh
+++ b/t/dollar.sh
@@ -21,7 +21,7 @@
# Require GNU make for this test. SunOS Make does not support
# '$$' in a target or a dependency (it outputs the empty string instead).
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/dollarvar.sh b/t/dollarvar.sh
index f28ce04dd..43fc043fc 100755
--- a/t/dollarvar.sh
+++ b/t/dollarvar.sh
@@ -22,7 +22,7 @@
# containing a '$' on the left hand side of an assignment are not
# portable in practice, even though POSIX allows them. :-/
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am <<'EOF'
x = 1
@@ -35,6 +35,7 @@ blo = $(foo${x})
EOF
$ACLOCAL
+
AUTOMAKE_fails -Wportability
grep 'Makefile.am:2' stderr
grep 'Makefile.am:3' stderr
@@ -43,15 +44,7 @@ grep 'Makefile.am:5' stderr
grep 'Makefile.am:6' stderr
grep 'Makefile.am:7' stderr
-# On the other hand, if we allow 'silent-rules' mode, then we need to
-# allow recursive variable expansion, too.
-
-# This should work with the AM_SILENT_RULES macro.
-$sleep
-echo 'AM_SILENT_RULES' >> configure.ac
-
-$ACLOCAL --force
-AUTOMAKE_fails -Wportability
+AUTOMAKE_fails -Wportability -Wno-portability-recursive
grep 'Makefile.am:2' stderr
grep 'Makefile.am:3' stderr
grep 'Makefile.am:4' stderr
diff --git a/t/dollarvar2.sh b/t/dollarvar2.sh
index 1703ceb35..7269ffdb3 100755
--- a/t/dollarvar2.sh
+++ b/t/dollarvar2.sh
@@ -17,7 +17,7 @@
# Test to make sure that -Wportability turns on portability-recursive,
# likewise for -Wno-...
-. ./defs || exit 1
+. test-init.sh
#
# First, try a setup where we have a 'portability-recursive' warning,
diff --git a/t/double.sh b/t/double.sh
index 6e1b96fee..403e86344 100755
--- a/t/double.sh
+++ b/t/double.sh
@@ -17,7 +17,7 @@
# Test to make sure listing a program twice is ok.
# Report from Manu Rouat.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/dup2.sh b/t/dup2.sh
index 82d341cf1..12419b9f6 100755
--- a/t/dup2.sh
+++ b/t/dup2.sh
@@ -16,7 +16,7 @@
# Make sure aclocal only warns about definitions overridden by acinclude.m4.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_FUNC_STRTOD
diff --git a/t/else.sh b/t/else.sh
index 4bf82f6dc..072a40b46 100755
--- a/t/else.sh
+++ b/t/else.sh
@@ -16,7 +16,7 @@
# Test to make sure line numbers are correct in some error reports.
-. ./defs || exit 1
+. test-init.sh
echo 'AM_CONDITIONAL(FOO, true)' >> configure.ac
diff --git a/t/empty-data-primary.sh b/t/empty-data-primary.sh
index a8e1b1678..dd285f000 100755
--- a/t/empty-data-primary.sh
+++ b/t/empty-data-primary.sh
@@ -17,7 +17,7 @@
# Test for bug where if the list of installables is empty, invalid sh
# code is generated.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >>configure.ac
echo 'data_DATA =' >Makefile.am
diff --git a/t/empty-sources-primary.tap b/t/empty-sources-primary.tap
index 3e5b3f400..5f09e6f91 100755
--- a/t/empty-sources-primary.tap
+++ b/t/empty-sources-primary.tap
@@ -17,7 +17,7 @@
# A test for missing _SOURCES variable. Also test to make sure empty
# _SOURCES suppresses assumption about default name.
-. ./defs || exit 1
+. test-init.sh
plan_ 5
diff --git a/t/exdir.sh b/t/exdir.sh
index 0c249e459..7ebe05685 100755
--- a/t/exdir.sh
+++ b/t/exdir.sh
@@ -16,7 +16,7 @@
# Check to make sure new extended directory mechanism works.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
htmldir = $(prefix)/html
diff --git a/t/exdir2.sh b/t/exdir2.sh
index cf17f58ec..ac427dab6 100755
--- a/t/exdir2.sh
+++ b/t/exdir2.sh
@@ -16,7 +16,7 @@
# Test to make sure undefined directories are invalid.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
quuz_DATA = zot.html
diff --git a/t/exdir3.sh b/t/exdir3.sh
index 6d602cbb9..e4ed0950c 100755
--- a/t/exdir3.sh
+++ b/t/exdir3.sh
@@ -16,7 +16,7 @@
# Test to make sure pkgdatadir can be overridden via AC_SUBST.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_SUBST([pkgdatadir], ["FOO"])
diff --git a/t/exeext.sh b/t/exeext.sh
index 1eb42564c..f0850c6ee 100755
--- a/t/exeext.sh
+++ b/t/exeext.sh
@@ -22,7 +22,7 @@
# aren't left around. Report from Jim Meyering.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/exeext2.sh b/t/exeext2.sh
index 956acff2e..606d81a15 100755
--- a/t/exeext2.sh
+++ b/t/exeext2.sh
@@ -16,7 +16,7 @@
# Make sure no-exeext option works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/exeext3.sh b/t/exeext3.sh
index e12462a7f..6d999043b 100755
--- a/t/exeext3.sh
+++ b/t/exeext3.sh
@@ -16,7 +16,7 @@
# Make sure we can override a program rule.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/exeext4.sh b/t/exeext4.sh
index 6d8bc88ea..bd455e092 100755
--- a/t/exeext4.sh
+++ b/t/exeext4.sh
@@ -18,7 +18,7 @@
# programs, but not to @substitutions@.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND], [test -n "$cond"])
diff --git a/t/exsource.sh b/t/exsource.sh
index 4a308cfd1..4494dae26 100755
--- a/t/exsource.sh
+++ b/t/exsource.sh
@@ -17,7 +17,7 @@
# Test to make sure EXTRA_..._SOURCES actually works.
# Bug report from Henrik Frystyk Nielsen.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/ext.sh b/t/ext.sh
index e1e890369..3e10491e3 100755
--- a/t/ext.sh
+++ b/t/ext.sh
@@ -16,18 +16,13 @@
# Test to make sure extensions are set correctly for various languages.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_F77
AC_PROG_FC
AC_PROG_OBJC
-# FIXME: this is to cater to older autoconf; remove this once we
-# FIXME: automake requires Autoconf 2.65 or later.
-m4_ifdef([AC_PROG_OBJCXX], [AC_PROG_OBJCXX], [
- AC_SUBST([OBJCXX], [whocares])
- AM_CONDITIONAL([am__fastdepOBJCXX], [whocares])
-])
+AC_PROG_OBJCXX
AM_PROG_UPC
END
diff --git a/t/ext2.sh b/t/ext2.sh
index 7b97c8542..79114d652 100755
--- a/t/ext2.sh
+++ b/t/ext2.sh
@@ -18,7 +18,7 @@
# Using different extensions for the same language should not
# output the build rules several times.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CXX
diff --git a/t/ext3.sh b/t/ext3.sh
index c32a3e3d3..812d3206b 100755
--- a/t/ext3.sh
+++ b/t/ext3.sh
@@ -20,7 +20,7 @@
# In both cases, we don't try to create a rule; but we shouldn't
# fail either, because magic might be happening behind our back.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
END
diff --git a/t/extra-portability.sh b/t/extra-portability.sh
index fffd6d3d6..0303ba3db 100755
--- a/t/extra-portability.sh
+++ b/t/extra-portability.sh
@@ -20,7 +20,7 @@
# 2. '-Wno-portability' must imply '-Wno-extra-portability'.
# 3. '-Wall' must imply '-Wextra-portability'.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE --foreign -Werror"
diff --git a/t/extra-portability2.sh b/t/extra-portability2.sh
index e87dde0fb..a82fa47ce 100755
--- a/t/extra-portability2.sh
+++ b/t/extra-portability2.sh
@@ -17,7 +17,7 @@
# Make sure that extra-portability warnings are not enabled by --gnits,
# --gnu and --foreign.
-. ./defs || exit 1
+. test-init.sh
# We want complete control over automake options.
AUTOMAKE=$am_original_AUTOMAKE
diff --git a/t/extra-portability3.sh b/t/extra-portability3.sh
index 2412b4f7b..4f84422a9 100755
--- a/t/extra-portability3.sh
+++ b/t/extra-portability3.sh
@@ -17,7 +17,7 @@
# Check interactions between the 'portability-recursive' and
# 'extra-portability' warning categories.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE --foreign -Werror"
diff --git a/t/extra-programs-empty.sh b/t/extra-programs-empty.sh
index 189fac4a1..2975d7dbd 100755
--- a/t/extra-programs-empty.sh
+++ b/t/extra-programs-empty.sh
@@ -18,7 +18,7 @@
# This check has been introduced in commit 'Release-1-9-254-g9d0eaef'
# into the former test 'subst2.test'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([Makefile2 Makefile3])
diff --git a/t/extra.sh b/t/extra.sh
index 09937061d..2442faf5b 100755
--- a/t/extra.sh
+++ b/t/extra.sh
@@ -19,7 +19,7 @@
# targets should always be generated. However, they should not be
# built by default.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/extra10.sh b/t/extra10.sh
index db34e1117..bd49d3c58 100755
--- a/t/extra10.sh
+++ b/t/extra10.sh
@@ -20,7 +20,7 @@
# with the involvement of the $(wildcard) GNU make builtin.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/extra11.sh b/t/extra11.sh
index f5319c61b..6d42d8df2 100755
--- a/t/extra11.sh
+++ b/t/extra11.sh
@@ -18,7 +18,7 @@
# Suggested by observations from Braden McDaniel.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/extra12.sh b/t/extra12.sh
index a2a797b0d..0dc817c62 100755
--- a/t/extra12.sh
+++ b/t/extra12.sh
@@ -19,7 +19,7 @@
# Suggested by observations from Braden McDaniel.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/extra2.sh b/t/extra2.sh
index e5576a53e..e3eb5a289 100755
--- a/t/extra2.sh
+++ b/t/extra2.sh
@@ -16,7 +16,7 @@
# Check to make sure EXTRA_foo_SOURCES not defined unnecessarily.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/extra3.sh b/t/extra3.sh
index 02ac789f7..1dd94b52b 100755
--- a/t/extra3.sh
+++ b/t/extra3.sh
@@ -16,7 +16,7 @@
# Check to make sure EXTRA_DATA not required.
-. ./defs || exit 1
+. test-init.sh
echo 'AC_SUBST(CODICIL)' >> configure.ac
diff --git a/t/extra4.sh b/t/extra4.sh
index 286540aa7..248a25b83 100755
--- a/t/extra4.sh
+++ b/t/extra4.sh
@@ -16,7 +16,7 @@
# Check to make sure EXTRA_DATA can be specified.
-. ./defs || exit 1
+. test-init.sh
echo 'AC_SUBST(CODICIL)' >> configure.ac
diff --git a/t/extra5.sh b/t/extra5.sh
index abe8e13c8..51bbb5002 100755
--- a/t/extra5.sh
+++ b/t/extra5.sh
@@ -17,7 +17,7 @@
# Check to make sure EXTRA_DIST can contain a directory from $buildir.
# From Dean Povey.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/extra6.sh b/t/extra6.sh
index b5308afd2..e3f0a3df2 100755
--- a/t/extra6.sh
+++ b/t/extra6.sh
@@ -17,7 +17,7 @@
# Check to make sure EXTRA_DIST can contain a directory or
# a subdirectory, in $(builddir) or $(srcdir).
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/extra7.sh b/t/extra7.sh
index b75a0a775..1cd5f6f59 100755
--- a/t/extra7.sh
+++ b/t/extra7.sh
@@ -19,7 +19,7 @@
# $(srcdir)/X and ./X, with the files from the later overriding the
# files from the former.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/extra8.sh b/t/extra8.sh
index 0a4f818c5..38234a93d 100755
--- a/t/extra8.sh
+++ b/t/extra8.sh
@@ -18,7 +18,7 @@
# and that referring to the same program with inconsistent addition
# of $(EXEEXT) works, too.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/extra9.sh b/t/extra9.sh
index c0bb0f336..96c3122b6 100755
--- a/t/extra9.sh
+++ b/t/extra9.sh
@@ -18,7 +18,7 @@
# are missing; but only if the former is not AC_SUBSTed itself
# (lib_LIBRARIES is in the same boat here).
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/extradep.sh b/t/extradep.sh
index 75daf2eb4..18879f3d1 100755
--- a/t/extradep.sh
+++ b/t/extradep.sh
@@ -17,7 +17,7 @@
# Test EXTRA_*_DEPENDENCIES. See extradep2 for libtool variant.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/extradep2.sh b/t/extradep2.sh
index eecf74fc2..72217e72e 100755
--- a/t/extradep2.sh
+++ b/t/extradep2.sh
@@ -17,7 +17,7 @@
# Test EXTRA_*_DEPENDENCIES, libtool version; see 'extradep.sh'.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/f90only.sh b/t/f90only.sh
index 3d23628e3..7f938afbb 100755
--- a/t/f90only.sh
+++ b/t/f90only.sh
@@ -17,7 +17,7 @@
# Make sure programs with only Fortran 90 source are handled properly.
# (copied from 'fonly.sh') Mike Nolta <mrnolta@princeton.edu>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_FC
diff --git a/t/flavor.sh b/t/flavor.sh
index 8999795ce..383c5c7ab 100755
--- a/t/flavor.sh
+++ b/t/flavor.sh
@@ -18,7 +18,7 @@
# options like '--ignore-deps' and '--silent-rules' are preserved across
# automake reruns.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_MAINTAINER_MODE
@@ -57,21 +57,4 @@ for flavor in --gnits --gnu --foreign --ignore-deps; do
done
-# Cygnus mode is deprecated now, and must be handled separately.
-$AUTOMAKE --cygnus -Wno-obsolete
-./configure --enable-maintainer-mode
-grep " --cygnus" Makefile
-$MAKE
-# Two code paths in configure.am:
-# - either a file in $(am__configure_deps) has been updated ...
-$sleep
-touch aclocal.m4
-$MAKE
-grep " --cygnus" Makefile
-# - ... or not; i.e., Makefile.am or an included file has.
-$sleep
-touch Makefile.am
-$MAKE
-grep " --cygnus" Makefile
-
:
diff --git a/t/flibs.sh b/t/flibs.sh
index d51849f39..10b8e8e90 100755
--- a/t/flibs.sh
+++ b/t/flibs.sh
@@ -17,7 +17,7 @@
# Make sure 'AC_F77_LIBRARY_LDFLAGS' works properly.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_F77
diff --git a/t/fn99.sh b/t/fn99.sh
index f1351bba4..80f9b0581 100755
--- a/t/fn99.sh
+++ b/t/fn99.sh
@@ -16,7 +16,7 @@
# Check the filename-length-max=99 option.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/fn99subdir.sh b/t/fn99subdir.sh
index eb289b48b..0e73263b4 100755
--- a/t/fn99subdir.sh
+++ b/t/fn99subdir.sh
@@ -17,7 +17,7 @@
# PR 507: Check the filename-length-max=99 option
# in conjunction with AC_CONFIG_SUBDIRS.
-. ./defs || exit 1
+. test-init.sh
# The name is so that 99 is exactly hit (including final \0).
subdirname='cnfsubdir'
diff --git a/t/fnoc.sh b/t/fnoc.sh
index f0b2518be..9f7abdd3b 100755
--- a/t/fnoc.sh
+++ b/t/fnoc.sh
@@ -18,7 +18,7 @@
# C-specific code.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_F77
diff --git a/t/fonly.sh b/t/fonly.sh
index 98541872d..796a09386 100755
--- a/t/fonly.sh
+++ b/t/fonly.sh
@@ -17,7 +17,7 @@
# Make sure programs with only Fortran 77 source are handled properly.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_F77
diff --git a/t/forcemiss.sh b/t/forcemiss.sh
index 74da2d7f0..4e006843f 100755
--- a/t/forcemiss.sh
+++ b/t/forcemiss.sh
@@ -16,7 +16,7 @@
# Test to make sure that 'automake --force-missing' works.
-. ./defs || exit 1
+. test-init.sh
rm -f install-sh
diff --git a/t/forcemiss2.sh b/t/forcemiss2.sh
index 8c6369aeb..17aa06d38 100755
--- a/t/forcemiss2.sh
+++ b/t/forcemiss2.sh
@@ -17,7 +17,7 @@
# Test to make sure that 'automake --force-missing' works, even with
# symlinked files.
-. ./defs || exit 1
+. test-init.sh
rm -f install-sh
diff --git a/t/fort1.sh b/t/fort1.sh
index d118e9fad..10753e68d 100755
--- a/t/fort1.sh
+++ b/t/fort1.sh
@@ -17,7 +17,7 @@
# Test that Automake suggests using AC_PROG_F77/FC if Fortran sources
# are used.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am <<END
bin_PROGRAMS = hello
diff --git a/t/fort2.sh b/t/fort2.sh
index fbe05b761..b6c2ead60 100755
--- a/t/fort2.sh
+++ b/t/fort2.sh
@@ -19,7 +19,7 @@
# Cf. 'fort1.sh' and 'link_f90_only.sh'.
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/fort4.sh b/t/fort4.sh
index ee8377306..7f792561c 100755
--- a/t/fort4.sh
+++ b/t/fort4.sh
@@ -19,7 +19,7 @@
# For now, require the GNU compilers (to avoid some Libtool/Autoconf
# issues).
required='g77 gfortran'
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/fort5.sh b/t/fort5.sh
index c5be2ab4f..3e65a1448 100755
--- a/t/fort5.sh
+++ b/t/fort5.sh
@@ -19,7 +19,7 @@
# For now, require the GNU compilers (to avoid some Libtool/Autoconf
# issues).
required='libtoolize g77 gfortran'
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/fortdep.sh b/t/fortdep.sh
index 8eff4e9c1..99ebb039e 100755
--- a/t/fortdep.sh
+++ b/t/fortdep.sh
@@ -17,7 +17,7 @@
# Test to make sure dependency tracking doesn't interfere with Fortran.
# For PR 75.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_SRCDIR([foo.f])
diff --git a/t/gcj.sh b/t/gcj.sh
index d069ec761..f0a389750 100755
--- a/t/gcj.sh
+++ b/t/gcj.sh
@@ -16,7 +16,7 @@
# Test of compiled java.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
_AM_DEPENDENCIES([GCJ])
diff --git a/t/gcj2.sh b/t/gcj2.sh
index 8da82a199..3aab7a378 100755
--- a/t/gcj2.sh
+++ b/t/gcj2.sh
@@ -16,7 +16,7 @@
# Make sure '..' invalid in subdir .o's.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
_AM_DEPENDENCIES(GCJ)
diff --git a/t/gcj3.sh b/t/gcj3.sh
index c4b45740c..96d0d14ec 100755
--- a/t/gcj3.sh
+++ b/t/gcj3.sh
@@ -16,7 +16,7 @@
# Make sure dependency tracking works for java.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
_AM_DEPENDENCIES([GCJ])
diff --git a/t/gcj4.sh b/t/gcj4.sh
index 299e1c1e4..680e59bec 100755
--- a/t/gcj4.sh
+++ b/t/gcj4.sh
@@ -17,7 +17,7 @@
# Make sure dependency tracking works for Java.
required=gcj
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_GCJ
diff --git a/t/gcj5.sh b/t/gcj5.sh
index 4df105986..9409ee8cc 100755
--- a/t/gcj5.sh
+++ b/t/gcj5.sh
@@ -16,7 +16,7 @@
# Make sure Automake suggests AM_PROG_GCJ when GCJ is needed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
_AM_DEPENDENCIES(GCJ)
diff --git a/t/gcj6.sh b/t/gcj6.sh
index 60023c2c9..fc9fbe684 100755
--- a/t/gcj6.sh
+++ b/t/gcj6.sh
@@ -17,7 +17,7 @@
# AM_PROG_GCJ should cause OBJEXT and EXEEXT to be set.
required='gcj'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_GCJ
diff --git a/t/get-sysconf.sh b/t/get-sysconf.sh
index 60f62cdff..f8026658c 100755
--- a/t/get-sysconf.sh
+++ b/t/get-sysconf.sh
@@ -20,7 +20,7 @@
# we won't have to ask him for more information to start analyzing the
# failure (that had happened too many times in the past!).
-. ./defs || exit 1
+. test-init.sh
st=0
if test -d "$am_top_srcdir"/.git; then
diff --git a/t/gettext-macros.sh b/t/gettext-macros.sh
index a42c031d4..1c774e723 100755
--- a/t/gettext-macros.sh
+++ b/t/gettext-macros.sh
@@ -18,7 +18,7 @@
# to the test cases requiring them.
# See also automake bug#9807.
-. ./defs || exit 1
+. test-init.sh
extract_program_version ()
{
@@ -78,8 +78,6 @@ else
fi
fi
-. ./get.sh
-
cat >> get.sh <<'END'
# Even recent versions of gettext used the now-obsolete 'AM_PROG_MKDIR_P'
# m4 macro. So we need the following to avoid spurious errors.
@@ -87,6 +85,8 @@ ACLOCAL="$ACLOCAL -Wno-obsolete"
AUTOMAKE="$AUTOMAKE -Wno-obsolete"
END
+. ./get.sh
+
$ACLOCAL --force -I m4 || cat >> get.sh <<'END'
# We need to use '-Wno-syntax', since we do not want our test suite
# to fail merely because some third-party '.m4' file is underquoted.
diff --git a/t/gettext.sh b/t/gettext.sh
index a1925f17b..7cf62efab 100755
--- a/t/gettext.sh
+++ b/t/gettext.sh
@@ -17,7 +17,7 @@
# Check gettext support.
required='gettext'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AM_GNU_GETTEXT
diff --git a/t/gettext2.sh b/t/gettext2.sh
index f3d91b04f..39e33bfa3 100755
--- a/t/gettext2.sh
+++ b/t/gettext2.sh
@@ -18,7 +18,7 @@
# PR/338, reported by Charles Wilson.
required='gettext'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AM_GNU_GETTEXT([external])
diff --git a/t/gettext3.sh b/t/gettext3.sh
index bfeb92218..fe2fcdc60 100755
--- a/t/gettext3.sh
+++ b/t/gettext3.sh
@@ -17,7 +17,7 @@
# Check gettext 'AM_GNU_GETTEXT_INTL_SUBDIR' support.
required='gettext'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AM_GNU_GETTEXT([external])
diff --git a/t/gnits.sh b/t/gnits.sh
index f3de3b674..db067b885 100755
--- a/t/gnits.sh
+++ b/t/gnits.sh
@@ -16,7 +16,7 @@
# Test to ensure --gnits version checking is correct.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [3.5.3.2])
diff --git a/t/gnits2.sh b/t/gnits2.sh
index 337c0ae5e..61243f374 100755
--- a/t/gnits2.sh
+++ b/t/gnits2.sh
@@ -17,7 +17,7 @@
# Test to ensure std-options checking is correct.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/gnits3.sh b/t/gnits3.sh
index 0b67253ef..0fe94d517 100755
--- a/t/gnits3.sh
+++ b/t/gnits3.sh
@@ -17,7 +17,7 @@
# Check that AM_INSTALLCHECK_STD_OPTIONS_EXEMPT works.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/gnumake.sh b/t/gnumake.sh
index ed660a2ff..a1447554b 100755
--- a/t/gnumake.sh
+++ b/t/gnumake.sh
@@ -18,7 +18,7 @@
# Report from Braden McDaniel.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/GNUmakefile])
diff --git a/t/gnuwarn.sh b/t/gnuwarn.sh
index 1e468a09f..4a1c03b96 100755
--- a/t/gnuwarn.sh
+++ b/t/gnuwarn.sh
@@ -16,7 +16,7 @@
# Check that Automake warns about user variables being overridden.
-. ./defs || exit 1
+. test-init.sh
# We need (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE -Werror"
diff --git a/t/gnuwarn2.sh b/t/gnuwarn2.sh
index 0cdc71009..5667e279b 100755
--- a/t/gnuwarn2.sh
+++ b/t/gnuwarn2.sh
@@ -16,7 +16,7 @@
# Check diagnostics about no-installman being disallowed in 'gnu'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([gnuwarn2], [1.0])
diff --git a/t/hdr-vars-defined-once.sh b/t/hdr-vars-defined-once.sh
index 92279d704..338007497 100755
--- a/t/hdr-vars-defined-once.sh
+++ b/t/hdr-vars-defined-once.sh
@@ -17,7 +17,7 @@
# Test to make sure header vars defined only once when including.
# Report from Marcus G. Daniels.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/header.sh b/t/header.sh
index 60d8ed1e5..a4550f99b 100755
--- a/t/header.sh
+++ b/t/header.sh
@@ -23,7 +23,7 @@
# in the HEADERS variable for *all* generated Makefile.ins in the
# project.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([MY_HEADERS])
diff --git a/t/help-depend.sh b/t/help-depend.sh
index 9a27d0b0a..12e89bb9b 100755
--- a/t/help-depend.sh
+++ b/t/help-depend.sh
@@ -18,7 +18,7 @@
# the configure help screen.
# Keep this in sync with sister test 'help-depend2.sh'
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help-depend2.sh b/t/help-depend2.sh
index 5cf1273e2..838e961a0 100755
--- a/t/help-depend2.sh
+++ b/t/help-depend2.sh
@@ -18,7 +18,7 @@
# dependency tracking, it adds proper text to the configure help screen.
# Keep this in sync with sister test 'help-depend.sh'
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help-dmalloc.sh b/t/help-dmalloc.sh
index 7d2f10cdc..30f360209 100755
--- a/t/help-dmalloc.sh
+++ b/t/help-dmalloc.sh
@@ -17,7 +17,7 @@
# Make sure that our macro 'AM_WITH_DMALLOC' adds proper text to
# the configure help screen.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help-init.sh b/t/help-init.sh
index 0ae47dd79..3398c2114 100755
--- a/t/help-init.sh
+++ b/t/help-init.sh
@@ -17,7 +17,7 @@
# Make sure that our grand macro 'AM_INIT_AUTOMAKE' add proper text
# to the configure help screen.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help-lispdir.sh b/t/help-lispdir.sh
index 2dd9df36b..23ad0bdde 100755
--- a/t/help-lispdir.sh
+++ b/t/help-lispdir.sh
@@ -17,7 +17,7 @@
# Make sure that our macro 'AM_PATH_LISPDIR' adds proper text to
# the configure help screen.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help-multilib.sh b/t/help-multilib.sh
deleted file mode 100755
index d4f64024a..000000000
--- a/t/help-multilib.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Make sure that our macro 'AM_ENABLE_MULTILIB' adds proper text to
-# the configure help screen.
-# FIXME: the features tested by this script has been moved in contrib.
-# FIXME: We should move this script accordingly.
-
-. ./defs || exit 1
-
-cat > configure.ac <<END
-AC_INIT([$me], [1.0])
-AM_ENABLE_MULTILIB
-END
-
-cat "$am_top_srcdir"/contrib/multilib/multi.m4 > aclocal.m4
-$AUTOCONF
-
-grep_configure_help --enable-multilib ' many library versions \(default\)'
-
-:
diff --git a/t/help-python.sh b/t/help-python.sh
index dcbcfe898..1c3e5a988 100755
--- a/t/help-python.sh
+++ b/t/help-python.sh
@@ -17,7 +17,7 @@
# Make sure that macro 'AM_PATH_PYTHON' adds proper text to the
# configure help screen.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help-silent.sh b/t/help-silent.sh
index b7e805e76..76cae9b1f 100755
--- a/t/help-silent.sh
+++ b/t/help-silent.sh
@@ -14,23 +14,20 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Make sure that our macro 'AM_SILENT_RULES' adds proper text to
-# the configure help screen.
+# Make sure configure options relative to automake silent rules are
+# added to the configure help screen.
-. ./defs || exit 1
-
-cat > configure.ac <<END
-AC_INIT([$me], [1.0])
-AM_SILENT_RULES
-END
+. test-init.sh
+: > Makefile.am
$ACLOCAL
-mv -f configure.ac configure.tmpl
+cp configure.ac configure.tmpl
-for args in '' '([])' '([yes])' '([no])'; do
- sed "s/AM_SILENT_RULES.*/&$args/" configure.tmpl >configure.ac
- cat configure.ac
+for args in '' 'yes' 'no'; do
+ cp -f configure.tmpl configure.ac
+ test x"$args" = x || echo "AM_SILENT_RULES([$args])/" >> configure.ac
+ cat configure.ac # For debugging.
$AUTOCONF --force
grep_configure_help --enable-silent-rules \
' less verbose build.*\(undo.*"make V=1".*\)'
diff --git a/t/help-upc.sh b/t/help-upc.sh
index 822eadf8c..6ccd96211 100755
--- a/t/help-upc.sh
+++ b/t/help-upc.sh
@@ -17,7 +17,7 @@
# Make sure that our macro 'AM_PROG_UPC' adds proper text to
# the configure help screen.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/help.sh b/t/help.sh
index 2c8175c46..961fcea9b 100755
--- a/t/help.sh
+++ b/t/help.sh
@@ -17,7 +17,7 @@
# Make sure --help and --version work, even when no configure.ac nor
# configure.in is in the current directory.
-. ./defs || exit 1
+. test-init.sh
# Ensure we run in an empty directory.
mkdir emptydir
diff --git a/t/help2.sh b/t/help2.sh
index fad2b29fd..e4a8dffc4 100755
--- a/t/help2.sh
+++ b/t/help2.sh
@@ -16,7 +16,7 @@
# Make sure --help and --version work, even when the current directory
# contains a broken configure.ac and a broken acinclude.m4.
-. ./defs || exit 1
+. test-init.sh
# Ensure we run in a new, clean directory.
mkdir cleandir
diff --git a/t/help3.sh b/t/help3.sh
index 368c45640..14d5f8ecc 100755
--- a/t/help3.sh
+++ b/t/help3.sh
@@ -16,7 +16,7 @@
# Make sure --help and --version takes precedence over other options.
-. ./defs || exit 1
+. test-init.sh
# We must have full control over the content of the current directory.
mkdir cleandir
diff --git a/t/help4.sh b/t/help4.sh
index 775a3abbe..98c8f9a4c 100755
--- a/t/help4.sh
+++ b/t/help4.sh
@@ -17,7 +17,7 @@
# Check that the first among --help and --version to be specified on
# the command line takes precedence over the following one.
-. ./defs || exit 1
+. test-init.sh
# Ensure we run in an empty directory.
mkdir emptydir
diff --git a/t/hfs.sh b/t/hfs.sh
index fae069f5e..f794f5c20 100755
--- a/t/hfs.sh
+++ b/t/hfs.sh
@@ -20,7 +20,7 @@
# Darwin).
# Report from Peter O'Gorman.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >>configure.ac
: >CHANGELOG
diff --git a/t/implicit.sh b/t/implicit.sh
index 86d6032a7..1d53facbc 100755
--- a/t/implicit.sh
+++ b/t/implicit.sh
@@ -17,7 +17,7 @@
# Test to make sure implicit .o's are listed as appropriate. Report
# from Henrik Frystyk Nielsen.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/init.sh b/t/init.sh
index 94cdd649a..0d047bdb7 100755
--- a/t/init.sh
+++ b/t/init.sh
@@ -17,7 +17,7 @@
# Make sure we give a sensible error message when AC_INIT and
# AM_INIT_AUTOMAKE are both given less than two arguments.
-. ./defs || exit 1
+. test-init.sh
for ac_init_args in '' '([x])'; do
for am_init_args in '' '([1.10])'; do
diff --git a/t/init2.sh b/t/init2.sh
index fa2a06573..94af06fae 100755
--- a/t/init2.sh
+++ b/t/init2.sh
@@ -17,7 +17,7 @@
# Make sure we give a sensible error message when AM_INIT_AUTOMAKE
# contains junk.
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<END
AC_INIT([init2], [1.0])
diff --git a/t/insh2.sh b/t/insh2.sh
index 38bb46a9a..a378a2687 100755
--- a/t/insh2.sh
+++ b/t/insh2.sh
@@ -16,7 +16,7 @@
# Test for bug where install-sh not included in distribution.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/install-info-dir.sh b/t/install-info-dir.sh
index abf16e343..c348b5e87 100755
--- a/t/install-info-dir.sh
+++ b/t/install-info-dir.sh
@@ -22,7 +22,7 @@
# FIXME: and could be merged with 'txinfo27.sh'.
required=makeinfo
-. ./defs || exit 1
+. test-init.sh
cwd=$(pwd) || fatal_ "cannot get current working directory"
diff --git a/t/install2.sh b/t/install2.sh
index 96d1c56aa..3aae3c02c 100755
--- a/t/install2.sh
+++ b/t/install2.sh
@@ -18,7 +18,7 @@
# From Pavel Roskin.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/installdir.sh b/t/installdir.sh
index 1cef2c152..2978f5c79 100755
--- a/t/installdir.sh
+++ b/t/installdir.sh
@@ -22,7 +22,7 @@
# installdirs is missing this. Ideally this would be an automatic
# feature of any exported target.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/instdat.sh b/t/instdat.sh
index b6fad9deb..afee3cbeb 100755
--- a/t/instdat.sh
+++ b/t/instdat.sh
@@ -17,7 +17,7 @@
# Test to see if defining INSTALL_DATA causes problems. From EGCS
# list.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_SUBST([INSTALL_DATA])
diff --git a/t/instdat2.sh b/t/instdat2.sh
index 54d26a9fc..5379e8235 100755
--- a/t/instdat2.sh
+++ b/t/instdat2.sh
@@ -17,7 +17,7 @@
# Test that installing under $exec_prefix is handled by install-exec.
# Testing with headers for instance.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am << 'EOF'
# User directories.
diff --git a/t/instdir-cond.sh b/t/instdir-cond.sh
index d0be1a3b1..f6462150c 100755
--- a/t/instdir-cond.sh
+++ b/t/instdir-cond.sh
@@ -17,7 +17,7 @@
# Check against automake bug#10997: directories holding only
# conditionally-installed files should not be created unconditionally.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([ENABLE_FOO], [false])
diff --git a/t/instdir-cond2.sh b/t/instdir-cond2.sh
index 559a7fe85..a5fff9b11 100755
--- a/t/instdir-cond2.sh
+++ b/t/instdir-cond2.sh
@@ -21,7 +21,7 @@
# FIXME: So this test is still xfailing.
# See sister test 'instdir-cond.sh' for the succeeding part.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([ENABLE_FOO], [false])
diff --git a/t/instdir-java.sh b/t/instdir-java.sh
index f31cdb78c..7d7bf3da6 100755
--- a/t/instdir-java.sh
+++ b/t/instdir-java.sh
@@ -17,7 +17,7 @@
# If $(javadir) is the empty string, then nothing should be installed there.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/instdir-lisp.sh b/t/instdir-lisp.sh
index 59bf8b0e4..d37083da4 100755
--- a/t/instdir-lisp.sh
+++ b/t/instdir-lisp.sh
@@ -17,7 +17,7 @@
# If $(lispdir) is the empty string, then nothing should be installed there.
required=emacs
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_PATH_LISPDIR
diff --git a/t/instdir-ltlib.sh b/t/instdir-ltlib.sh
index c6578e24c..2c6deb7bc 100755
--- a/t/instdir-ltlib.sh
+++ b/t/instdir-ltlib.sh
@@ -19,7 +19,7 @@
# This test exercises the libtool code paths.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/instdir-no-empty.sh b/t/instdir-no-empty.sh
index bef179d53..0881fb8e2 100755
--- a/t/instdir-no-empty.sh
+++ b/t/instdir-no-empty.sh
@@ -17,7 +17,7 @@
# An empty "foo_PRIMARY" declaration should *not* cause "make install"
# to create directory $(foodir). See automake bug#10997 and bug#11030.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_SUBST([CC], [whatever])
diff --git a/t/instdir-prog.sh b/t/instdir-prog.sh
index ed0acc130..e59431c2c 100755
--- a/t/instdir-prog.sh
+++ b/t/instdir-prog.sh
@@ -19,7 +19,7 @@
# This test exercises the prog and libs code paths.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/instdir-python.sh b/t/instdir-python.sh
index d57fb4b35..1a20bea28 100755
--- a/t/instdir-python.sh
+++ b/t/instdir-python.sh
@@ -17,7 +17,7 @@
# If $(pythondir) is the empty string, then nothing should be installed there.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_PATH_PYTHON
diff --git a/t/instdir-texi.sh b/t/instdir-texi.sh
index ef6bc2016..d8c575cb3 100755
--- a/t/instdir-texi.sh
+++ b/t/instdir-texi.sh
@@ -17,8 +17,8 @@
# If $(infodir) is the empty string, then nothing should be installed there.
# Likewise for the other install-* targets used for texinfo files.
-required='makeinfo-html tex texi2dvi'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
dvips --help \
|| skip_ "dvips is missing"
diff --git a/t/instdir.sh b/t/instdir.sh
index 6c489fba5..ef45105f2 100755
--- a/t/instdir.sh
+++ b/t/instdir.sh
@@ -18,7 +18,7 @@
# This test only ensures this if $(foo_PRIMARY) is also empty, see
# 'instdir2.sh' and siblings 'instdir-*.sh' for nonempty contents.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_SUBST([foodir], ['${datadir}'/foo])
diff --git a/t/instdir2.sh b/t/instdir2.sh
index 638e25a2b..e777bf65c 100755
--- a/t/instdir2.sh
+++ b/t/instdir2.sh
@@ -18,7 +18,7 @@
# This test ensures this also if $(foo_PRIMARY) is nonempty, see
# 'instdir.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_SUBST([foodir], ['${datadir}'/foo])
diff --git a/t/instexec.sh b/t/instexec.sh
index f394d84a8..dc41c57bf 100755
--- a/t/instexec.sh
+++ b/t/instexec.sh
@@ -17,7 +17,7 @@
# Test for this bug: when a Makefile.am builds nothing, no
# install-exec target is generated.
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/instfail-info.sh b/t/instfail-info.sh
index fea2f5b34..59fb1ebe7 100755
--- a/t/instfail-info.sh
+++ b/t/instfail-info.sh
@@ -20,7 +20,7 @@
# This test has a few sister tests, for java, info, libtool.
required='makeinfo'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AC_OUTPUT
diff --git a/t/instfail-java.sh b/t/instfail-java.sh
index 7211efa6e..ab4c2b420 100755
--- a/t/instfail-java.sh
+++ b/t/instfail-java.sh
@@ -20,7 +20,7 @@
# This is the java sister test of 'instfail.sh'.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/instfail-libtool.sh b/t/instfail-libtool.sh
index 042f07782..d5613b1a9 100755
--- a/t/instfail-libtool.sh
+++ b/t/instfail-libtool.sh
@@ -20,7 +20,7 @@
# This is the libtool sister test of 'instfail.sh'.
required='cc libtool libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AM_PROG_AR
diff --git a/t/instfail.sh b/t/instfail.sh
index 123e08286..98b7a7ae7 100755
--- a/t/instfail.sh
+++ b/t/instfail.sh
@@ -20,7 +20,7 @@
# This test has a few sister tests, for java, info, libtool.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AC_PROG_CC
diff --git a/t/insthook.sh b/t/insthook.sh
index 1b296129f..db243df7b 100755
--- a/t/insthook.sh
+++ b/t/insthook.sh
@@ -16,7 +16,7 @@
# Make sure the install-exec-hook example we give in the manual works.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_PROG_LN_S
diff --git a/t/instman.sh b/t/instman.sh
index 612f9a88a..06166841f 100755
--- a/t/instman.sh
+++ b/t/instman.sh
@@ -17,7 +17,7 @@
# Make sure the MKDIR_P invocation is correct in install-man
# target. Bug reported by Gordon Irlam <gordoni@cygnus.com>.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/instman2.sh b/t/instman2.sh
index 30baf91ef..b124f3624 100755
--- a/t/instman2.sh
+++ b/t/instman2.sh
@@ -17,7 +17,7 @@
# Test to make sure mkinstalldirs invocation correct in install-man
# target. Bug reported by Gordon Irlam <gordoni@cygnus.com>.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
man8_MANS = frob.8
diff --git a/t/instmany-mans.sh b/t/instmany-mans.sh
index 4fd703b5e..1a581bebb 100755
--- a/t/instmany-mans.sh
+++ b/t/instmany-mans.sh
@@ -18,7 +18,7 @@
# This is the mans sister test of 'instmany.sh', see there for details.
-. ./defs || exit 1
+. test-init.sh
# In order to have a useful test on modern systems (which have a high
# limit, if any), use a fake install program that errors out for more
diff --git a/t/instmany-python.sh b/t/instmany-python.sh
index 9cc659ad5..b7a614c21 100755
--- a/t/instmany-python.sh
+++ b/t/instmany-python.sh
@@ -19,7 +19,7 @@
# This is the python sister test of 'instmany.sh', see there for details.
required='python'
-. ./defs || exit 1
+. test-init.sh
limit=2500
subdir=long_subdir_name_with_many_characters
diff --git a/t/instmany.sh b/t/instmany.sh
index 369e23a9e..64005179c 100755
--- a/t/instmany.sh
+++ b/t/instmany.sh
@@ -26,7 +26,7 @@
# For texinfos, we expand names using $(srcdir) in the first place.
# Let's hope nobody uses many texinfos.
-. ./defs || exit 1
+. test-init.sh
# In order to have a useful test on modern systems (which have a high
# limit, if any), use a fake install program that errors out for more
diff --git a/t/instsh.sh b/t/instsh.sh
index e7924b2f9..4a452ba05 100755
--- a/t/instsh.sh
+++ b/t/instsh.sh
@@ -18,7 +18,7 @@
# automake: Makefile.am: required file "../../install-sh" not found; installing
# This also makes sure that install-sh is created in the correct directory.
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
rm -f install-sh
diff --git a/t/instsh2.sh b/t/instsh2.sh
index 9e6182c80..506eee9f3 100755
--- a/t/instsh2.sh
+++ b/t/instsh2.sh
@@ -17,7 +17,7 @@
# Various install-sh checks.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
get_shell_script install-sh
diff --git a/t/instsh3.sh b/t/instsh3.sh
index f8238933a..23334bb62 100755
--- a/t/instsh3.sh
+++ b/t/instsh3.sh
@@ -18,7 +18,7 @@
am_create_testdir=empty
required=non-root
-. ./defs || exit 1
+. test-init.sh
# Solaris /usr/ucb/touch does not accept -t.
touch -t $old_timestamp foo \
diff --git a/t/instspc.tap b/t/instspc.tap
index 2a0fb1009..aace95c66 100755
--- a/t/instspc.tap
+++ b/t/instspc.tap
@@ -19,7 +19,7 @@
# Original report from James Amundson about file names with spaces.
# Other characters added by Paul Eggert.
-. ./defs || exit 99
+. test-init.sh
# Usage: is_in_list ITEM [LIST...]
is_in_list ()
diff --git a/t/interp.sh b/t/interp.sh
index 766e8785c..18d06c182 100755
--- a/t/interp.sh
+++ b/t/interp.sh
@@ -16,7 +16,7 @@
# Test to make sure variable interpolation works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/interp2.sh b/t/interp2.sh
index 5da8a6126..32a357d8c 100755
--- a/t/interp2.sh
+++ b/t/interp2.sh
@@ -17,7 +17,7 @@
# Test to make sure variable interpolation doesn't break other
# features. Report from Joel N. Weber, II.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/java-check.sh b/t/java-check.sh
index c9ae66c10..d4b4f0e80 100755
--- a/t/java-check.sh
+++ b/t/java-check.sh
@@ -19,7 +19,7 @@
# See automake bug#8234.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/java-clean.sh b/t/java-clean.sh
index 5457f1932..a6b465f50 100755
--- a/t/java-clean.sh
+++ b/t/java-clean.sh
@@ -17,7 +17,7 @@
# Test cleaning of Java class files and timestamps.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/java-compile-install.sh b/t/java-compile-install.sh
index 4f78ea883..89749e5f9 100755
--- a/t/java-compile-install.sh
+++ b/t/java-compile-install.sh
@@ -17,7 +17,7 @@
# Test on compilation and installation of Java class files.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/java-compile-run-flat.sh b/t/java-compile-run-flat.sh
index c04f4d997..c4725b0d8 100755
--- a/t/java-compile-run-flat.sh
+++ b/t/java-compile-run-flat.sh
@@ -20,12 +20,12 @@
# 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.sh' do
-# similar checks with a more usual, "nested" setup, and using the newer
-# 'parallel-tests' driver.
+# similar checks with a more usual, "nested" setup, and using the older
+# 'serial-tests' driver.
required='java javac'
am_serial_tests=yes
-. ./defs || exit 1
+. test-init.sh
echo "AC_SUBST([PATH_SEPARATOR], ['$PATH_SEPARATOR'])" >> configure.ac
diff --git a/t/java-compile-run-nested.sh b/t/java-compile-run-nested.sh
index 1448952f5..2d9934596 100755
--- a/t/java-compile-run-nested.sh
+++ b/t/java-compile-run-nested.sh
@@ -18,14 +18,14 @@
# 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.sh' 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.
+# components/aspects are separated into different subdirectories), and
+# uses the parallel testsuite driver.
+# The sister test 'java-compile-run-flat.sh' do similar checks with
+# a "flat" setup (i.e., everything in the top-level directory), and
+# forcing the use of the older 'serial-tests' driver.
required='java javac'
-. ./defs || exit 1
+. test-init.sh
echo "AC_SUBST([PATH_SEPARATOR], ['$PATH_SEPARATOR'])" >> configure.ac
diff --git a/t/java-empty-classpath.sh b/t/java-empty-classpath.sh
index c54da0ba3..a6102408a 100755
--- a/t/java-empty-classpath.sh
+++ b/t/java-empty-classpath.sh
@@ -18,7 +18,7 @@
# compilation time. See automake bug#9306.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_SRCDIR([org/gnu/bug/Library.java])
diff --git a/t/java-extra.sh b/t/java-extra.sh
index 7b3a7598a..4ab8de03c 100755
--- a/t/java-extra.sh
+++ b/t/java-extra.sh
@@ -20,7 +20,7 @@
# conditionals).
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND], [test x"$cond" = x"yes"])
diff --git a/t/java-mix.sh b/t/java-mix.sh
index 25e851194..65ffd68db 100755
--- a/t/java-mix.sh
+++ b/t/java-mix.sh
@@ -19,7 +19,7 @@
# modifiers. Also check that '.java' files are not distributed by
# default.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/java-no-duplicate.sh b/t/java-no-duplicate.sh
index b5ad9fc98..ec7467ed7 100755
--- a/t/java-no-duplicate.sh
+++ b/t/java-no-duplicate.sh
@@ -17,7 +17,7 @@
# Test that some Java-related variables and rules are not repeatedly
# defined.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
javadir = $(datadir)/java
diff --git a/t/java-nobase.sh b/t/java-nobase.sh
index a643b3d98..b49210b73 100755
--- a/t/java-nobase.sh
+++ b/t/java-nobase.sh
@@ -17,7 +17,7 @@
# Test support of 'nobase_' with the 'JAVA' primary.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/java-noinst.sh b/t/java-noinst.sh
index 8bb3832a9..558a8aa16 100755
--- a/t/java-noinst.sh
+++ b/t/java-noinst.sh
@@ -18,7 +18,7 @@
# be installed.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/java-rebuild.sh b/t/java-rebuild.sh
index 5b5f2966e..3b15c5822 100755
--- a/t/java-rebuild.sh
+++ b/t/java-rebuild.sh
@@ -17,7 +17,7 @@
# Test rebuild rules for Java class files.
required='javac'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/java-sources.sh b/t/java-sources.sh
index 532cb1ff7..b0d51ba80 100755
--- a/t/java-sources.sh
+++ b/t/java-sources.sh
@@ -17,7 +17,7 @@
# Test definition of automake-generated private Makefile variable
# '$(am__java_sources)'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/java-uninstall.sh b/t/java-uninstall.sh
index a1284068f..175b9c67c 100755
--- a/t/java-uninstall.sh
+++ b/t/java-uninstall.sh
@@ -17,7 +17,7 @@
# Check uninstallation of Java class files.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/java.sh b/t/java.sh
index 0103eeae4..b1cf51dad 100755
--- a/t/java.sh
+++ b/t/java.sh
@@ -17,7 +17,7 @@
# Minimal test of Java functionality.
required=javac
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/java2.sh b/t/java2.sh
index 286fdd6b6..c9064aca5 100755
--- a/t/java2.sh
+++ b/t/java2.sh
@@ -18,7 +18,7 @@
# no classes to compile.
# Report from Braden McDaniel.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL(WITH_JDK, false)
diff --git a/t/java3.sh b/t/java3.sh
index eab720385..f7fdf65d1 100755
--- a/t/java3.sh
+++ b/t/java3.sh
@@ -18,7 +18,7 @@
# *.java files when there are none.
# Report from Johannes Nicolai (PR/441).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([WHO_CARES], [false])
diff --git a/t/javadir-undefined.sh b/t/javadir-undefined.sh
index fb0872e8e..e0764bddc 100755
--- a/t/javadir-undefined.sh
+++ b/t/javadir-undefined.sh
@@ -20,7 +20,7 @@
# the *.class files).
# See automake bug#8461.
-. ./defs || exit 1
+. test-init.sh
$ACLOCAL
diff --git a/t/javaflags.sh b/t/javaflags.sh
index 17f0dad9f..e3aad99fa 100755
--- a/t/javaflags.sh
+++ b/t/javaflags.sh
@@ -16,7 +16,7 @@
# Check support for $(JAVACFLAGS) and $(AM_JAVACFLAGS).
-. ./defs || exit 1
+. test-init.sh
cat > fake-javac <<'END'
#!/bin/sh
diff --git a/t/javaprim.sh b/t/javaprim.sh
index a5c4a62f0..6d039c2c4 100755
--- a/t/javaprim.sh
+++ b/t/javaprim.sh
@@ -16,7 +16,7 @@
# Test to make sure JAVA variable can be defined by AC_SUBST.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([JAVA])
diff --git a/t/javasubst.sh b/t/javasubst.sh
index b6929b854..e0e8acaf2 100755
--- a/t/javasubst.sh
+++ b/t/javasubst.sh
@@ -16,7 +16,7 @@
# Test to make sure redefining JAVAC with AC_SUBST works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([JAVAC])
diff --git a/t/ldadd.sh b/t/ldadd.sh
index 948745949..9fbaf2c49 100755
--- a/t/ldadd.sh
+++ b/t/ldadd.sh
@@ -17,7 +17,7 @@
# Check to make sure incorrect LDADD usage is diagnosed.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ldflags.sh b/t/ldflags.sh
index 7eb9be311..d25231d84 100755
--- a/t/ldflags.sh
+++ b/t/ldflags.sh
@@ -18,7 +18,7 @@
# PR 77.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-clean-cxx.sh b/t/lex-clean-cxx.sh
index 38a129c5a..52becb717 100755
--- a/t/lex-clean-cxx.sh
+++ b/t/lex-clean-cxx.sh
@@ -20,7 +20,7 @@
# See also sister test 'lex-clean.sh'.
required='c++ lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/lex-clean.sh b/t/lex-clean.sh
index 3bc52d3aa..7fb7a2ef4 100755
--- a/t/lex-clean.sh
+++ b/t/lex-clean.sh
@@ -20,7 +20,7 @@
# See also sister test 'lex-clean-cxx.sh'.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-depend-cxx.sh b/t/lex-depend-cxx.sh
index 15557a875..0e72281e7 100755
--- a/t/lex-depend-cxx.sh
+++ b/t/lex-depend-cxx.sh
@@ -18,7 +18,7 @@
# Test synthesized from PR automake/6.
required='c++ lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/lex-depend-grep.sh b/t/lex-depend-grep.sh
index e7c953885..7828088fd 100755
--- a/t/lex-depend-grep.sh
+++ b/t/lex-depend-grep.sh
@@ -18,7 +18,7 @@
# in obvious ways. See PR automake/6, and related semantic tests
# 'lex-depend.sh' and 'lex-depend-cxx.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-depend.sh b/t/lex-depend.sh
index 7280b84db..081f1bafb 100755
--- a/t/lex-depend.sh
+++ b/t/lex-depend.sh
@@ -18,7 +18,7 @@
# Test suggested by PR automake/6.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-header.sh b/t/lex-header.sh
index ad2976e35..f1283f662 100755
--- a/t/lex-header.sh
+++ b/t/lex-header.sh
@@ -18,7 +18,7 @@
# bugs #8844 and #9933).
required='cc flex'
-. ./defs || exit 1
+. test-init.sh
# Here, we need to use the use flex option '--header-file', but some
# older flex versions don't support is (see automake bug#11524 and
diff --git a/t/lex-lib-external.sh b/t/lex-lib-external.sh
index 9a64266c9..5a2e3c384 100755
--- a/t/lex-lib-external.sh
+++ b/t/lex-lib-external.sh
@@ -18,7 +18,7 @@
# library, if that's available.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-lib.sh b/t/lex-lib.sh
index 11767d890..e0b05f5c2 100755
--- a/t/lex-lib.sh
+++ b/t/lex-lib.sh
@@ -19,7 +19,7 @@
# See also test 'lex-lib-external.sh'.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-libobj.sh b/t/lex-libobj.sh
index 9bd597ae4..f07b1bcf9 100755
--- a/t/lex-libobj.sh
+++ b/t/lex-libobj.sh
@@ -18,7 +18,7 @@
# LIBOBJ machinery.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-line.sh b/t/lex-line.sh
index 11f40b8e8..4a51c1edb 100755
--- a/t/lex-line.sh
+++ b/t/lex-line.sh
@@ -20,7 +20,7 @@
# See also sister test 'yacc-line.sh'.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/lex-nodist.sh b/t/lex-nodist.sh
index 0bbb6cbe4..e318c3ee2 100755
--- a/t/lex-nodist.sh
+++ b/t/lex-nodist.sh
@@ -21,7 +21,7 @@
# for yacc-generated .c and .h files.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-noyywrap.sh b/t/lex-noyywrap.sh
index c4c496498..fed6cb06b 100755
--- a/t/lex-noyywrap.sh
+++ b/t/lex-noyywrap.sh
@@ -17,7 +17,7 @@
# Check Lex support with flex using the '%noyywrap' option.
required='cc flex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex-pr204.sh b/t/lex-pr204.sh
index 8172ec7f1..f6b15ab2c 100755
--- a/t/lex-pr204.sh
+++ b/t/lex-pr204.sh
@@ -21,7 +21,7 @@
# for yacc-generated .c and .h files.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AM_MAINTAINER_MODE
diff --git a/t/lex-subobj-nodep.sh b/t/lex-subobj-nodep.sh
index 0c021a26a..2d6405160 100755
--- a/t/lex-subobj-nodep.sh
+++ b/t/lex-subobj-nodep.sh
@@ -18,7 +18,7 @@
# are used, even when dependency tracking is disabled.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<\END
AC_PROG_CC
diff --git a/t/lex.sh b/t/lex.sh
index 34a14934b..754031d7f 100755
--- a/t/lex.sh
+++ b/t/lex.sh
@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex2.sh b/t/lex2.sh
index bfdde02ae..c959db73a 100755
--- a/t/lex2.sh
+++ b/t/lex2.sh
@@ -16,7 +16,7 @@
# Make sure that Automake suggest using AM_PROG_LEX when a lexer is used.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex3.sh b/t/lex3.sh
index b008880f9..633d55a4f 100755
--- a/t/lex3.sh
+++ b/t/lex3.sh
@@ -19,7 +19,7 @@
# From Matthew D. Langston.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lex5.sh b/t/lex5.sh
index cce028a79..d8ccc7a75 100755
--- a/t/lex5.sh
+++ b/t/lex5.sh
@@ -17,7 +17,7 @@
# Test for subdir lexers.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/lexcpp.sh b/t/lexcpp.sh
index d46c82d34..90f2dc07f 100755
--- a/t/lexcpp.sh
+++ b/t/lexcpp.sh
@@ -17,7 +17,7 @@
# Test to make sure Lex + C++ is supported.
# Please keep this is sync with sister test 'yaccpp.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/lexvpath.sh b/t/lexvpath.sh
index 569048ebe..04098bb53 100755
--- a/t/lexvpath.sh
+++ b/t/lexvpath.sh
@@ -23,7 +23,7 @@
# Please keep this in sync with sister test 'yaccvapth.sh'.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
cat > lexoutroot.in << 'END'
LEX_OUTPUT_ROOT='@LEX_OUTPUT_ROOT@'
diff --git a/t/lflags.sh b/t/lflags.sh
index 933f89698..b27752181 100755
--- a/t/lflags.sh
+++ b/t/lflags.sh
@@ -20,7 +20,7 @@
# and yflags2.sh.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >fake-lex <<'END'
#!/bin/sh
diff --git a/t/lflags2.sh b/t/lflags2.sh
index f657da550..5e5e8bf5e 100755
--- a/t/lflags2.sh
+++ b/t/lflags2.sh
@@ -19,7 +19,7 @@
# Please keep this in sync with the sister tests lflags.sh, yflags.sh
# and yflags2.sh.
-. ./defs || exit 1
+. test-init.sh
cat >fake-lex <<'END'
#!/bin/sh
diff --git a/t/libexec.sh b/t/libexec.sh
index e4255e0c5..14c673971 100755
--- a/t/libexec.sh
+++ b/t/libexec.sh
@@ -16,7 +16,7 @@
# PROGRAMS and LIBRARIES can be installed in (pkg)libexecdir.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
libexec_PROGRAMS = foo
diff --git a/t/libobj-basic.sh b/t/libobj-basic.sh
index c730c522a..c9e16da2b 100755
--- a/t/libobj-basic.sh
+++ b/t/libobj-basic.sh
@@ -17,7 +17,7 @@
# Make sure AC_LIBSOURCE and AC_LIBSOURCES work.
required=cc
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.proto
cat >> configure.proto << 'END'
diff --git a/t/libobj10.sh b/t/libobj10.sh
index 1c0736bb2..d8e8d586c 100755
--- a/t/libobj10.sh
+++ b/t/libobj10.sh
@@ -18,7 +18,7 @@
# it's in BUILT_SOURCES. Reported by Erez Zadok.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj12.sh b/t/libobj12.sh
index 6c917e29e..910dd790f 100755
--- a/t/libobj12.sh
+++ b/t/libobj12.sh
@@ -17,7 +17,7 @@
# Test if a file can be mentioned in LIBOBJS and explicitly.
# (See libobj13.sh for the LTLIBRARIES check.)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj13.sh b/t/libobj13.sh
index 3a9ee713a..f872ec7e7 100755
--- a/t/libobj13.sh
+++ b/t/libobj13.sh
@@ -18,7 +18,7 @@
# (Like libobj12.sh, but for Libtool libraries.)
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj14.sh b/t/libobj14.sh
index 266aaadb9..17ba986d0 100755
--- a/t/libobj14.sh
+++ b/t/libobj14.sh
@@ -19,7 +19,7 @@
# that uses it.
# Report from Bill Davidson.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AC_PROG_CC
diff --git a/t/libobj15a.sh b/t/libobj15a.sh
index c7c30e8e7..b60154dfa 100755
--- a/t/libobj15a.sh
+++ b/t/libobj15a.sh
@@ -16,7 +16,7 @@
# Nonexistent sources for AC_LIBOBJ should cause an Automake failure.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj15b.sh b/t/libobj15b.sh
index 71ace126f..004c53914 100755
--- a/t/libobj15b.sh
+++ b/t/libobj15b.sh
@@ -16,7 +16,7 @@
# Nonexistent source for AC_LIBSOURCE should cause Automake to fail.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj15c.sh b/t/libobj15c.sh
index ccaa6bd26..6db5f435c 100755
--- a/t/libobj15c.sh
+++ b/t/libobj15c.sh
@@ -16,7 +16,7 @@
# Nonexistent sources for AC_LIBSOURCES should cause Automake to fail.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj16a.sh b/t/libobj16a.sh
index 9bf602a61..f2b32ac22 100755
--- a/t/libobj16a.sh
+++ b/t/libobj16a.sh
@@ -18,7 +18,7 @@
# Please keep this in sync with sister test 'libobj16b.sh'.
required=cc
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.proto
cat >> configure.proto << 'END'
diff --git a/t/libobj16b.sh b/t/libobj16b.sh
index 600572523..abc6a66c6 100755
--- a/t/libobj16b.sh
+++ b/t/libobj16b.sh
@@ -18,7 +18,7 @@
# Please keep this in sync with sister test 'libobj16a.sh'.
required=cc
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.proto
cat >> configure.proto << 'END'
diff --git a/t/libobj17.sh b/t/libobj17.sh
index e4277f91a..bc743b22c 100755
--- a/t/libobj17.sh
+++ b/t/libobj17.sh
@@ -17,7 +17,7 @@
# Make sure AC_LIBOBJ accept non-literal arguments.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj18.sh b/t/libobj18.sh
index 77d7d54ba..209cab155 100755
--- a/t/libobj18.sh
+++ b/t/libobj18.sh
@@ -16,7 +16,7 @@
# Make sure AC_LIBSOURCE and AC_LIBSOURCES use arguments literally.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libobj19.sh b/t/libobj19.sh
index cae9e8125..7a4c89569 100755
--- a/t/libobj19.sh
+++ b/t/libobj19.sh
@@ -17,7 +17,7 @@
# Test support for AC_CONFIG_LIBOBJ_DIR.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_LIBOBJ_DIR([libobj-dir])
diff --git a/t/libobj2.sh b/t/libobj2.sh
index 778dbd3dd..cce062738 100755
--- a/t/libobj2.sh
+++ b/t/libobj2.sh
@@ -18,7 +18,7 @@
# Bug from Josh MacDonald.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([subdir/Makefile])
diff --git a/t/libobj20a.sh b/t/libobj20a.sh
index 52c41ecf9..3f67144dd 100755
--- a/t/libobj20a.sh
+++ b/t/libobj20a.sh
@@ -17,7 +17,7 @@
# Test error reporting for AC_CONFIG_LIBOBJ_DIR.
# See also sister tests 'libobj20b.sh' and 'libobj20c.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_LIBOBJ_DIR([libobj-dir])
diff --git a/t/libobj20b.sh b/t/libobj20b.sh
index d9ba8dad1..b42b8c901 100755
--- a/t/libobj20b.sh
+++ b/t/libobj20b.sh
@@ -17,7 +17,7 @@
# Test error reporting for AC_CONFIG_LIBOBJ_DIR.
# See also sister tests 'libobj20a.sh' and 'libobj20c.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_LIBOBJ_DIR([libobj-dir])
diff --git a/t/libobj20c.sh b/t/libobj20c.sh
index fe6ae6392..295eeacd0 100755
--- a/t/libobj20c.sh
+++ b/t/libobj20c.sh
@@ -17,7 +17,7 @@
# Test error reporting for AC_CONFIG_LIBOBJ_DIR.
# See also sister tests 'libobj20a.sh' and 'libobj20b.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_LIBOBJ_DIR([libobj-dir])
diff --git a/t/libobj3.sh b/t/libobj3.sh
index 1c78cbabe..c42359102 100755
--- a/t/libobj3.sh
+++ b/t/libobj3.sh
@@ -17,7 +17,7 @@
# Make sure we complain if @LIBOBJS@ is used without being set in
# configure.ac.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_RANLIB
diff --git a/t/libobj4.sh b/t/libobj4.sh
index c7a199eb5..f2ab0cf6e 100755
--- a/t/libobj4.sh
+++ b/t/libobj4.sh
@@ -17,7 +17,7 @@
# Test to make sure LIBOBJS error only occurs if LIBOBJS seen. Report
# from Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = foo
diff --git a/t/libobj5.sh b/t/libobj5.sh
index d8b7e2d1d..7d1d51018 100755
--- a/t/libobj5.sh
+++ b/t/libobj5.sh
@@ -17,7 +17,7 @@
# Test to make sure AC_REPLACE_FUNCS works across lines. Report from
# Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = joe
diff --git a/t/libobj7.sh b/t/libobj7.sh
index 1630bee6f..1fa6d2047 100755
--- a/t/libobj7.sh
+++ b/t/libobj7.sh
@@ -17,7 +17,7 @@
# Test for multiple replacement functions.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/library.sh b/t/library.sh
index e95fecb90..8675f28e1 100755
--- a/t/library.sh
+++ b/t/library.sh
@@ -16,7 +16,7 @@
# Test for _DEPENDENCIES with libraries.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_RANLIB
diff --git a/t/library2.sh b/t/library2.sh
index 98c880bdd..0de45af25 100755
--- a/t/library2.sh
+++ b/t/library2.sh
@@ -16,7 +16,7 @@
# Make sure Automake suggest using AC_PROG_RANLIB when *_LIBRARIES is used.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/library3.sh b/t/library3.sh
index 308e74836..642c3c925 100755
--- a/t/library3.sh
+++ b/t/library3.sh
@@ -16,7 +16,7 @@
# Make sure Automake simplify conditions in diagnostics.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CC
diff --git a/t/libtoo10.sh b/t/libtoo10.sh
index c84ddb8a6..968bcb918 100755
--- a/t/libtoo10.sh
+++ b/t/libtoo10.sh
@@ -18,7 +18,7 @@
# Report from Guillermo Ontañón.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR
diff --git a/t/libtoo11.sh b/t/libtoo11.sh
index 1f91f19ef..5ebcf4252 100755
--- a/t/libtoo11.sh
+++ b/t/libtoo11.sh
@@ -18,7 +18,7 @@
# Report by Charles Wilson.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_LIBTOOL
diff --git a/t/libtool-macros.sh b/t/libtool-macros.sh
index 17fea0656..c50777b7c 100755
--- a/t/libtool-macros.sh
+++ b/t/libtool-macros.sh
@@ -18,7 +18,7 @@
# to the test cases requiring them.
# See also automake bug#9807.
-. ./defs || exit 1
+. test-init.sh
echo "# Automatically generated by $me." > get.sh
echo : >> get.sh
diff --git a/t/libtool.sh b/t/libtool.sh
index dd918a14d..d1f116259 100755
--- a/t/libtool.sh
+++ b/t/libtool.sh
@@ -18,7 +18,7 @@
# Report from Kevin Dalley.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_LIBTOOL_DLOPEN
diff --git a/t/libtool2.sh b/t/libtool2.sh
index d9db4aad1..df25abb5b 100755
--- a/t/libtool2.sh
+++ b/t/libtool2.sh
@@ -18,7 +18,7 @@
# Report from Eric Magnien.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libtool3.sh b/t/libtool3.sh
index fdbd86d42..b86c84fdd 100755
--- a/t/libtool3.sh
+++ b/t/libtool3.sh
@@ -18,7 +18,7 @@
# Also make sure we do not bloat the Makefile with unneeded rules.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libtool4.sh b/t/libtool4.sh
index e8704b79a..84fa95d9a 100755
--- a/t/libtool4.sh
+++ b/t/libtool4.sh
@@ -16,7 +16,7 @@
# Make sure Automake suggests AC_PROG_LIBTOOL when *_LTLIBRARIES is used.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/libtool5.sh b/t/libtool5.sh
index 760509808..9f7e995c5 100755
--- a/t/libtool5.sh
+++ b/t/libtool5.sh
@@ -19,7 +19,7 @@
# Report from Harlan Stenn.
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/libtool6.sh b/t/libtool6.sh
index 19f30e79f..34c8dc88e 100755
--- a/t/libtool6.sh
+++ b/t/libtool6.sh
@@ -18,7 +18,7 @@
# in different directories. PR/285.
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/libtool7.sh b/t/libtool7.sh
index 59e9e2504..f810b6902 100755
--- a/t/libtool7.sh
+++ b/t/libtool7.sh
@@ -18,7 +18,7 @@
# Also check basic support for AM_LIBTOOLFLAGS/LIBTOOLFLAGS
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/libtool8.sh b/t/libtool8.sh
index 8cfb8e351..edf432d9f 100755
--- a/t/libtool8.sh
+++ b/t/libtool8.sh
@@ -17,7 +17,7 @@
# Make sure Automake diagnoses conflicting installations.
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/libtool9.sh b/t/libtool9.sh
index 1bb85ccb2..4304467e9 100755
--- a/t/libtool9.sh
+++ b/t/libtool9.sh
@@ -20,7 +20,7 @@
# xxx_LDFLAGS.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/license.sh b/t/license.sh
index cad43074c..bda8b86b1 100755
--- a/t/license.sh
+++ b/t/license.sh
@@ -16,7 +16,7 @@
# Make sure COPYING is not overwritten, even with -a -f.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >>configure.ac
diff --git a/t/license2.sh b/t/license2.sh
index 736e96fa0..ed1fd3c72 100755
--- a/t/license2.sh
+++ b/t/license2.sh
@@ -16,7 +16,7 @@
# Check that installing 'COPYING' outputs a warning.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = gnu
diff --git a/t/link_c_cxx.sh b/t/link_c_cxx.sh
index 27dcb2455..14710e875 100755
--- a/t/link_c_cxx.sh
+++ b/t/link_c_cxx.sh
@@ -17,7 +17,7 @@
# Test to make sure the C++ linker is used when appropriate.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/link_cond.sh b/t/link_cond.sh
index a5ac4b101..6913d47e9 100755
--- a/t/link_cond.sh
+++ b/t/link_cond.sh
@@ -21,7 +21,7 @@
# See automake bug#11089.
required='cc c++'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/link_dist.sh b/t/link_dist.sh
index 9ad431951..e9011e17d 100755
--- a/t/link_dist.sh
+++ b/t/link_dist.sh
@@ -18,7 +18,7 @@
# *_SOURCES
# Richard Boulton <richard@tartarus.org>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/link_f90_only.sh b/t/link_f90_only.sh
index f9c7c18cf..90348d7f9 100755
--- a/t/link_f90_only.sh
+++ b/t/link_f90_only.sh
@@ -17,7 +17,7 @@
# Test to make sure the Fortran 90 linker is used when appropriate.
# (copied from 'link_f_only.sh') Mike Nolta <mrnolta@princeton.edu>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_FC
diff --git a/t/link_f_only.sh b/t/link_f_only.sh
index 5d2702508..a17690201 100755
--- a/t/link_f_only.sh
+++ b/t/link_f_only.sh
@@ -17,7 +17,7 @@
# Test to make sure the Fortran 77 linker is used when appropriate.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_F77
diff --git a/t/link_fc.sh b/t/link_fc.sh
index f334ad83f..76b9053a6 100755
--- a/t/link_fc.sh
+++ b/t/link_fc.sh
@@ -17,7 +17,7 @@
# Test to make sure the Fortran 77 linker is used when appropriate.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/link_fccxx.sh b/t/link_fccxx.sh
index 03b71f5e2..059f1556d 100755
--- a/t/link_fccxx.sh
+++ b/t/link_fccxx.sh
@@ -17,7 +17,7 @@
# Test to make sure the C++ linker is used when appropriate.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/link_fcxx.sh b/t/link_fcxx.sh
index 29893d899..723cddc97 100755
--- a/t/link_fcxx.sh
+++ b/t/link_fcxx.sh
@@ -17,7 +17,7 @@
# Test to make sure the C++ linker is used when appropriate.
# Matthew D. Langston <langston@SLAC.Stanford.EDU>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/link_override.sh b/t/link_override.sh
index 1bf1085dc..682225f29 100755
--- a/t/link_override.sh
+++ b/t/link_override.sh
@@ -16,7 +16,7 @@
# Test to make sure _LINK variables are detected and used as documented.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/version2.sh b/t/lisp-flags.sh
index b690dc9a2..4c52f2e30 100755
--- a/t/version2.sh
+++ b/t/lisp-flags.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
+# Copyright (C) 2003-2012 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
@@ -14,28 +14,28 @@
# 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 to make sure 3rd arg to AM_INIT_AUTOMAKE not picked up in
-# version. From Joel Weber.
+# Elisp byte-compilation honours AM_ELCFLAFS and ELCFLAGS.
-. ./defs || exit 1
+. test-init.sh
-cat > configure.ac << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE([sh-utils], [1.12o], [no])
-AC_CONFIG_FILES([Makefile])
+cat > Makefile.am << 'EOF'
+lisp_LISP = foo.el
+AM_ELCFLAGS = __am_elcflags__
+EOF
+
+cat >> configure.ac << 'EOF'
+AM_PATH_LISPDIR
AC_OUTPUT
-END
+EOF
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE --add-missing
-: > Makefile.am
+./configure EMACS='echo >$@' --with-lispdir="$(pwd)/unused"
-# Files required by Gnits.
-: > INSTALL
-: > NEWS
-: > README
-: > COPYING
-: > AUTHORS
-: > ChangeLog
-: > THANKS
+: > foo.el
+ELCFLAGS='__usr_elcflags__' $MAKE -e
+grep '__am_elcflags__.*__usr_elcflags__' foo.elc
-$ACLOCAL
-$AUTOMAKE --gnits -Wno-obsolete
+:
diff --git a/t/lisp-loadpath.sh b/t/lisp-loadpath.sh
new file mode 100755
index 000000000..43e2d0996
--- /dev/null
+++ b/t/lisp-loadpath.sh
@@ -0,0 +1,67 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Emacs lisp files in both $(srcdir) and $(builddir) are found if
+# required by other files. Related to automake bug#11806.
+
+required=emacs
+. test-init.sh
+
+cat >> configure.ac << 'END'
+AM_PATH_LISPDIR
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+noinst_LISP = requirer.el
+lisp_LISP = foo.el
+lisp_DATA = bar.el
+END
+
+echo "(require 'foo) (require 'bar)" >> requirer.el
+echo "(provide 'foo)" > foo.el
+echo "(provide 'bar)" > bar.el
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE -a
+
+mkdir build
+cd build
+../configure
+$MAKE
+test -f requirer.elc
+test -f foo.elc
+test ! -e bar.elc
+
+$MAKE clean
+test ! -e requirer.elc
+test ! -e foo.elc
+
+# In the spirit of VPATH, stuff in the builddir is preferred to
+# stuff in the srcdir.
+echo "(provide" > ../foo.el # Break it.
+echo "defun)" > ../bar.el # Likewise.
+$MAKE && exit 1
+$sleep
+echo "(provide 'foo)" > foo.el
+echo "(provide 'bar)" > bar.el
+$MAKE
+test -f requirer.elc
+test -f foo.elc
+test ! -e bar.elc
+
+:
diff --git a/t/lisp-pr11806.sh b/t/lisp-pr11806.sh
index c372ea5db..edcf9bae0 100755
--- a/t/lisp-pr11806.sh
+++ b/t/lisp-pr11806.sh
@@ -18,7 +18,7 @@
# See automake bug#11806.
required=emacs
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PATH_LISPDIR
diff --git a/t/lisp-subdir-mix.sh b/t/lisp-subdir-mix.sh
new file mode 100755
index 000000000..9688eec9f
--- /dev/null
+++ b/t/lisp-subdir-mix.sh
@@ -0,0 +1,96 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check compiling elisp files in different subdirectories, where a
+# file in a subdirectory might require a file in another one.
+# This doesn't work out of the box, but can be made to work with a
+# judicious use of $(AM_ELCFLAGS).
+
+required=emacs
+. test-init.sh
+
+cat >> configure.ac << 'END'
+AM_PATH_LISPDIR
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+dist_lisp_LISP = \
+ am-here.el \
+ sub1/am-one.el \
+ sub2/am-two.el \
+ sub3/subsub/am-three.el
+
+AM_ELCFLAGS = \
+ -L $(srcdir)/sub1 \
+ -L $(srcdir)/sub2 \
+ -L $(srcdir)/sub3/subsub
+
+elc-test:
+ test -f sub1/am-one.elc
+ test -f sub2/am-two.elc
+ test -f sub3/subsub/am-three.elc
+.PHONY: elc-test
+check-local: elc-test
+END
+
+mkdir sub1 sub2 sub3 sub3/subsub
+
+cat > am-here.el << 'END'
+(provide 'am-here)
+(require 'am-one)
+(require 'am-two)
+(require 'am-three)
+END
+
+cat > sub1/am-one.el << 'END'
+(require 'am-here)
+(provide 'am-one)
+(require 'am-two)
+(require 'am-three)
+END
+
+cat > sub2/am-two.el << 'END'
+(require 'am-here)
+(require 'am-one)
+(provide 'am-two)
+(require 'am-three)
+END
+
+cat > sub3/subsub/am-three.el << 'END'
+(require 'am-here)
+(require 'am-one)
+(require 'am-two)
+(provide 'am-three)
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE --add-missing
+
+./configure
+
+$MAKE
+$MAKE elc-test
+$MAKE clean
+for x in am-here sub1/am-one sub2/am-two sub3/subsub/am-three; do
+ test -f $x.el
+ test ! -e $x.elc
+done
+
+$MAKE distcheck
+
+:
diff --git a/t/lisp-subdir.sh b/t/lisp-subdir.sh
new file mode 100755
index 000000000..9836400da
--- /dev/null
+++ b/t/lisp-subdir.sh
@@ -0,0 +1,80 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Emacs lisp files in subdirectories.
+
+required=emacs
+. test-init.sh
+
+cat >> configure.ac << 'END'
+AM_PATH_LISPDIR
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+nobase_lisp_LISP = sub/am-one.el sub/am-two.el sub/am-three.el
+nobase_dist_lisp_LISP = sub/am-three.el
+dist_noinst_LISP = sub/am-four.el
+EXTRA_DIST = sub/am-one.el sub/am-two.el
+END
+
+mkdir sub
+echo "(require 'am-two) (provide 'am-one)" > sub/am-one.el
+echo "(require 'am-three) (provide 'am-two)" > sub/am-two.el
+echo "(provide 'am-three)" > sub/am-three.el
+echo "(require 'am-one) (require 'am-two)" > sub/am-four.el
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE --add-missing
+
+./configure --prefix="$(pwd)/inst" \
+ --with-lispdir="$(pwd)/inst/elisp" \
+
+$MAKE
+# No byte-compiled elisp files in the top-level directory.
+test "$(echo *.elc)" = '*.elc'
+test -f sub/am-one.elc
+test -f sub/am-two.elc
+test -f sub/am-three.elc
+test -f sub/am-four.elc
+$MAKE clean
+test ! -e sub/am-one.elc
+test ! -e sub/am-two.elc
+test ! -e sub/am-three.elc
+test ! -e sub/am-four.elc
+
+# Check installation.
+
+sort > exp << 'END'
+inst/elisp/sub/am-one.elc
+inst/elisp/sub/am-two.elc
+inst/elisp/sub/am-three.elc
+END
+
+$MAKE install
+find inst # For debugging.
+find inst -name '*.elc' > lst || { cat lst; exit 1; }
+sort lst > got
+
+cat exp
+cat got
+diff exp got
+
+# Also check VPATH builds and uninstall completeness.
+$MAKE distcheck
+
+:
diff --git a/t/lisp-subdir2.sh b/t/lisp-subdir2.sh
new file mode 100755
index 000000000..0ea3e9fa2
--- /dev/null
+++ b/t/lisp-subdir2.sh
@@ -0,0 +1,78 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Compiling elisp files in different subdirectories.
+
+required=emacs
+. test-init.sh
+
+cat >> configure.ac << 'END'
+AM_PATH_LISPDIR
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+dist_lisp_LISP = am-one.el
+nodist_lisp_LISP = sub/am-two.el
+sub/am-two.el:
+ mkdir sub
+ echo "(provide 'am-two)" > $@
+DISTCLEANFILES = $(nodist_lisp_LISP)
+dist_noinst_LISP = x/y/z/am-three.el
+
+elc-test:
+ test -f am-one.elc
+ test -f sub/am-two.elc
+ test -f x/y/z/am-three.elc
+.PHONY: elc-test
+check-local: elc-test
+END
+
+mkdir x x/y x/y/z
+echo "(provide 'am-one)" > am-one.el
+# sub/am-two.el is generated at make runtime
+echo "(provide 'am-three)" > x/y/z/am-three.el
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE --add-missing
+
+./configure
+
+$MAKE
+$MAKE elc-test
+$MAKE clean
+test ! -e am-one.elc
+test ! -e sub/am-two.elc
+test ! -e x/y/z/am-three.elc
+test -f am-one.el
+test -f sub/am-two.el
+test -f x/y/z/am-three.el
+
+# Byte-compiling only a subset of the elisp files.
+$MAKE am-one.elc sub/am-two.elc
+test -f am-one.elc
+test -f sub/am-two.elc
+test ! -e x/y/z/am-three.elc
+rm -f am-one.elc sub/am-two.elc
+$MAKE x/y/z/am-three.elc
+test ! -e am-one.elc
+test ! -e sub/am-two.elc
+test -f x/y/z/am-three.elc
+
+$MAKE distcheck
+
+:
diff --git a/t/lisp2.sh b/t/lisp2.sh
index 4f0791124..dfd68008f 100755
--- a/t/lisp2.sh
+++ b/t/lisp2.sh
@@ -16,7 +16,7 @@
# Make sure that Automake suggest using AM_PATH_LISPDIR to define lispdir.
-. ./defs || exit 1
+. test-init.sh
: TRY 1 -- We lack both EMACS and lispdir.
diff --git a/t/lisp3.sh b/t/lisp3.sh
index 5b95715ec..7717c1c25 100755
--- a/t/lisp3.sh
+++ b/t/lisp3.sh
@@ -17,7 +17,7 @@
# Test that compiling interdependent elisp files works.
required=emacs
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
lisp_LISP = am-one.el am-two.el am-three.el
@@ -47,7 +47,6 @@ $MAKE
test -f am-one.elc
test -f am-two.elc
test -f am-three.elc
-test -f elc-stamp
# Make sure we can recover from a deletion.
rm -f am-one.elc
@@ -79,15 +78,6 @@ test -f _inst/$dir/site-lisp/am-three.elc
$MAKE uninstall
find _inst | $EGREP '\.elc?$' && exit 1
-# Make sure we build all files when any of them change.
-# (We grep a message to make sure the compilation happens.)
-unique=0a3346e2af8a689b85002b53df09142a
-$sleep
-echo "(message \"$unique\")(provide 'am-three)" > am-three.el
-$MAKE >output 2>&1 || { cat output; exit 1; }
-cat output
-grep $unique output
-
# It should also work for VPATH-builds.
$MAKE distcheck
diff --git a/t/lisp4.sh b/t/lisp4.sh
index b8cb7963a..1b2809ca9 100755
--- a/t/lisp4.sh
+++ b/t/lisp4.sh
@@ -18,7 +18,7 @@
# Report from Simon Josefsson.
required=emacs
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
lisp_LISP = am-one.el am-two.el am-three.el
@@ -32,7 +32,6 @@ test:
test ! -f am-one.elc
test ! -f am-two.elc
test ! -f am-three.elc
- test ! -f elc-stamp
install-test: install
test -f "$(lispdir)/am-one.el"
diff --git a/t/lisp5.sh b/t/lisp5.sh
index 4624010ae..de9c1181e 100755
--- a/t/lisp5.sh
+++ b/t/lisp5.sh
@@ -18,7 +18,7 @@
# non-bytecompiled *.el files.
required=emacs
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
lisp_DATA = am-one.el am-two.el am-three.el
@@ -31,7 +31,6 @@ test:
test ! -f am-one.elc
test ! -f am-two.elc
test ! -f am-three.elc
- test ! -f elc-stamp
install-test: install
test -f "$(lispdir)/am-one.el"
diff --git a/t/lisp6.sh b/t/lisp6.sh
index e877d5a2a..ae81a1cab 100755
--- a/t/lisp6.sh
+++ b/t/lisp6.sh
@@ -17,7 +17,7 @@
# Test for conditional _LISP.
required=emacs
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
dist_lisp_LISP = am-one.el
@@ -57,7 +57,6 @@ $MAKE
test -f am-one.elc
test ! -e am-two.elc
test -f am-three.elc
-test -f elc-stamp
$MAKE install
test -f lisp/am-one.el
@@ -73,7 +72,6 @@ $MAKE distclean
test ! -e am-one.elc
test ! -e am-two.elc
test ! -e am-three.elc
-test ! -e elc-stamp
./configure --with-lispdir="$cwd/lisp" want_two=1
@@ -81,7 +79,6 @@ $MAKE
test -f am-one.elc
test -f am-two.elc
test -f am-three.elc
-test -f elc-stamp
# Let's mutilate the source tree, to check the recover rule.
rm -f am-*.elc
@@ -89,7 +86,6 @@ $MAKE
test -f am-one.elc
test -f am-two.elc
test -f am-three.elc
-test -f elc-stamp
$MAKE install
test -f lisp/am-one.el
@@ -105,6 +101,5 @@ $MAKE distclean
test ! -e am-one.elc
test ! -e am-two.elc
test ! -e am-three.elc
-test ! -e elc-stamp
:
diff --git a/t/lisp7.sh b/t/lisp7.sh
index 4553298cd..4c4676ea9 100755
--- a/t/lisp7.sh
+++ b/t/lisp7.sh
@@ -16,7 +16,7 @@
# Make sure that lisp_LISP also works when emacs is not installed.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
dist_lisp_LISP = am-one.el am-two.el am-three.el
@@ -39,12 +39,10 @@ $AUTOMAKE --add-missing
$MAKE >stdout || { cat stdout; exit 1; }
cat stdout
-test 1 -eq $(grep -c 'Warnings can be ignored' stdout)
test ! -e am-one.elc
test ! -e am-two.elc
test ! -e am-three.elc
-test -f elc-stamp
$MAKE distcheck
diff --git a/t/lisp8.sh b/t/lisp8.sh
index 6e6b901de..7348e4147 100755
--- a/t/lisp8.sh
+++ b/t/lisp8.sh
@@ -17,7 +17,7 @@
# Check the recover rule of lisp_LISP with parallel make.
required='GNUmake emacs'
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
dist_lisp_LISP = am-one.el am-two.el am-three.el
@@ -42,12 +42,10 @@ $AUTOMAKE --add-missing
$MAKE -j >>stdout || { cat stdout; exit 1; }
cat stdout
-test 1 -eq $(grep -c 'Warnings can be ignored' stdout)
test -f am-one.elc
test -f am-two.elc
test -f am-three.elc
-test -f elc-stamp
rm -f am-*.elc
@@ -56,10 +54,8 @@ rm -f am-*.elc
$MAKE -j >>stdout || { cat stdout; exit 1; }
cat stdout
-test 1 -eq $(grep -c 'Warnings can be ignored' stdout)
test -f am-one.elc
test -f am-two.elc
test -f am-three.elc
-test -f elc-stamp
:
diff --git a/t/lispdry.sh b/t/lispdry.sh
index f7de07126..f57e6dce3 100755
--- a/t/lispdry.sh
+++ b/t/lispdry.sh
@@ -17,7 +17,7 @@
# Check that 'make -n' works with the lisp_LISP recover rule.
required='emacs non-root'
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
dist_lisp_LISP = am-one.el am-two.el am-three.el
@@ -42,9 +42,8 @@ $MAKE
test -f am-one.elc
test -f am-two.elc
test -f am-three.elc
-test -f elc-stamp
-rm -f am-*.elc elc-stamp
+rm -f am-*.elc
chmod a-w .
@@ -53,6 +52,5 @@ $MAKE -n
test ! -e am-one.elc
test ! -e am-two.elc
test ! -e am-three.elc
-test ! -e elc-stamp
:
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index 8d551d110..6585ce688 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -41,7 +41,6 @@ t/remake-timing-bug-pr8365.sh \
t/lex-subobj-nodep.sh \
t/remake-am-pr10111.sh \
t/remake-m4-pr10111.sh \
-t/tags-pr12372.sh \
t/txinfo5.sh \
$(perl_fake_XFAIL_TESTS)
@@ -73,38 +72,43 @@ t/get-sysconf.sh \
$(perl_TESTS) \
t/instspc.tap \
t/aclocal.sh \
-t/aclocal3.sh \
-t/aclocal4.sh \
-t/aclocal5.sh \
-t/aclocal6.sh \
-t/aclocal7.sh \
-t/aclocal8.sh \
-t/aclocal9.sh \
t/acloca10.sh \
-t/acloca11.sh \
-t/acloca12.sh \
-t/acloca13.sh \
-t/acloca14.sh \
-t/acloca15.sh \
-t/acloca16.sh \
-t/acloca17.sh \
-t/acloca18.sh \
-t/acloca19.sh \
-t/acloca20.sh \
-t/acloca21.sh \
-t/acloca22.sh \
-t/acloca23.sh \
+t/aclocal-I-order-1.sh \
+t/aclocal-I-order-2.sh \
+t/aclocal-I-order-3.sh \
t/aclocal-acdir.sh \
+t/aclocal-amflags.sh \
+t/aclocal-autoconf-version-check.sh \
+t/aclocal-comments-respected.sh \
+t/aclocal-deleted-header-aclocal-amflags.sh \
+t/aclocal-deleted-header.sh \
+t/aclocal-deps-subdir.sh \
+t/aclocal-deps.sh \
t/aclocal-install-absdir.sh \
-t/aclocal-print-acdir.sh \
+t/aclocal-install-fail.sh \
+t/aclocal-install-mkdir.sh \
+t/aclocal-m4-include-are-scanned-aclocal-amflags.sh \
+t/aclocal-m4-include-are-scanned.sh \
+t/aclocal-m4-sinclude.sh \
+t/aclocal-macrodir.tap \
+t/aclocal-macrodirs.tap \
+t/aclocal-missing-macros.sh \
+t/aclocal-no-extra-scan.sh \
+t/aclocal-no-force.sh \
+t/aclocal-no-install-no-mkdir.sh \
+t/aclocal-no-symlinked-overwrite.sh \
+t/aclocal-no-unused-required.sh \
t/aclocal-path.sh \
t/aclocal-path-install.sh \
t/aclocal-path-install-serial.sh \
t/aclocal-path-nonexistent.sh \
t/aclocal-path-precedence.sh \
-t/aclocal-install-fail.sh \
-t/aclocal-install-mkdir.sh \
-t/aclocal-no-install-no-mkdir.sh \
+t/aclocal-pr450.sh \
+t/aclocal-print-acdir.sh \
+t/aclocal-remake-misc.sh \
+t/aclocal-scan-configure-ac-pr319.sh \
+t/aclocal-serial.sh \
+t/aclocal-underquoted-defun.sh \
t/aclocal-verbose-install.sh \
t/ac-output-old.tap \
t/acsilent.sh \
@@ -156,7 +160,6 @@ t/autodist-configure-no-subdir.sh \
t/autodist-no-duplicate.sh \
t/autodist-stamp-vti.sh \
t/autohdr.sh \
-t/autohdr2.sh \
t/autohdr3.sh \
t/autohdr4.sh \
t/autohdr-subdir-pr12495.sh \
@@ -174,9 +177,8 @@ t/auxdir-unportable.tap \
t/backcompat.sh \
t/backcompat2.sh \
t/backcompat3.sh \
-t/backcompat4.sh \
-t/backcompat5.sh \
t/backcompat6.sh \
+t/backcompat-acout.sh \
t/backsl.sh \
t/backsl2.sh \
t/backsl3.sh \
@@ -223,7 +225,6 @@ t/check-no-test-driver.sh \
t/check-concurrency-bug9245.sh \
t/checkall.sh \
t/clean.sh \
-t/clean2.sh \
t/colneq.sh \
t/colneq2.sh \
t/colneq3.sh \
@@ -234,8 +235,9 @@ t/colon4.sh \
t/colon5.sh \
t/colon6.sh \
t/colon7.sh \
-t/color.sh \
-t/color2.sh \
+t/color-tests.sh \
+t/color-tests2.sh \
+t/color-tests-opt.sh \
t/comment.sh \
t/comment2.sh \
t/comment3.sh \
@@ -341,13 +343,7 @@ t/cxx-lt-demo.sh \
t/cxxlibobj.sh \
t/cxxlink.sh \
t/cxxnoc.sh \
-t/cygnus-deprecation.sh \
-t/cygnus-check-without-all.sh \
-t/cygnus-dependency-tracking.sh \
-t/cygnus-imply-foreign.sh \
-t/cygnus-no-dist.sh \
-t/cygnus-no-installinfo.sh \
-t/cygnus-requires-maintainer-mode.sh \
+t/cygnus-no-more.sh \
t/cygwin32.sh \
t/dash.sh \
t/defun.sh \
@@ -498,7 +494,6 @@ t/help-depend2.sh \
t/help-dmalloc.sh \
t/help-init.sh \
t/help-lispdir.sh \
-t/help-multilib.sh \
t/help-python.sh \
t/help-silent.sh \
t/help-upc.sh \
@@ -638,8 +633,13 @@ t/lisp5.sh \
t/lisp6.sh \
t/lisp7.sh \
t/lisp8.sh \
+t/lisp-loadpath.sh \
+t/lisp-subdir.sh \
+t/lisp-subdir2.sh \
+t/lisp-subdir-mix.sh \
t/lispdry.sh \
t/lisp-pr11806.sh \
+t/lisp-flags.sh \
t/listval.sh \
t/location.sh \
t/longline.sh \
@@ -669,7 +669,6 @@ t/makevars.sh \
t/man.sh \
t/man2.sh \
t/man3.sh \
-t/man4.sh \
t/man5.sh \
t/man6.sh \
t/man7.sh \
@@ -680,12 +679,8 @@ t/mdate3.sh \
t/mdate4.sh \
t/mdate5.sh \
t/mdate6.sh \
-t/missing.sh \
-t/missing2.sh \
+t/missing-version-mismatch.sh \
t/missing3.sh \
-t/missing4.sh \
-t/missing5.sh \
-t/missing6.sh \
t/am-missing-prog.sh \
t/missing-auxfile-stops-makefiles-creation.sh \
t/mkdir_p.sh \
@@ -695,7 +690,6 @@ t/mkinst2.sh \
t/mkinst3.sh \
t/mmode.sh \
t/mmodely.sh \
-t/multlib.sh \
t/no-extra-makefile-code.sh \
t/no-spurious-install-recursive.sh \
t/nobase.sh \
@@ -726,7 +720,6 @@ t/objcxx-flags.sh \
t/objcxx-deps.sh \
t/objc-megademo.sh \
t/objext-pr10128.sh \
-t/obsolete.sh \
t/oldvars.sh \
t/order.sh \
t/output.sh \
@@ -751,7 +744,6 @@ t/parallel-am.sh \
t/parallel-am2.sh \
t/parallel-am3.sh \
t/serial-tests.sh \
-t/parallel-tests2.sh \
t/parallel-tests-basics.sh \
t/parallel-tests-concurrency.sh \
t/parallel-tests-concurrency-2.sh \
@@ -900,8 +892,17 @@ t/python-dist.sh \
t/python-vars.sh \
t/python-virtualenv.sh \
t/python-pr10995.sh \
-t/recurs.sh \
-t/recurs2.sh \
+t/recurs-user.sh \
+t/recurs-user2.sh \
+t/recurs-user-deeply-nested.sh \
+t/recurs-user-indir.sh \
+t/recurs-user-keep-going.sh \
+t/recurs-user-many.sh \
+t/recurs-user-no-subdirs.sh \
+t/recurs-user-no-top-level.sh \
+t/recurs-user-override.sh \
+t/recurs-user-phony.sh \
+t/recurs-user-wrap.sh \
t/relativize.tap \
t/remake-fail.sh \
t/remake-not-after-make-dist.sh \
@@ -919,6 +920,7 @@ t/remake-deeply-nested.sh \
t/remake-mild-stress.sh \
t/remake-all-1.sh \
t/remake-all-2.sh \
+t/remake-recurs-user.sh \
t/remake-subdir.sh \
t/remake-subdir2.sh \
t/remake-subdir3.sh \
@@ -942,6 +944,8 @@ t/remake-deleted-am-2.sh \
t/remake-deleted-am-subdir.sh \
t/remake-deleted-am.sh \
t/remake-renamed-am.sh \
+t/remake-aclocal-version-mismatch.sh \
+t/remake-macrodir.sh \
t/remake-timing-bug-pr8365.sh \
t/req.sh \
t/reqd.sh \
@@ -961,28 +965,20 @@ t/self-check-is-blocked-signal.tap \
t/self-check-unindent.tap \
t/sanity.sh \
t/seenc.sh \
-t/silent.sh \
-t/silent2.sh \
-t/silent3.sh \
-t/silent4.sh \
-t/silent6.sh \
-t/silent7.sh \
-t/silent8.sh \
-t/silent9.sh \
-t/silent-obsolescent-warns.sh \
-t/silentcxx.sh \
-t/silentcxx-gcc.sh \
-t/silentf77.sh \
-t/silentf90.sh \
-t/silent-amopts.sh \
-t/silent-many-gcc.sh \
-t/silent-many-generic.sh \
-t/silent-nowarn.sh \
-t/silent-configsite.sh \
-t/silent-nested-vars.sh \
+t/silent-c.sh \
+t/silent-cxx.sh \
+t/silent-lt.sh \
+t/silent-f77.sh \
+t/silent-f90.sh \
+t/silent-many-languages.sh \
+t/silent-gen.sh \
+t/silent-texi.sh \
t/silent-lex.sh \
t/silent-yacc.sh \
t/silent-yacc-headers.sh \
+t/silent-configsite.sh \
+t/silent-nested-vars.sh \
+t/silent-custom.sh \
t/src-acsubst.sh \
t/sourcefile-in-subdir.sh \
t/space.sh \
@@ -1038,6 +1034,7 @@ t/subpkg2.sh \
t/subpkg3.sh \
t/subpkg4.sh \
t/subpkg-yacc.sh \
+t/subpkg-macrodir.sh \
t/subst.sh \
t/subst3.sh \
t/subst4.sh \
@@ -1163,8 +1160,6 @@ t/txinfo.sh \
t/txinfo2.sh \
t/txinfo3.sh \
t/txinfo4.sh \
-t/txinfo5.sh \
-t/txinfo5b.sh \
t/txinfo6.sh \
t/txinfo7.sh \
t/txinfo8.sh \
@@ -1184,7 +1179,6 @@ t/txinfo26.sh \
t/txinfo27.sh \
t/txinfo28.sh \
t/txinfo29.sh \
-t/txinfo30.sh \
t/txinfo31.sh \
t/txinfo32.sh \
t/txinfo33.sh \
@@ -1213,11 +1207,11 @@ t/vala-mix2.sh \
t/vala-parallel.sh \
t/vars.sh \
t/vars3.sh \
+t/var-recurs.sh \
+t/var-recurs2.sh \
t/vartar.sh \
t/vartypos.sh \
t/vartypo2.sh \
-t/version.sh \
-t/version2.sh \
t/version3.sh \
t/version4.sh \
t/version6.sh \
diff --git a/t/listval.sh b/t/listval.sh
index 8bd6b7905..2aa4d0634 100755
--- a/t/listval.sh
+++ b/t/listval.sh
@@ -18,7 +18,7 @@
# From Adam J. Richter.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([LTLIBOBJS])
diff --git a/t/location.sh b/t/location.sh
index dab1e330f..0ff7090bb 100755
--- a/t/location.sh
+++ b/t/location.sh
@@ -16,7 +16,7 @@
# Test for locations in error messages.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/longlin2.sh b/t/longlin2.sh
index 1174a1437..1fcc54e1b 100755
--- a/t/longlin2.sh
+++ b/t/longlin2.sh
@@ -17,7 +17,7 @@
# Long lines should be wrapped.
# Report from Albert Chin.
-. ./defs || exit 1
+. test-init.sh
n=1 files= match=
while test $n -le 100
diff --git a/t/longline.sh b/t/longline.sh
index d0240fdc6..b262f45fe 100755
--- a/t/longline.sh
+++ b/t/longline.sh
@@ -17,7 +17,7 @@
# Long lines of += should be wrapped.
# Report from Simon Josefsson.
-. ./defs || exit 1
+. test-init.sh
(echo DUMMY = some_long_filename_1;
for i in 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20;
diff --git a/t/ltcond.sh b/t/ltcond.sh
index ae5415cdf..02e8bad18 100755
--- a/t/ltcond.sh
+++ b/t/ltcond.sh
@@ -18,7 +18,7 @@
# This combines two examples from the manual.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([WANT_LIBFOO], [true])
diff --git a/t/ltcond2.sh b/t/ltcond2.sh
index 49b14d8e9..a16a7cfe7 100755
--- a/t/ltcond2.sh
+++ b/t/ltcond2.sh
@@ -17,7 +17,7 @@
# Test for bug in conditionals.
required='cc native libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ltconv.sh b/t/ltconv.sh
index cf06271d9..580ee6d53 100755
--- a/t/ltconv.sh
+++ b/t/ltconv.sh
@@ -18,7 +18,7 @@
# This example is taken from the manual.
required='cc native libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/ltdeps.sh b/t/ltdeps.sh
index a13ae0352..950bc429e 100755
--- a/t/ltdeps.sh
+++ b/t/ltdeps.sh
@@ -17,7 +17,7 @@
# Test to make sure libtool library dependencies are correct.
# Report from Lars J. Aas.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR
diff --git a/t/ltinit.sh b/t/ltinit.sh
index 69e8d55e7..a98cffa58 100755
--- a/t/ltinit.sh
+++ b/t/ltinit.sh
@@ -19,7 +19,7 @@
# present since libtool 1.9b, circa 2004).
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/ltinstloc.sh b/t/ltinstloc.sh
index f12da7760..e476c987c 100755
--- a/t/ltinstloc.sh
+++ b/t/ltinstloc.sh
@@ -18,7 +18,7 @@
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/ltlibobjs.sh b/t/ltlibobjs.sh
index ed0d2ed3c..1e8ea24d9 100755
--- a/t/ltlibobjs.sh
+++ b/t/ltlibobjs.sh
@@ -17,7 +17,7 @@
# Test to make sure LTLIBOBJS alone works ok.
# Report from Vadim Zeitlin.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([LTLIBOBJS])
diff --git a/t/ltlibsrc.sh b/t/ltlibsrc.sh
index 7c848144c..acce8bbd6 100755
--- a/t/ltlibsrc.sh
+++ b/t/ltlibsrc.sh
@@ -17,7 +17,7 @@
# Test to make sure a sensible default source for libraries is used.
required='cc libtool'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/ltorder.sh b/t/ltorder.sh
index c8f60edec..32d08161d 100755
--- a/t/ltorder.sh
+++ b/t/ltorder.sh
@@ -17,7 +17,7 @@
# Test for correct installation order of nobase libtool libraries.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/lzma.sh b/t/lzma.sh
index da38c3173..46015ed4f 100755
--- a/t/lzma.sh
+++ b/t/lzma.sh
@@ -16,7 +16,7 @@
# Check support for no-dist-gzip with lzma.
-. ./defs || exit 1
+. test-init.sh
errmsg='support for lzma.*removed'
diff --git a/t/m4-inclusion.sh b/t/m4-inclusion.sh
index 3da20eee0..c845617f7 100755
--- a/t/m4-inclusion.sh
+++ b/t/m4-inclusion.sh
@@ -16,7 +16,7 @@
# Test to see if 'm4_sinclude' and 'm4_include' works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
sinclude([doesntexist.m4])
diff --git a/t/maintclean-vpath.sh b/t/maintclean-vpath.sh
index b5c6ffe49..0732fab17 100755
--- a/t/maintclean-vpath.sh
+++ b/t/maintclean-vpath.sh
@@ -18,7 +18,7 @@
# This test is for VPATH builds; see sister test 'maintclean.sh'
# for in-tree builds.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([bar sub/Makefile])
diff --git a/t/maintclean.sh b/t/maintclean.sh
index 757cf859e..b7fd1b288 100755
--- a/t/maintclean.sh
+++ b/t/maintclean.sh
@@ -18,7 +18,7 @@
# This test is for in-tree builds; see sister test 'maintclean-vpath.sh'
# for VPATH builds.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([bar sub/Makefile])
diff --git a/t/maintmode-configure-msg.sh b/t/maintmode-configure-msg.sh
index ebdf4d724..058438db8 100755
--- a/t/maintmode-configure-msg.sh
+++ b/t/maintmode-configure-msg.sh
@@ -19,7 +19,7 @@
# related to the enabling/disabling of maintainer mode are correct (see
# automake bug#9890).
-. ./defs || exit 1
+. test-init.sh
set_maintmode ()
{
diff --git a/t/make-dryrun.tap b/t/make-dryrun.tap
index 1fd255d11..adf2f0441 100755
--- a/t/make-dryrun.tap
+++ b/t/make-dryrun.tap
@@ -16,7 +16,7 @@
# Check that $(am__make_dryrun) works as expected.
-. ./defs || exit 1
+. test-init.sh
plan_ 14
diff --git a/t/make.sh b/t/make.sh
index fad2242b8..1cb814921 100755
--- a/t/make.sh
+++ b/t/make.sh
@@ -18,7 +18,7 @@
# From Ralf Corsepius.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_MAKE_INCLUDE
diff --git a/t/makefile-deps.sh b/t/makefile-deps.sh
index 192e56bae..b4c5bd79e 100755
--- a/t/makefile-deps.sh
+++ b/t/makefile-deps.sh
@@ -17,7 +17,7 @@
# Make sure we don't emit a rule with empty target if list of
# automatically-computed dependencies for Makefile.in is empty.
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/makej.sh b/t/makej.sh
index b339bd73c..e8d1ea57a 100755
--- a/t/makej.sh
+++ b/t/makej.sh
@@ -22,7 +22,7 @@
# via autom4te.
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<END
m4_include([version.m4])
diff --git a/t/makej2.sh b/t/makej2.sh
index c7d809e89..20ebb57ec 100755
--- a/t/makej2.sh
+++ b/t/makej2.sh
@@ -18,7 +18,7 @@
# without -B, it may reuse the same shell for separate commands in a
# rule, which can lead to interesting results.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/maken.sh b/t/maken.sh
index ec7200895..5087b9259 100755
--- a/t/maken.sh
+++ b/t/maken.sh
@@ -19,7 +19,7 @@
# Also, ensure that 'make -n dist' and 'make -n distcheck' show what
# would happen, at least when using GNU make.
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/maken3.sh b/t/maken3.sh
index 6d580eca8..dbbdb4afa 100755
--- a/t/maken3.sh
+++ b/t/maken3.sh
@@ -22,10 +22,10 @@
# special target, the output from make is sufficiently complete.
#
# This test exercises the GCS-mandated targets (except for dist)
-# as well as tags, TAGS.
+# as well as tags.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
# Does $MAKE support the '.MAKE' special target?
have_dotmake=false
@@ -111,8 +111,6 @@ installcheck-local:
@: > stamp-installcheck-sub
tags:
@: > stamp-tags-sub
-TAGS:
- @: > stamp-TAGS-sub
mostlyclean-local:
@: > stamp-mostlyclean-sub
maintainer-clean-local:
@@ -127,7 +125,7 @@ html:
@: > sub2-$@-should-not-be-executed
install-info install-html install-dvi install-pdf install-ps:
@: > sub2-$@-should-not-be-executed
-installcheck installdirs tags TAGS mostlyclean:
+installcheck installdirs tags mostlyclean:
@: > sub2-$@-should-not-be-executed
## These targets cannot be overridden like this:
## install-strip distclean maintainer-clean
@@ -142,12 +140,12 @@ check_targets ()
all install install-strip uninstall clean distclean check \
info html dvi pdf ps \
install-info install-html install-dvi install-pdf install-ps \
- installcheck installdirs tags TAGS mostlyclean maintainer-clean
+ installcheck installdirs tags mostlyclean maintainer-clean
do
$MAKE -n $target >stdout || { cat stdout; exit 1; }
cat stdout
case $target in
- install-* | installdirs | tags | TAGS ) ;;
+ install-* | installdirs | tags ) ;;
*)
if $have_dotmake; then
grep "stamp-$target$" stdout || exit 1
diff --git a/t/makevars.sh b/t/makevars.sh
index 3654196b2..4614cd7c5 100755
--- a/t/makevars.sh
+++ b/t/makevars.sh
@@ -17,7 +17,7 @@
# Test to make sure that automake includes the needed variables,
# but not too many.
-. ./defs || exit 1
+. test-init.sh
# Find the macros wanted by Automake.
$ACLOCAL
diff --git a/t/man.sh b/t/man.sh
index 3feb3fa05..d5c9ece6b 100755
--- a/t/man.sh
+++ b/t/man.sh
@@ -16,7 +16,7 @@
# Test to make sure 'dist' prefix works with man pages.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
dist_man_MANS = foo.1
diff --git a/t/man2.sh b/t/man2.sh
index a7b764659..31c4af5e2 100755
--- a/t/man2.sh
+++ b/t/man2.sh
@@ -17,7 +17,7 @@
# Make sure that man pages listed in man_MANS are installed and
# renamed as documented.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/man3.sh b/t/man3.sh
index 2604c014c..8904e549b 100755
--- a/t/man3.sh
+++ b/t/man3.sh
@@ -16,7 +16,7 @@
# PR 516: Prefer generated manpages to distributed ones.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
dist_man_MANS = foo.1
diff --git a/t/man4.sh b/t/man4.sh
deleted file mode 100755
index 2688b7d47..000000000
--- a/t/man4.sh
+++ /dev/null
@@ -1,105 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2008-2012 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/>.
-
-# Ensure 'make dist' fails when help2man replacement man pages are created.
-#
-# The assumption here is the following: if the developer uses help2man to
-# generate man pages from --help output, then these man pages may not be
-# stored in VCS. However, they should be distributed, so that the end user
-# that receives the tarball doesn't have to install help2man. If they are
-# not distributed, then the developer should make help2man a prerequisite
-# to building the package from a tarball, e.g., with a configure check for
-# help2man that errors out if it is unavailable. In both cases it is
-# sufficient to check only distributed man pages.
-#
-# Idea of this whole shenanigan is to allow somebody to check out sources from
-# a VCS and build and install them without needing help2man installed. The
-# installed man pages will be bogus in this case. Typically, this happens
-# when developers ask users to try out a fix from VCS; the developers themselves
-# will usually have help2man installed (or should install it).
-
-. ./defs || exit 1
-
-cat > Makefile.am << 'END'
-dist_man_MANS = $(srcdir)/foo.1 bar.1
-dist_bin_SCRIPTS = foo bar
-$(srcdir)/foo.1:
- $(HELP2MAN) --output=$@ $(srcdir)/foo
-bar.1:
- $(HELP2MAN) --output=$(srcdir)/bar.1 $(srcdir)/bar
-END
-
-cat >>configure.ac <<'END'
-AM_MISSING_PROG([HELP2MAN], [help2man])
-AC_OUTPUT
-END
-
-cat > foo <<'END'
-#! /bin/sh
-while test $# -gt 0; do
- case $1 in
- -h | --help) echo "usage: $0 [OPTIONS]..."; exit 0;;
- -v | --version) echo "$0 1.0"; exit 0;;
- esac
- shift
-done
-END
-cp foo bar
-chmod +x foo bar
-
-mkdir bin
-cat > bin/help2man <<'END'
-#! /bin/sh
-# Fake help2man script that lets 'missing' think it is not installed.
-exit 127
-END
-chmod +x bin/help2man
-PATH=$(pwd)/bin$PATH_SEPARATOR$PATH
-
-grep_error_messages()
-{
- grep ' man pages contain.*missing help2man.* replacement text' stderr \
- && grep 'install help2man' stderr \
- && grep 'regenerate the man pages' stderr \
- || exit 1
-}
-
-$ACLOCAL
-$AUTOMAKE
-$AUTOCONF
-
-./configure
-$MAKE
-$MAKE dist 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep_error_messages
-$MAKE distcheck 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep_error_messages
-$MAKE distclean
-
-mkdir build
-cd build
-../configure
-$MAKE
-$MAKE dist 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep_error_messages
-$MAKE distcheck 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep_error_messages
-
-:
diff --git a/t/man5.sh b/t/man5.sh
index d3c227007..a04ccfe06 100755
--- a/t/man5.sh
+++ b/t/man5.sh
@@ -16,7 +16,7 @@
# Make sure to extract the correct mansection from files in man_MANS.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/man6.sh b/t/man6.sh
index d6b51ef9e..d854732b2 100755
--- a/t/man6.sh
+++ b/t/man6.sh
@@ -18,7 +18,7 @@
# even if the 'missing' script is involved.
required=help2man
-. ./defs || exit 1
+. test-init.sh
# Avoid a spurious failure due to a known FreeBSD make incompatibility.
useless_vpath_rebuild \
@@ -65,7 +65,7 @@ cd build
../configure
# Sanity check.
-grep '^HELP2MAN *=.*/missing --run help2man' Makefile
+grep '^HELP2MAN *=.*/missing help2man' Makefile
$MAKE
$FGREP foobar ../foobar.1
@@ -84,7 +84,7 @@ rm -f *.1 # Remove leftover generated manpages.
./configure
# Sanity check.
-grep '^HELP2MAN *=.*/missing --run help2man' Makefile
+grep '^HELP2MAN *=.*/missing help2man' Makefile
$MAKE
$FGREP foobar foobar.1
diff --git a/t/man7.sh b/t/man7.sh
index 5791b7218..3ce410e14 100755
--- a/t/man7.sh
+++ b/t/man7.sh
@@ -16,7 +16,7 @@
# Check for a bug in maintainer-clean w.r.t. generated manpages.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
dist_man_MANS = $(srcdir)/foo.1 bar.1
diff --git a/t/man8.sh b/t/man8.sh
index a7116ae7e..7396006ec 100755
--- a/t/man8.sh
+++ b/t/man8.sh
@@ -16,7 +16,7 @@
# Check for a bug in distcheck w.r.t. generated manpages.
-. ./defs || exit 1
+. test-init.sh
# Avoid a spurious failure due to a known FreeBSD make incompatibility.
useless_vpath_rebuild \
diff --git a/t/mdate.sh b/t/mdate.sh
index e44144a8f..009c753c9 100755
--- a/t/mdate.sh
+++ b/t/mdate.sh
@@ -16,7 +16,7 @@
# Test that mdate-sh is required when Texinfo used and version.texi needed.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = textutils.texi
diff --git a/t/mdate2.sh b/t/mdate2.sh
index 6ba57278b..ea005fe5e 100755
--- a/t/mdate2.sh
+++ b/t/mdate2.sh
@@ -16,7 +16,7 @@
# Test to make sure mdate-sh is included in distribution.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = textutils.texi
diff --git a/t/mdate3.sh b/t/mdate3.sh
index aa2755ee0..409abb78f 100755
--- a/t/mdate3.sh
+++ b/t/mdate3.sh
@@ -16,7 +16,7 @@
# Test to make sure mdate-sh run correctly.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/mdate4.sh b/t/mdate4.sh
index 70809a6a6..912ef418d 100755
--- a/t/mdate4.sh
+++ b/t/mdate4.sh
@@ -17,7 +17,7 @@
# Test to make sure that mdate-sh is added to the right directory.
# Report from Kevin Dalley.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/mdate5.sh b/t/mdate5.sh
index 0cbc19856..660366726 100755
--- a/t/mdate5.sh
+++ b/t/mdate5.sh
@@ -17,7 +17,7 @@
# Test to make sure mdate-sh works correctly.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
get_shell_script mdate-sh
diff --git a/t/mdate6.sh b/t/mdate6.sh
index 110bb2d57..fbb85571f 100755
--- a/t/mdate6.sh
+++ b/t/mdate6.sh
@@ -17,7 +17,7 @@
# mdate-sh can work with weird file names, doesn't eval too much.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
a=
file='file name $a'
diff --git a/t/missing-auxfile-stops-makefiles-creation.sh b/t/missing-auxfile-stops-makefiles-creation.sh
index d1c0cd41f..f8e91f9a4 100755
--- a/t/missing-auxfile-stops-makefiles-creation.sh
+++ b/t/missing-auxfile-stops-makefiles-creation.sh
@@ -17,7 +17,7 @@
# Automake should stop the creation of Makefile.in files at the first
# encountered error due to a required auxiliary file not found.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AM_PATH_PYTHON
diff --git a/t/missing2.sh b/t/missing-version-mismatch.sh
index a17c5fd3e..43ebf2002 100755
--- a/t/missing2.sh
+++ b/t/missing-version-mismatch.sh
@@ -16,43 +16,35 @@
# Test missing with version mismatches.
-. ./defs || exit 1
+am_create_testdir=empty
+. test-init.sh
-cat >>configure.ac <<'EOF'
-m4_include([v.m4])
-AC_OUTPUT
-EOF
+get_shell_script missing
-: > v.m4
+do_check ()
+{
+ progname=$1; shift;
+ ./missing "$@" 2>stderr && { cat stderr >&2; exit 1; }
+ cat stderr >&2
+ $FGREP "WARNING: '$progname' is probably too old." stderr
+}
-: > Makefile.am
+echo 'AC_INIT([x], [1.0]) AC_PREREQ([9999])' >> configure.ac
-get_shell_script missing
+do_check autoconf $AUTOCONF
+do_check autoheader $AUTOHEADER
+do_check aclocal-$APIVERSION $am_original_ACLOCAL
+
+cat > configure.ac << 'END'
+AC_INIT([x], [0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_FILES([Makefile])
+END
+echo AUTOMAKE_OPTIONS = 9999.9999 > Makefile.am
$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --add-missing
-
-# See the test 'missing.sh' for explanations about this.
-MYAUTOCONF="./missing --run $AUTOCONF"
-unset AUTOCONF
-
-./configure AUTOCONF="$MYAUTOCONF"
-
-$MAKE
-$sleep
-# Hopefully the install version of Autoconf cannot compete with this one...
-echo 'AC_PREREQ(9999)' > v.m4
-$MAKE distdir
-
-# Run again, but without missing, to ensure that timestamps were updated.
-export AUTOMAKE ACLOCAL
-./configure AUTOCONF="$MYAUTOCONF"
-$MAKE
-
-# Make sure $MAKE fail when timestamps aren't updated and missing is not used.
-$sleep
-touch v.m4
-$MAKE && exit 1
+: > install-sh
+# FIXME: this doesn't work due to a bug in automake (not 'missing').
+#do_check automake-$APIVERSION $am_original_AUTOMAKE
:
diff --git a/t/missing.sh b/t/missing.sh
deleted file mode 100755
index fcca48f85..000000000
--- a/t/missing.sh
+++ /dev/null
@@ -1,66 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2003-2012 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 missing with version mismatches.
-
-. ./defs || exit 1
-
-cat >>configure.ac <<'EOF'
-AC_OUTPUT
-EOF
-
-: > Makefile.am
-
-get_shell_script missing
-
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --add-missing
-
-# Make sure we do use missing, even if the user exported AUTOCONF.
-# (We cannot export this new value, because it would be used by Automake
-# when tracing, and missing is no good for this.)
-MYAUTOCONF="./missing --run $AUTOCONF"
-unset AUTOCONF
-
-./configure AUTOCONF="$MYAUTOCONF"
-$MAKE
-$sleep
-# Hopefully the install version of Autoconf cannot compete with this one...
-echo 'AC_PREREQ(9999)' >> aclocal.m4
-$MAKE distdir
-
-# Try version number suffixes if we can add them safely.
-case $MYAUTOCONF in *autoconf)
- ./configure AUTOCONF="${MYAUTOCONF}6789"
- $MAKE
- $sleep
- # Hopefully the install version of Autoconf cannot compete with this one...
- echo 'AC_PREREQ(9999)' >> aclocal.m4
- $MAKE distdir
-esac
-
-# Run again, but without missing, to ensure that timestamps were updated.
-export AUTOMAKE ACLOCAL
-./configure AUTOCONF="$MYAUTOCONF"
-$MAKE
-
-# Make sure $MAKE fails when timestamps aren't updated and missing is not used.
-$sleep
-touch aclocal.m4
-$MAKE && exit 1
-
-:
diff --git a/t/missing3.sh b/t/missing3.sh
index c5db4f038..3cd6333a0 100755
--- a/t/missing3.sh
+++ b/t/missing3.sh
@@ -17,37 +17,39 @@
# Test missing when running a tool's --version.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
get_shell_script missing
# b7cb8259 assumed not to exist.
-./missing b7cb8259 --version 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep . stderr && exit 1
-./missing b7cb8259 --grep 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep WARNING stderr
+run_cmd ()
+{
+ st=0; "$@" >stdout 2>stderr || st=$?
+ cat stdout
+ cat stderr >&2
+ return $st
+}
-./missing --run b7cb8259 --version && exit 1
-./missing --run b7cb8259 --grep 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep WARNING stderr
+run_cmd ./missing b7cb8259 --version && exit 1
+grep WARNING stderr && exit 1
+run_cmd ./missing b7cb8259 --grep && exit 1
+
+if test x"$am_test_prefer_config_shell" != x"yes"; then
+ # The /bin/sh from Solaris 10 is a spectacular failure. After a failure
+ # due to a "command not found", it sets '$?' to '1'.
+ if (st=0; /bin/sh -c 'no--such--command' || st=$?; test $st -eq 127); then
+ grep 'WARNING:.*missing on your system' stderr
+ fi
+fi
# missing itself it known to exist :)
-./missing ./missing --version 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep . stderr && exit 1
-./missing ./missing --grep 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep WARNING stderr
-
-./missing --run ./missing --version 2>stderr || { cat stderr >&2; exit 1; }
-cat stderr >&2
-grep . stderr && exit 1
-./missing --run ./missing --grep 2>stderr && { cat stderr >&2; exit 1; }
-cat stderr >&2
+run_cmd ./missing ./missing --version || exit 1
+grep 'missing .*(GNU [aA]utomake)' stdout
+test -s stderr && exit 1
+run_cmd ./missing ./missing --grep && exit 1
grep WARNING stderr && exit 1
-grep Unknown stderr
+grep "missing:.* unknown '--grep'" stderr
+
+:
diff --git a/t/missing5.sh b/t/missing5.sh
deleted file mode 100755
index 6e575b636..000000000
--- a/t/missing5.sh
+++ /dev/null
@@ -1,64 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2006-2012 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 how well 'missing' finds output file names of various tools.
-# PR automake/483.
-
-am_create_testdir=empty
-. ./defs || exit 1
-
-get_shell_script missing
-
-# These programs may be invoked by 'missing'.
-needed_tools='chmod find sed test touch'
-needed_tools_csep=$(echo $needed_tools | sed 's/ /, /g')
-
-cat >configure.ac <<EOF
-AC_INIT([missing4], [1.0])
-m4_foreach([tool], [$needed_tools_csep],
- [AC_PATH_PROG(tool, tool, [false])
- AC_CONFIG_FILES(tool, chmod +x tool)
- ])
-AC_OUTPUT
-EOF
-
-for tool in $needed_tools; do
- unindent >$tool.in <<EOF
- #! /bin/sh
- exec @$tool@ "\$@"
-EOF
-done
-
-$AUTOCONF
-./configure
-
-echo output-file > output-file
-cp output-file my--output--file-o
-
-save_PATH=$PATH
-PATH=.
-export PATH
-missing --help
-missing --version
-for tool in autom4te help2man makeinfo; do
- missing --run $tool -o my--output--file-o input
- missing --run $tool --output my--output--file-o input
-done
-PATH=$save_PATH
-export PATH
-diff output-file my--output--file-o
-test ! -e ./--file-o
-test ! -e input
diff --git a/t/mkdir_p.sh b/t/mkdir_p.sh
index 2cc68a3d5..bbd8c9358 100755
--- a/t/mkdir_p.sh
+++ b/t/mkdir_p.sh
@@ -17,7 +17,7 @@
# AM_INIT_AUTOMAKE should still define $(mkdir_p), for backward
# compatibility.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/mkdirp-deprecation.sh b/t/mkdirp-deprecation.sh
index 68ffa5819..6f3b1ee00 100755
--- a/t/mkdirp-deprecation.sh
+++ b/t/mkdirp-deprecation.sh
@@ -14,37 +14,13 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that the AM_PROG_MKDIR_P macro is deprecated; it will be
-# be removed in the next major Automake release. But also check
-# that it still works as expected in the current release series.
+# Check that the AM_PROG_MKDIR_P macro is deprecated. It will be
+# be removed in the next major Automake release.
-. ./defs || exit 1
+. test-init.sh
-cat >> configure.ac << 'END'
-AM_PROG_MKDIR_P
-AC_CONFIG_FILES([sub/Makefile])
-AC_OUTPUT
-END
-
-cat > Makefile.am << 'END'
-SUBDIRS = sub
-all-local:
- $(mkdir_p) . dir1/a
- @mkdir_p@ . dir2/b
-check-local: all
- test -d dir1/a
- test -d dir2/b
- test -d dir3/c
- test -d dir3/d
-END
-
-mkdir sub
-cat > sub/Makefile.am << 'END'
-# '$(mkdir_p)' should continue to work even in subdir makefiles.
-all-local:
- $(mkdir_p) .. ../dir3/c
- @mkdir_p@ .. ../dir3/d
-END
+echo AM_PROG_MKDIR_P >> configure.ac
+: > Makefile.am
grep_err ()
{
@@ -62,15 +38,11 @@ grep_err
$AUTOCONF -Werror -Wno-obsolete
-AUTOMAKE_fails
-grep_err
+#AUTOMAKE_fails
+#grep_err
AUTOMAKE_fails --verbose -Wnone -Wobsolete
grep_err
$AUTOMAKE -Wno-obsolete
-./configure
-$MAKE check-local
-$MAKE distcheck
-
:
diff --git a/t/mkinst2.sh b/t/mkinst2.sh
index daf8760ae..5ac297a22 100755
--- a/t/mkinst2.sh
+++ b/t/mkinst2.sh
@@ -16,7 +16,7 @@
# Test to make sure no-installman suppresses man dir creation.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/mkinst3.sh b/t/mkinst3.sh
index 258275821..02dca5e74 100755
--- a/t/mkinst3.sh
+++ b/t/mkinst3.sh
@@ -17,7 +17,7 @@
# Test mkinstalldirs with spaces in directory names.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cwd=$(pwd) || fatal_ "getting current working directory"
diff --git a/t/mkinstall.sh b/t/mkinstall.sh
index 51c1fe949..3fbb9a53e 100755
--- a/t/mkinstall.sh
+++ b/t/mkinstall.sh
@@ -16,7 +16,7 @@
# Test for bug where mkinstalldirs variable can be set incorrectly.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
pkgdata_DATA =
diff --git a/t/mmode.sh b/t/mmode.sh
index 23cb646a5..ea26c0202 100755
--- a/t/mmode.sh
+++ b/t/mmode.sh
@@ -16,7 +16,7 @@
# Check for AM_MAINTAINER_MODE defaults.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_MAINTAINER_MODE
diff --git a/t/mmodely.sh b/t/mmodely.sh
index 9147da1f2..e1b2807bd 100755
--- a/t/mmodely.sh
+++ b/t/mmodely.sh
@@ -19,7 +19,7 @@
# From Derek R. Price.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_MAINTAINER_MODE
diff --git a/t/multlib.sh b/t/multlib.sh
deleted file mode 100755
index 778db14e4..000000000
--- a/t/multlib.sh
+++ /dev/null
@@ -1,162 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2003-2012 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/>.
-
-# Check multilib support.
-# Based on a test case from Ralf Corsepius.
-# FIXME: the features tested by this script has been moved in contrib.
-# FIXME: We should move this script accordingly.
-
-required='gcc GNUmake'
-. ./defs || exit 1
-
-mldir=$am_top_srcdir/contrib/multilib
-mkdir m4
-cp "$mldir"/config-ml.in "$mldir"/symlink-tree .
-cp "$mldir"/multi.m4 m4
-
-ACLOCAL_PATH=${ACLOCAL_PATH+"$ACLOCAL_PATH:"}$(pwd)/m4
-export ACLOCAL_PATH
-
-cat >configure.ac <<'END'
-AC_INIT([multlib], [1.0])
-AC_CONFIG_SRCDIR(libfoo/foo.c)
-AC_CONFIG_AUX_DIR(.)
-AM_INIT_AUTOMAKE
-AC_CONFIG_FILES([Makefile])
-AC_CONFIG_SUBDIRS(libfoo)
-AC_CONFIG_SUBDIRS(libbar)
-AC_OUTPUT
-END
-
-cat >mycc <<'END'
-#! /bin/sh
-case ${1+"$@"} in
- *-print-multi-lib*)
- echo ".;"
- echo "debug;@g"
- exit 0 ;;
-esac
-gcc ${1+"$@"}
-END
-
-chmod +x mycc
-PATH=$(pwd)$PATH_SEPARATOR$PATH; export PATH
-
-cat >Makefile.am <<'EOF'
-SUBDIRS = @subdirs@
-EXTRA_DIST = config-ml.in symlink-tree
-check-all:
- test -f debug/libfoo/libfoo.a
- test -f debug/libbar/libbar.a
- test -f libfoo/libfoo.a
- test -f libbar/libbar.a
-EOF
-
-# libfoo tests multilib supports when there are no subdirectories
-# libbar tests multilib supports when there are subdirectories
-
-mkdir libfoo
-cp "$mldir"/multilib.am libfoo/
-
-cat >libfoo/configure.ac <<'END'
-AC_PREREQ(2.57)
-AC_INIT(libfoo, 0.1, nobody@localhost)
-AC_CONFIG_SRCDIR(foo.c)
-# Apparently it doesn't work to have auxdir=.. when
-# multilib uses symlinked trees.
-AC_CONFIG_AUX_DIR(.)
-AM_INIT_AUTOMAKE
-AC_PROG_CC
-AM_PROG_AR
-AC_PROG_RANLIB
-AM_ENABLE_MULTILIB(Makefile,[..])
-AC_CONFIG_FILES([Makefile])
-AC_OUTPUT
-END
-
-cat >libfoo/Makefile.am <<'END'
-noinst_LIBRARIES = libfoo.a
-libfoo_a_SOURCES = foo.c
-include $(top_srcdir)/multilib.am
-END
-
-: > libfoo/foo.c
-
-mkdir libbar
-cp "$mldir"/multilib.am libbar/
-
-cat >libbar/configure.ac <<'END'
-AC_PREREQ(2.57)
-AC_INIT(libbar, 0.1, nobody@localhost)
-# Apparently it doesn't work to have auxdir=.. when
-# multilib uses symlinked trees.
-AC_CONFIG_AUX_DIR(.)
-AM_INIT_AUTOMAKE
-AC_PROG_CC
-AM_PROG_AR
-AC_PROG_RANLIB
-AM_ENABLE_MULTILIB(Makefile,[..])
-AC_CONFIG_FILES([Makefile sub/Makefile])
-AC_OUTPUT
-END
-
-cat >libbar/Makefile.am <<'END'
-SUBDIRS = sub
-noinst_LIBRARIES = libbar.a
-libbar_a_SOURCES = bar.c
-include $(top_srcdir)/multilib.am
-END
-
-mkdir libbar/sub
-echo 'include $(top_srcdir)/multilib.am' >libbar/sub/Makefile.am
-: > libbar/bar.c
-
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --add-missing
-
-cd libfoo
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --add-missing
-cd ..
-
-cd libbar
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --add-missing
-cd ..
-
-# Check VPATH builds
-mkdir build
-cd build
-../configure --enable-multilib CC=mycc
-$MAKE
-test -f debug/libfoo/libfoo.a
-test -f debug/libbar/libbar.a
-test -f libfoo/libfoo.a
-test -f libbar/libbar.a
-$MAKE install
-$MAKE distcleancheck
-
-# Check standard builds.
-cd ..
-# Why to I have to specify --with-target-subdir?
-./configure --enable-multilib --with-target-subdir=. CC=mycc
-$MAKE check
-DISTCHECK_CONFIGURE_FLAGS='--enable-multilib CC=mycc' $MAKE distcheck
-
-:
diff --git a/t/no-extra-makefile-code.sh b/t/no-extra-makefile-code.sh
index ab0e33d3a..3673d45dd 100755
--- a/t/no-extra-makefile-code.sh
+++ b/t/no-extra-makefile-code.sh
@@ -19,7 +19,7 @@
# by a regression caused by removal of automatic de-ANSI-fication support:
# <http://lists.gnu.org/archive/html/automake-patches/2011-08/msg00200.html>
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/no-spurious-install-recursive.sh b/t/no-spurious-install-recursive.sh
index d16b58060..583686fbb 100755
--- a/t/no-spurious-install-recursive.sh
+++ b/t/no-spurious-install-recursive.sh
@@ -17,7 +17,7 @@
# Regression test for install-recursive appearing in a non recursive Makefile.
# Report from Bruno Haible.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
noinst_SCRIPTS = hostname
diff --git a/t/nobase-libtool.sh b/t/nobase-libtool.sh
index 4a6660176..af47c0128 100755
--- a/t/nobase-libtool.sh
+++ b/t/nobase-libtool.sh
@@ -19,7 +19,7 @@
# greater exposure of that test.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_PROG_CC
diff --git a/t/nobase-nodist.sh b/t/nobase-nodist.sh
index 1ec466f1e..ef5dfcedf 100755
--- a/t/nobase-nodist.sh
+++ b/t/nobase-nodist.sh
@@ -16,7 +16,7 @@
# Interaction of 'nobase_' and 'nodist_' prefixes.
-. ./defs || exit 1
+. test-init.sh
# Simulate no emacs and no python (it shouldn't be needed in this test).
EMACS="no" PYTHON=":"; export EMCAS PYTHON
diff --git a/t/nobase-python.sh b/t/nobase-python.sh
index 6480f26f8..de640f3ee 100755
--- a/t/nobase-python.sh
+++ b/t/nobase-python.sh
@@ -17,7 +17,7 @@
# Make sure nobase_* works for python files.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AM_PATH_PYTHON
diff --git a/t/nobase.sh b/t/nobase.sh
index 1432d8dbe..249eb29b9 100755
--- a/t/nobase.sh
+++ b/t/nobase.sh
@@ -17,7 +17,7 @@
# Make sure nobase_* works.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_PROG_CC
diff --git a/t/nodef.sh b/t/nodef.sh
index a9034fa30..8197f4403 100755
--- a/t/nodef.sh
+++ b/t/nodef.sh
@@ -16,13 +16,13 @@
# Make sure that PACKAGE and VERSION are AC_DEFINEd when requested.
-. ./defs || exit 1
+. test-init.sh
# -------------------------------------------------------------------
# Do not upgrade this file to use the modern AC_INIT/AM_INIT_AUTOMAKE
# forms. The day these obsolete AC_INIT and AM_INIT_AUTOMAKE forms
# are dropped, just erase the file.
-# nodef2.sh contains the modern version of this test.
+# nodef2.test contains the modern version of this test.
# -------------------------------------------------------------------
# First, check that PACKAGE and VERSION are output by default.
diff --git a/t/nodef2.sh b/t/nodef2.sh
index 2f7bb77ca..0a6a5ce2e 100755
--- a/t/nodef2.sh
+++ b/t/nodef2.sh
@@ -16,7 +16,7 @@
# Make sure that PACKAGE and VERSION are AC_DEFINEd when requested.
-. ./defs || exit 1
+. test-init.sh
# First, check that PACKAGE and VERSION are output by default.
diff --git a/t/nodep.sh b/t/nodep.sh
index 8a4ce8e9f..fba3e5f2b 100755
--- a/t/nodep.sh
+++ b/t/nodep.sh
@@ -17,7 +17,7 @@
# Test to make sure no-dependencies option does the right thing.
# Bug report from Greg A. Woods.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = no-dependencies
diff --git a/t/nodep2.sh b/t/nodep2.sh
index df411b763..5ad04a057 100755
--- a/t/nodep2.sh
+++ b/t/nodep2.sh
@@ -16,7 +16,7 @@
# Another test to make sure no-dependencies option does the right thing.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = foo
@@ -30,12 +30,7 @@ AC_CONFIG_FILES([Makefile])
AC_PROG_CC
AC_PROG_CXX
AC_PROG_OBJC
-# FIXME: this is to cater to older autoconf; remove this once we
-# FIXME: automake requires Autoconf 2.65 or later.
-m4_ifdef([AC_PROG_OBJCXX], [AC_PROG_OBJCXX], [
- AC_SUBST([OBJCXX], [whocares])
- AM_CONDITIONAL([am__fastdepOBJCXX], [whocares])
-])
+AC_PROG_OBJCXX
AM_PROG_AS
AM_PROG_GCJ
AM_PROG_UPC
diff --git a/t/nodepcomp.sh b/t/nodepcomp.sh
index 25c66b596..9e96dc152 100755
--- a/t/nodepcomp.sh
+++ b/t/nodepcomp.sh
@@ -16,7 +16,7 @@
# Test to make sure depcomp isn't always required.
-. ./defs || exit 1
+. test-init.sh
rm -f depcomp
diff --git a/t/nodist.sh b/t/nodist.sh
index f63ea976a..b7f491c68 100755
--- a/t/nodist.sh
+++ b/t/nodist.sh
@@ -16,7 +16,7 @@
# Test to make sure dist_*_SOURCES and nodist_*_SOURCES work.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/nodist2.sh b/t/nodist2.sh
index 9db9dcee3..36b66917e 100755
--- a/t/nodist2.sh
+++ b/t/nodist2.sh
@@ -17,7 +17,7 @@
# Test to make sure nodist_noinst_HEADERS work.
# For PR 249.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_OUTPUT
diff --git a/t/nodist3.sh b/t/nodist3.sh
index f45f66f9e..cb302d25e 100755
--- a/t/nodist3.sh
+++ b/t/nodist3.sh
@@ -16,7 +16,7 @@
# Test to make sure no-dist option works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/noinst.sh b/t/noinst.sh
index ca4440fde..39fd72cf2 100755
--- a/t/noinst.sh
+++ b/t/noinst.sh
@@ -17,7 +17,7 @@
# Check to make sure "make install" will build all in directory with
# nothing to install.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
all-local:
diff --git a/t/noinstdir.sh b/t/noinstdir.sh
index 24854cf64..e2a7a844c 100755
--- a/t/noinstdir.sh
+++ b/t/noinstdir.sh
@@ -18,7 +18,7 @@
# From Pavel Roskin.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
noinst_SCRIPTS = foo.sh
diff --git a/t/nolink.sh b/t/nolink.sh
index 34219b201..cd0495cf2 100755
--- a/t/nolink.sh
+++ b/t/nolink.sh
@@ -16,7 +16,7 @@
# Make sure Automake does not emit a link rule for unknown languages.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = no-exeext
diff --git a/t/nostdinc.sh b/t/nostdinc.sh
index 812c6be22..93761d55a 100755
--- a/t/nostdinc.sh
+++ b/t/nostdinc.sh
@@ -21,7 +21,7 @@
# just skip the rest of the test if configure fails to find a working C
# compiler.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/notrans.sh b/t/notrans.sh
index d997e97a1..4b2c8039a 100755
--- a/t/notrans.sh
+++ b/t/notrans.sh
@@ -17,7 +17,7 @@
# Check all notrans_, dist_, nodist_ prefix combinations for MANS
# primary and install-man dependencies.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/number.sh b/t/number.sh
index e0ccd240e..673805e50 100755
--- a/t/number.sh
+++ b/t/number.sh
@@ -17,7 +17,7 @@
# Test to make sure _OBJECTS is only generated once. Bug reported by
# Joerg-Martin Schwarz.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/objc-basic.sh b/t/objc-basic.sh
index 919bb10d5..028cbc245 100755
--- a/t/objc-basic.sh
+++ b/t/objc-basic.sh
@@ -15,7 +15,7 @@
# require an Objective-C compiler.
# See also sister test 'objcxx-basic.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<'END'
bin_PROGRAMS = hello
diff --git a/t/objc-deps.sh b/t/objc-deps.sh
index 31bc30dcc..2ac4ad0d7 100755
--- a/t/objc-deps.sh
+++ b/t/objc-deps.sh
@@ -17,7 +17,7 @@
# Automatic dependency tracking for Objective C.
# See also sister test 'objcxx-deps.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_OBJC
diff --git a/t/objc-flags.sh b/t/objc-flags.sh
index e98a81128..91b00437e 100755
--- a/t/objc-flags.sh
+++ b/t/objc-flags.sh
@@ -16,7 +16,7 @@
# Test Objective C compilation flags.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_OBJC
@@ -57,6 +57,6 @@ grep '\$(OBJCFLAGS).*\$(foo.*_OBJCFLAGS)' Makefile.in && exit 1
grep '\$(foo.*_OBJCFLAGS).*\$(AM_OBJCFLAGS)' Makefile.in && exit 1
./configure OBJCFLAGS=-UERROR
-$MAKE
+$MAKE
:
diff --git a/t/objc-megademo.sh b/t/objc-megademo.sh
index 876fecbf7..a94f5f70e 100755
--- a/t/objc-megademo.sh
+++ b/t/objc-megademo.sh
@@ -18,15 +18,13 @@
required=libtoolize
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
## Autotools Input Files.
cat > configure.ac << 'END'
AC_INIT([play], [1.3], [bug-automake@gnu.org])
-dnl Support for Object C++ was introduced only in Autoconf 2.65.
-AC_PREREQ([2.65])
AC_CONFIG_SRCDIR([play.c])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
@@ -87,13 +85,7 @@ END
## Run Autotools.
libtoolize
-if $ACLOCAL; then
- : We have a modern enough autoconf, go ahead.
-elif test $? -eq 63; then
- skip_ "Object C++ support requires Autoconf 2.65 or later"
-else
- exit 1 # Some other aclocal failure.
-fi
+$ACLOCAL
$AUTOHEADER
$AUTOCONF
$AUTOMAKE --add-missing
diff --git a/t/objc-minidemo.sh b/t/objc-minidemo.sh
index e20a0369e..8b8d6e71e 100755
--- a/t/objc-minidemo.sh
+++ b/t/objc-minidemo.sh
@@ -18,7 +18,7 @@
# See also sister test 'objcxx-minidemo.sh'.
required=native
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_OBJC
diff --git a/t/objcxx-basic.sh b/t/objcxx-basic.sh
index e00106d79..e176660c9 100755
--- a/t/objcxx-basic.sh
+++ b/t/objcxx-basic.sh
@@ -15,7 +15,7 @@
# require an Objective-C++ compiler.
# See also sister test 'objc-basic.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<'END'
bin_PROGRAMS = hello
@@ -30,19 +30,10 @@ grep "add .*'AC_PROG_OBJCXX'" stderr
rm -rf autom4te*.cache
cat >> configure.ac <<'END'
-dnl Support for Object C++ was introduced only in Autoconf 2.65.
-AC_PREREQ([2.65])
AC_PROG_OBJCXX
END
-if $ACLOCAL; then
- : We have a modern enough autoconf, go ahead.
-elif test $? -eq 63; then
- skip_ "Object C++ support requires Autoconf 2.65 or later"
-else
- exit 1 # Some other aclocal failure.
-fi
-
+$ACLOCAL
$AUTOMAKE
$EGREP '^\.SUFFIXES:.* \.mm( |$)' Makefile.in
diff --git a/t/objcxx-deps.sh b/t/objcxx-deps.sh
index fef4ac549..5f3508064 100755
--- a/t/objcxx-deps.sh
+++ b/t/objcxx-deps.sh
@@ -17,11 +17,9 @@
# Automatic dependency tracking for Objective C++.
# See also sister test 'objc-deps.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-dnl Support for Object C++ was introduced only in Autoconf 2.65.
-AC_PREREQ([2.65])
AC_PROG_OBJCXX
AC_OUTPUT
END
@@ -50,13 +48,7 @@ int main (void)
}
END
-if $ACLOCAL; then
- : We have a modern enough autoconf, go ahead.
-elif test $? -eq 63; then
- skip_ "Object C++ support requires Autoconf 2.65 or later"
-else
- exit 1 # Some other aclocal failure.
-fi
+$ACLOCAL
$AUTOCONF
$AUTOMAKE --add-missing
diff --git a/t/objcxx-flags.sh b/t/objcxx-flags.sh
index 8f5df45cb..2dde42b9c 100755
--- a/t/objcxx-flags.sh
+++ b/t/objcxx-flags.sh
@@ -17,11 +17,9 @@
# Test Objective C++ compilation flags.
# See also sister test 'objc-flags.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-dnl Support for Object C++ was introduced only in Autoconf 2.65.
-AC_PREREQ([2.65])
AC_PROG_OBJCXX
AC_OUTPUT
END
@@ -50,14 +48,7 @@ for i in 2 4; do
END
done
-if $ACLOCAL; then
- : We have a modern enough autoconf, go ahead.
-elif test $? -eq 63; then
- skip_ "Object C++ support requires Autoconf 2.65 or later"
-else
- exit 1 # Some other aclocal failure.
-fi
-
+$ACLOCAL
$AUTOCONF
$AUTOMAKE -a
@@ -67,6 +58,6 @@ grep '\$(OBJCXXFLAGS).*\$(foo.*_OBJCXXFLAGS)' Makefile.in && exit 1
grep '\$(foo.*_OBJCXXFLAGS).*\$(AM_OBJCXXFLAGS)' Makefile.in && exit 1
./configure OBJCXXFLAGS=-UERROR
-$MAKE
+$MAKE
:
diff --git a/t/objcxx-minidemo.sh b/t/objcxx-minidemo.sh
index e4e776789..52d692d94 100755
--- a/t/objcxx-minidemo.sh
+++ b/t/objcxx-minidemo.sh
@@ -18,11 +18,9 @@
# See also sister test 'objc-minidemo.sh'.
required=native
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
-dnl Support for Object C++ was introduced only in Autoconf 2.65.
-AC_PREREQ([2.65])
AC_PROG_OBJCXX
AC_CONFIG_HEADERS([config.h])
AC_OUTPUT
@@ -57,13 +55,7 @@ int main (void)
}
END
-if $ACLOCAL; then
- : We have a modern enough autoconf, go ahead.
-elif test $? -eq 63; then
- skip_ "Object C++ support requires Autoconf 2.65 or later"
-else
- exit 1 # Some other aclocal failure.
-fi
+$ACLOCAL
$AUTOCONF
$AUTOHEADER
$AUTOMAKE --add-missing
diff --git a/t/objext-pr10128.sh b/t/objext-pr10128.sh
index e773b72b3..da77c418c 100755
--- a/t/objext-pr10128.sh
+++ b/t/objext-pr10128.sh
@@ -17,7 +17,7 @@
# Test for automake bug#10128: $(OBJEXT) redefinition causes
# $(foo_OBJECTS) to be defined as empty.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/obsolete.sh b/t/obsolete.sh
deleted file mode 100755
index 2a21f54ed..000000000
--- a/t/obsolete.sh
+++ /dev/null
@@ -1,57 +0,0 @@
-#! /bin/sh
-# Copyright (C) 1996-2012 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 to make sure obsolete macros can be autoupdated.
-
-# We need the following indirection in case someone exported e.g.
-# AUTOUPDATE='autoupdate --verbose'.
-set x ${AUTOUPDATE-autoupdate}
-required=$2
-. ./defs || exit 1
-
-cat > configure.ac << 'END'
-AC_INIT
-END
-
-$PERL -ne '/AU_DEFUN\(\[(\w+)\]/ && print "$1\n"' \
- "$am_automake_acdir/obsolete.m4" > obs
-cat obs >> configure.ac
-$PERL -ne 'chomp; print "grep $_ output || exit 1\n"; ' obs > obs.1
-$PERL -ne 'chomp; print "grep $_ configure.ac && exit 1\n"; ' obs > obs.2
-echo : >> obs.1 # Since it will be sourced, it must end with a success.
-echo : >> obs.2 # Likewise.
-
-cat configure.ac # For debugging.
-cat obs.1 # Likewise.
-cat obs.2 # Likewise.
-
-# Sanity check. Make sure we have added something to configure.ac.
-test $(wc -l <configure.ac) -gt 1
-
-$ACLOCAL
-
-# Expect Autoconf to complain about each of the macros in obs.
-$AUTOCONF -Wobsolete >output 2>&1 || { cat output; exit 1; }
-cat output
-. ./obs.1
-# Make sure Autoupdate remove each of these macros.
-$AUTOUPDATE
-. ./obs.2
-
-# Autoconf should be able to grok the updated configure.ac.
-$AUTOCONF
-
-:
diff --git a/t/oldvars.sh b/t/oldvars.sh
index 26f6001b2..5f422297c 100755
--- a/t/oldvars.sh
+++ b/t/oldvars.sh
@@ -17,7 +17,7 @@
# Use of these variables is deprecated:
# LISP, HEADERS, DATA, SCRIPTS, LTLIBRARIES, LIBRARIES, PROGRAMS, MANS.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am <<\EOF
DATA =
diff --git a/t/order.sh b/t/order.sh
index cd0beac9d..6f5dd1760 100755
--- a/t/order.sh
+++ b/t/order.sh
@@ -17,7 +17,7 @@
# Make sure AC_DEFUN is handled correctly. This test isn't named very
# well. Report from Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
jm_TEST
diff --git a/t/output-order.sh b/t/output-order.sh
index 02b26df29..569be906b 100755
--- a/t/output-order.sh
+++ b/t/output-order.sh
@@ -17,7 +17,7 @@
# Test that 'automake -a' output order is stable.
# From report by Bruno Haible.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/output.sh b/t/output.sh
index a21fe8920..1a7cd1fe6 100755
--- a/t/output.sh
+++ b/t/output.sh
@@ -16,7 +16,7 @@
# Test to make sure files listed in AC_OUTPUT are found.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/output10.sh b/t/output10.sh
index c6130f910..170287280 100755
--- a/t/output10.sh
+++ b/t/output10.sh
@@ -18,7 +18,7 @@
# This is comparable to 'output9.sh', but testing Makefile rules.
# PR/411
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << END
AC_SUBST([FOO], [top])
diff --git a/t/output11.sh b/t/output11.sh
index 7dbd835a9..5b66a433c 100755
--- a/t/output11.sh
+++ b/t/output11.sh
@@ -16,7 +16,7 @@
# Make sure an AC_CONFIG_FILES ignore filenames with shell variables.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << \END
AC_SUBST([FOO], [foo])
diff --git a/t/output12.sh b/t/output12.sh
index 80e0f2084..8462b48b8 100755
--- a/t/output12.sh
+++ b/t/output12.sh
@@ -16,7 +16,7 @@
# Make sure an AC_CONFIG_FILES process filenames with AC_SUBST variables.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << \END
AC_SUBST([FOO], [foo])
diff --git a/t/output13.sh b/t/output13.sh
index 16bc0f9e4..e96552ad3 100755
--- a/t/output13.sh
+++ b/t/output13.sh
@@ -17,7 +17,7 @@
# Make sure an AC_CONFIG_FILES, AC_CONFIG_LINKS, and AC_CONFIG_COMMANDS
# are not prerequisites of 'all'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << \END
AC_SUBST([FOO], [foo])
diff --git a/t/output2.sh b/t/output2.sh
index 615f6cf5e..a69b97924 100755
--- a/t/output2.sh
+++ b/t/output2.sh
@@ -16,7 +16,7 @@
# Another AC_OUTPUT test. From report by Ulrich Drepper.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/output3.sh b/t/output3.sh
index 2e4f38a54..171c9fb16 100755
--- a/t/output3.sh
+++ b/t/output3.sh
@@ -16,7 +16,7 @@
# Yet another AC_OUTPUT test.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/output4.sh b/t/output4.sh
index 54d49e297..f5d35358b 100755
--- a/t/output4.sh
+++ b/t/output4.sh
@@ -16,7 +16,7 @@
# It's hard to believe there are so many AC_OUTPUT-related bugs.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/output5.sh b/t/output5.sh
index 8222ea700..f1453c65e 100755
--- a/t/output5.sh
+++ b/t/output5.sh
@@ -16,7 +16,7 @@
# Make sure Automake complains when there is no Makefile specified.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([foo], [bar], [baz])
diff --git a/t/output6.sh b/t/output6.sh
index 418e1a5af..2d4f3d47a 100755
--- a/t/output6.sh
+++ b/t/output6.sh
@@ -16,7 +16,7 @@
# Check for support for colon-separated input files in AC_CONFIG_FILES.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/output7.sh b/t/output7.sh
index d5aca2995..22d41f990 100755
--- a/t/output7.sh
+++ b/t/output7.sh
@@ -17,7 +17,7 @@
# Check for support for colon separated input files in AC_CONFIG_FILES,
# with sources in sub directories.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/output8.sh b/t/output8.sh
index 62cade51c..d9f834497 100755
--- a/t/output8.sh
+++ b/t/output8.sh
@@ -17,7 +17,7 @@
# Check AC_CONFIG_FILES support for files starting with '../'.
# Report from Bruno Haible.
-. ./defs || exit 1
+. test-init.sh
mkdir testdir
cd testdir
diff --git a/t/output9.sh b/t/output9.sh
index 54dc8c12f..e5b55fe65 100755
--- a/t/output9.sh
+++ b/t/output9.sh
@@ -16,7 +16,7 @@
# Make sure an AC_CONFIG_FILES can have an AC_CONFIG_FILES output as input.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << END
AC_CONFIG_FILES([a/mid.in:a/input.in.in])
diff --git a/t/override-conditional-1.sh b/t/override-conditional-1.sh
index 42e03505c..8ccae76c3 100755
--- a/t/override-conditional-1.sh
+++ b/t/override-conditional-1.sh
@@ -16,7 +16,7 @@
# Test for conditionally-defined overrides.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND], [test x"$cond" = x"yes"])
diff --git a/t/override-conditional-2.sh b/t/override-conditional-2.sh
index 58ab1fda3..00fa63d3f 100755
--- a/t/override-conditional-2.sh
+++ b/t/override-conditional-2.sh
@@ -18,7 +18,7 @@
# This test is still xfailing; see the FIXME in Automake::Rule::define.
# Once that is fixed, the test should succeed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND], [:])
diff --git a/t/override-html.sh b/t/override-html.sh
index 777d946e2..c5fbebb7e 100755
--- a/t/override-html.sh
+++ b/t/override-html.sh
@@ -17,7 +17,7 @@
# Test that overriding 'html' target causes only one "html:" rule to
# be output.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
html:
diff --git a/t/override-suggest-local.sh b/t/override-suggest-local.sh
index 11b7fb96b..671683f02 100755
--- a/t/override-suggest-local.sh
+++ b/t/override-suggest-local.sh
@@ -17,7 +17,7 @@
# Make sure automake -Woverride suggests using TARGET-local instead
# of TARGET when possible.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
install:
diff --git a/t/parallel-am.sh b/t/parallel-am.sh
index bd50af9e6..4b6ea5f30 100755
--- a/t/parallel-am.sh
+++ b/t/parallel-am.sh
@@ -36,7 +36,7 @@
# This test checks (0), (1), and (2). See sister tests for further coverage.
required=perl-threads
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([parallel-am], [1.0])
diff --git a/t/parallel-am2.sh b/t/parallel-am2.sh
index 0cca565d7..cb9853b65 100755
--- a/t/parallel-am2.sh
+++ b/t/parallel-am2.sh
@@ -21,7 +21,7 @@
# warnings should be omitted in the same way as without threads.
required=perl-threads
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/parallel-am3.sh b/t/parallel-am3.sh
index 1bc12bbbc..9951aa546 100755
--- a/t/parallel-am3.sh
+++ b/t/parallel-am3.sh
@@ -22,7 +22,7 @@
# installation of aux files should be race-free.
required=perl-threads
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([parallel-am], [1.0])
diff --git a/t/parallel-tests-basics.sh b/t/parallel-tests-basics.sh
index a1062d3fc..3022e2282 100755
--- a/t/parallel-tests-basics.sh
+++ b/t/parallel-tests-basics.sh
@@ -23,7 +23,7 @@
# - TEST_LOGS redefinition at runtime
# - RECHECK_LOGS redefinition at runtime
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-cmdline-override.sh b/t/parallel-tests-cmdline-override.sh
index 4e8780f05..37215a66f 100755
--- a/t/parallel-tests-cmdline-override.sh
+++ b/t/parallel-tests-cmdline-override.sh
@@ -17,7 +17,7 @@
# Check that we can use indirections when overriding TESTS and
# TEST_LOGS from the command line.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-concurrency-2.sh b/t/parallel-tests-concurrency-2.sh
index 1a88ddfcd..bb38d509c 100755
--- a/t/parallel-tests-concurrency-2.sh
+++ b/t/parallel-tests-concurrency-2.sh
@@ -21,7 +21,7 @@
# It merely serves as demonstration. :-)
required='cc native GNUmake'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-concurrency.sh b/t/parallel-tests-concurrency.sh
index b606276fa..702572d9d 100755
--- a/t/parallel-tests-concurrency.sh
+++ b/t/parallel-tests-concurrency.sh
@@ -17,7 +17,7 @@
# Check parallel-tests features:
# - concurrent parallel execution
-. ./defs || exit 1
+. test-init.sh
case $MAKE in
*\ -j*) skip_ "\$MAKE contains '-j'";;
diff --git a/t/parallel-tests-console-output.sh b/t/parallel-tests-console-output.sh
index 22650082a..409047e99 100755
--- a/t/parallel-tests-console-output.sh
+++ b/t/parallel-tests-console-output.sh
@@ -17,7 +17,7 @@
# parallel-tests: some checks on console output about testsuite
# progress.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-driver-install.sh b/t/parallel-tests-driver-install.sh
index 994066187..803762bda 100755
--- a/t/parallel-tests-driver-install.sh
+++ b/t/parallel-tests-driver-install.sh
@@ -15,19 +15,15 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Check that auxiliary script 'test-driver' gets automatically installed
-# in the correct directory by 'parallel-tests' option.
+# in the correct directory.
-. ./defs || exit 1
-
-: Try first with parallel-tests defined in AM_INIT_AUTOMAKE.
-
-mkdir am-init-automake
-cd am-init-automake
+am_create_testdir=empty
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
AC_CONFIG_AUX_DIR([my_aux_dir])
-AM_INIT_AUTOMAKE([parallel-tests])
+AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile sub/Makefile])
AC_OUTPUT
END
@@ -52,41 +48,6 @@ test -f my_aux_dir/test-driver
test ! -e test-driver
test ! -e sub/test-driver
-grep '^configure\.ac:3:.*installing.*my_aux_dir/test-driver' stderr
-
-cd ..
-
-: Now try with parallel-tests defined in AUTOMAKE_OPTIONS.
-
-mkdir automake-options
-cd automake-options
-
-cat > configure.ac <<END
-AC_INIT([$me], [1.0])
-AC_CONFIG_AUX_DIR([build-aux])
-AM_INIT_AUTOMAKE
-AC_CONFIG_FILES([dir/GNUmakefile])
-AC_OUTPUT
-END
-
-mkdir build-aux dir
-
-cat > dir/GNUmakefile.am <<END
-TESTS = foo.test
-AUTOMAKE_OPTIONS = parallel-tests
-TESTS += bar.test
-END
-
-$ACLOCAL
-$AUTOMAKE --add-missing --copy dir/GNUmakefile 2>stderr \
- || { cat stderr >&2; exit 1; }
-cat stderr >&2
-
-ls -l . dir build-aux # For debugging.
-test -f build-aux/test-driver
-test ! -e test-driver
-test ! -e dir/test-driver
-
-grep '^dir/GNUmakefile\.am:2:.*installing.*build-aux/test-driver' stderr
+grep '^parallel-tests:.*installing.*my_aux_dir/test-driver' stderr
:
diff --git a/t/parallel-tests-dry-run-1.sh b/t/parallel-tests-dry-run-1.sh
index 376a81a42..5809dbacc 100755
--- a/t/parallel-tests-dry-run-1.sh
+++ b/t/parallel-tests-dry-run-1.sh
@@ -14,10 +14,10 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check parallel-tests interactions with "make -n".
+# Check interactions between the parallel test harness and "make -n".
# See also sister test 'parallel-tests-dry-run-2.sh'.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/parallel-tests-dry-run-2.sh b/t/parallel-tests-dry-run-2.sh
index d041d2d21..d47a76a8c 100755
--- a/t/parallel-tests-dry-run-2.sh
+++ b/t/parallel-tests-dry-run-2.sh
@@ -14,10 +14,10 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check parallel-tests interactions with "make -n".
+# Check interactions between the parallel test harness and "make -n".
# See also sister test 'parallel-tests-dry-run-1.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-empty-testlogs.sh b/t/parallel-tests-empty-testlogs.sh
index 0ed2ff255..37ed83d40 100755
--- a/t/parallel-tests-empty-testlogs.sh
+++ b/t/parallel-tests-empty-testlogs.sh
@@ -18,7 +18,7 @@
# - empty TESTS
# - empty TEST_LOGS
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub1/Makefile sub2/Makefile])
diff --git a/t/parallel-tests-empty.sh b/t/parallel-tests-empty.sh
index 146f1fc30..a367038ca 100755
--- a/t/parallel-tests-empty.sh
+++ b/t/parallel-tests-empty.sh
@@ -19,7 +19,7 @@
# BSD make will expand '$(TESTS:=.log)' to '.log' unless overridden.
# See 'parallel-tests-trailing-whitespace.sh' for a similar issue.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
END
diff --git a/t/parallel-tests-exeext.sh b/t/parallel-tests-exeext.sh
index 22a5aadb1..bb96635a5 100755
--- a/t/parallel-tests-exeext.sh
+++ b/t/parallel-tests-exeext.sh
@@ -17,7 +17,7 @@
# parallel-tests:
# - check2.am and interaction with $(EXEEXT)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
dnl We need to fool the init.m4 internals a little.
diff --git a/t/parallel-tests-exit-statuses.sh b/t/parallel-tests-exit-statuses.sh
index bd5bb7685..a7d62300f 100755
--- a/t/parallel-tests-exit-statuses.sh
+++ b/t/parallel-tests-exit-statuses.sh
@@ -17,7 +17,7 @@
# Check parallel-tests features: normal and special exit statuses
# in the test scripts.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-extra-programs.sh b/t/parallel-tests-extra-programs.sh
index 0a7f97c30..75a34b7a2 100755
--- a/t/parallel-tests-extra-programs.sh
+++ b/t/parallel-tests-extra-programs.sh
@@ -18,7 +18,7 @@
# (or even be) $(EXTRA_PROGRAMS).
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-fd-redirect-exeext.sh b/t/parallel-tests-fd-redirect-exeext.sh
index 357576524..80b6b2885 100755
--- a/t/parallel-tests-fd-redirect-exeext.sh
+++ b/t/parallel-tests-fd-redirect-exeext.sh
@@ -22,7 +22,7 @@
# sister test 'parallel-tests-fd-redirect.sh'.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-fd-redirect.sh b/t/parallel-tests-fd-redirect.sh
index 7cb59c350..ec48e4edf 100755
--- a/t/parallel-tests-fd-redirect.sh
+++ b/t/parallel-tests-fd-redirect.sh
@@ -20,7 +20,7 @@
# check for tests that are binary executables.
# See also the more generic test 'check-fd-redirect.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-fork-bomb.sh b/t/parallel-tests-fork-bomb.sh
index 493e6713c..0698742c8 100755
--- a/t/parallel-tests-fork-bomb.sh
+++ b/t/parallel-tests-fork-bomb.sh
@@ -18,7 +18,7 @@
# - If $(TEST_SUITE_LOG) is in $(TEST_LOGS), we get a diagnosed
# error, not a make hang or a system freeze.
-. ./defs || exit 1
+. test-init.sh
# We don't want localized error messages from make, since we'll have
# to grep them. See automake bug#11452.
diff --git a/t/parallel-tests-generated-and-distributed.sh b/t/parallel-tests-generated-and-distributed.sh
index eb48f9382..ff6c2f50b 100755
--- a/t/parallel-tests-generated-and-distributed.sh
+++ b/t/parallel-tests-generated-and-distributed.sh
@@ -24,7 +24,7 @@
# manual for the ugliness in this area, when VPATH comes into
# play. :-/
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-harderror.sh b/t/parallel-tests-harderror.sh
index 8e1e014d7..88c5f595e 100755
--- a/t/parallel-tests-harderror.sh
+++ b/t/parallel-tests-harderror.sh
@@ -16,7 +16,7 @@
# Check parallel-tests features: DISABLE_HARD_ERRORS
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/parallel-tests-interrupt.tap b/t/parallel-tests-interrupt.tap
index bce25b3be..406bd7ac5 100755
--- a/t/parallel-tests-interrupt.tap
+++ b/t/parallel-tests-interrupt.tap
@@ -14,12 +14,12 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that the parallel-tests driver removed incomplete log files
+# Check that the parallel testsuite harness removes incomplete log files
# when interrupt upon some signal. This test is definitely too hacky,
# but we couldn't find a better way to deal with inter-processes
# signals and the whole process-synchronization mess.
-. ./defs || exit 1
+. test-init.sh
plan_ 16
diff --git a/t/parallel-tests-log-compiler-1.sh b/t/parallel-tests-log-compiler-1.sh
index 0e8c9d892..9214a071e 100755
--- a/t/parallel-tests-log-compiler-1.sh
+++ b/t/parallel-tests-log-compiler-1.sh
@@ -19,7 +19,7 @@
# and xxx_LOG_FLAGS), also with AC_SUBST'd stuff.
# See also related test 'parallel-tests-log-compiler-2.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([acsubst_compiler], [t-compiler])
diff --git a/t/parallel-tests-log-compiler-2.sh b/t/parallel-tests-log-compiler-2.sh
index 775a4d1bd..2790dcb9e 100755
--- a/t/parallel-tests-log-compiler-2.sh
+++ b/t/parallel-tests-log-compiler-2.sh
@@ -20,7 +20,7 @@
# See also related test 'parallel-tests-log-compiler-1.sh'.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-log-compiler-example.sh b/t/parallel-tests-log-compiler-example.sh
index 0d66b646c..1c0d44d86 100755
--- a/t/parallel-tests-log-compiler-example.sh
+++ b/t/parallel-tests-log-compiler-example.sh
@@ -18,7 +18,7 @@
# LOG_COMPILER and LOG_FLAGS given in the manual.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_SUBST([PERL], ['$PERL'])
diff --git a/t/parallel-tests-log-override-1.sh b/t/parallel-tests-log-override-1.sh
index e4af517de..cf77e82d9 100755
--- a/t/parallel-tests-log-override-1.sh
+++ b/t/parallel-tests-log-override-1.sh
@@ -16,7 +16,7 @@
# Check parallel-tests features: runtime redefinition of $(TEST_SUITE_LOG).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/parallel-tests-log-override-2.sh b/t/parallel-tests-log-override-2.sh
index a747b00ee..0cbf73052 100755
--- a/t/parallel-tests-log-override-2.sh
+++ b/t/parallel-tests-log-override-2.sh
@@ -18,7 +18,7 @@
# - $(TEST_SUITE_LOG) and $(TESTS)
# - $(TEST_SUITE_LOG) and $(TEST_LOGS)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/parallel-tests-log-override-recheck.sh b/t/parallel-tests-log-override-recheck.sh
index a6ab21694..df08bd3bc 100755
--- a/t/parallel-tests-log-override-recheck.sh
+++ b/t/parallel-tests-log-override-recheck.sh
@@ -17,7 +17,7 @@
# Check parallel-tests features: runtime redefinition of $(TEST_SUITE_LOG)
# for the recheck target.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/parallel-tests-no-color-in-log.sh b/t/parallel-tests-no-color-in-log.sh
index fe1036b07..fb6fc1375 100755
--- a/t/parallel-tests-no-color-in-log.sh
+++ b/t/parallel-tests-no-color-in-log.sh
@@ -17,7 +17,7 @@
# Colorized output from the testsuite report shouldn't end up in log files.
required='grep-nonprint'
-. ./defs || exit 1
+. test-init.sh
TERM=ansi; export TERM
@@ -27,7 +27,7 @@ END
cat >Makefile.am <<'END'
LOG_COMPILER = $(SHELL)
-AUTOMAKE_OPTIONS = color-tests parallel-tests
+AUTOMAKE_OPTIONS = color-tests
TESTS = pass fail skip xpass xfail error
XFAIL_TESTS = xpass xfail
END
diff --git a/t/parallel-tests-no-spurious-summary.sh b/t/parallel-tests-no-spurious-summary.sh
index 008852924..751ddb020 100755
--- a/t/parallel-tests-no-spurious-summary.sh
+++ b/t/parallel-tests-no-spurious-summary.sh
@@ -17,7 +17,7 @@
# Check that ':test-results:' directives in test scripts' output doesn't
# originate spurious results in the testsuite summary.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-once.sh b/t/parallel-tests-once.sh
index 67fcbab10..d27224a31 100755
--- a/t/parallel-tests-once.sh
+++ b/t/parallel-tests-once.sh
@@ -18,7 +18,7 @@
# clean directory. An early implementation of the '.trs' intermediate
# files incurred a similar problem.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-recheck-depends-on-all.sh b/t/parallel-tests-recheck-depends-on-all.sh
index af53061a6..14783fd72 100755
--- a/t/parallel-tests-recheck-depends-on-all.sh
+++ b/t/parallel-tests-recheck-depends-on-all.sh
@@ -18,7 +18,7 @@
# See automake bug#11252.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-recheck-pr11791.sh b/t/parallel-tests-recheck-pr11791.sh
index 2d2fc5a71..22203c92a 100755
--- a/t/parallel-tests-recheck-pr11791.sh
+++ b/t/parallel-tests-recheck-pr11791.sh
@@ -18,7 +18,7 @@
# failures for the test cases. See automake bug#11791.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-recheck.sh b/t/parallel-tests-recheck.sh
index ea9dba665..85adf6995 100755
--- a/t/parallel-tests-recheck.sh
+++ b/t/parallel-tests-recheck.sh
@@ -17,7 +17,7 @@
# Check parallel-tests features:
# - recheck
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-reset-term.sh b/t/parallel-tests-reset-term.sh
index 88a98522e..3555fcbb5 100755
--- a/t/parallel-tests-reset-term.sh
+++ b/t/parallel-tests-reset-term.sh
@@ -14,11 +14,11 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that the parallel-tests driver correctly handle overrides of the
+# Check that the testsuite harness correctly handle overrides of the
# TERM variable by either TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT.
required='grep-nonprint'
-. ./defs || exit 1
+. test-init.sh
TERM=ansi; export TERM
diff --git a/t/parallel-tests-subdir.sh b/t/parallel-tests-subdir.sh
index d57133f97..de62f7f07 100755
--- a/t/parallel-tests-subdir.sh
+++ b/t/parallel-tests-subdir.sh
@@ -14,10 +14,10 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that the parallel-tests driver creates parent directories for
+# Check that the parallel test harness creates parent directories for
# the log files when needed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-suffix-prog.sh b/t/parallel-tests-suffix-prog.sh
index a0287da34..f2ed39057 100755
--- a/t/parallel-tests-suffix-prog.sh
+++ b/t/parallel-tests-suffix-prog.sh
@@ -19,7 +19,7 @@
# See also sister test 'parallel-tests-suffix.sh'.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/parallel-tests-suffix.sh b/t/parallel-tests-suffix.sh
index 93c7ea011..d0d1733db 100755
--- a/t/parallel-tests-suffix.sh
+++ b/t/parallel-tests-suffix.sh
@@ -18,7 +18,7 @@
# - suffix rules
# See also sister test 'parallel-tests-suffix-prog.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-trailing-whitespace.sh b/t/parallel-tests-trailing-whitespace.sh
index e8e4203ca..3d729c8ec 100755
--- a/t/parallel-tests-trailing-whitespace.sh
+++ b/t/parallel-tests-trailing-whitespace.sh
@@ -18,7 +18,7 @@
# - trailing whitespace in TESTS
# GNU make 3.80 may expand trailing white space to '.log'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/parallel-tests-unreadable.sh b/t/parallel-tests-unreadable.sh
index 895d4769e..ff362942a 100755
--- a/t/parallel-tests-unreadable.sh
+++ b/t/parallel-tests-unreadable.sh
@@ -17,7 +17,7 @@
# Check that the testsuite driver copes well with unreadable '.log'
# and '.trs' files.
-. ./defs || exit 1
+. test-init.sh
: > t
chmod a-r t && test ! -r t || skip_ "you can still read unreadable files"
diff --git a/t/parallel-tests2.sh b/t/parallel-tests2.sh
deleted file mode 100755
index ae9bd38b6..000000000
--- a/t/parallel-tests2.sh
+++ /dev/null
@@ -1,146 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Check parallel-tests features:
-# - check-html
-# - recheck-html
-# FIXME: the features tested by this script has been moved in contrib.
-# FIXME: We should move this script accordingly.
-
-. ./defs || exit 1
-
-# Try the variants that are tried in check-html.am.
-while :; do
- for r2h in $RST2HTML rst2html rst2html.py; do
- echo "$me: running $r2h --version"
- $r2h --version && break 2
- : For shells with busted 'set -e'.
- done
- skip_all_ "no proper rst2html program found"
-done
-unset r2h
-
-cp "$am_top_srcdir"/contrib/check-html.am . \
- || fatal_ "cannot fetch 'check-html.am' from contrib"
-
-cat >> configure.ac << 'END'
-AC_OUTPUT
-END
-
-cat > Makefile.am << 'END'
-TEST_SUITE_LOG = mylog.log
-TESTS = foo.test bar.test baz.test
-check_SCRIPTS = bla
-bla:
- echo bla > $@
-CLEANFILES = bla
-include $(srcdir)/check-html.am
-END
-
-cat > foo.test <<'END'
-#! /bin/sh
-echo "this is $0"
-test -f bla || exit 1
-exit 0
-END
-
-cat > bar.test <<'END'
-#! /bin/sh
-echo "this is $0"
-exit 99
-END
-
-cat > baz.test <<'END'
-#! /bin/sh
-echo "this is $0"
-exit 1
-END
-
-chmod a+x foo.test bar.test baz.test
-
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE -a
-
-./configure
-
-$MAKE check-html && exit 1
-test -f mylog.html
-# check-html should cause check_SCRIPTS to be created.
-test -f bla
-
-# "make clean" should remove HTML files.
-$MAKE clean
-test ! -e mylog.html
-test ! -e bla
-
-# Always create the HTML output, even if there were no failures.
-rm -f mylog.html
-env TESTS=foo.test $MAKE -e check-html
-test -f mylog.html
-
-# Create summarizing HTML output also with recheck-html.
-rm -f mylog.html
-env TESTS=foo.test $MAKE -e recheck-html
-test -f mylog.html
-
-# Create HTML output for an individual test.
-$MAKE foo.html
-grep 'this is .*foo\.test' foo.html
-test ! -e bar.html
-test ! -e baz.html
-
-# Create HTML output for individual tests. Since the pre-existing log
-# files are expected to be used for the HTML conversion, this should
-# go smoothly even for failed tests.
-$MAKE bar.html baz.html
-grep 'this is .*bar\.test' bar.html
-grep 'this is .*baz\.test' baz.html
-
-# HTML output removed by mostlyclean.
-$MAKE mostlyclean
-test ! -e foo.html
-test ! -e bar.html
-test ! -e baz.html
-test ! -e mylog.html
-
-# check-html and recheck-html should cause check_SCRIPTS to be created,
-# and recheck-html should rerun no tests if check has not been run.
-
-$MAKE clean
-test ! -e mylog.html
-env TEST_LOGS=foo.log $MAKE -e check-html
-test -f bla
-test -f foo.log
-test ! -e bar.log
-test ! -e baz.log
-test -f mylog.html
-
-$MAKE clean
-env TESTS=foo.test $MAKE -e recheck-html
-test -f bla
-test ! -e foo.log
-test -f mylog.html
-
-$MAKE clean
-$MAKE recheck-html
-test -f bla
-test ! -e foo.log
-test ! -e bar.log
-test ! -e baz.log
-test -f mylog.html
-
-:
diff --git a/t/parse.sh b/t/parse.sh
index ec5bcbb9a..44a697bba 100755
--- a/t/parse.sh
+++ b/t/parse.sh
@@ -16,7 +16,7 @@
# Test to make sure backslash-newline is treated as whitespace.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/percent.sh b/t/percent.sh
index a4bad3540..82040ae63 100755
--- a/t/percent.sh
+++ b/t/percent.sh
@@ -17,7 +17,7 @@
# Test to make sure that -Wportability understands %-style pattern
# rules.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CC
diff --git a/t/percent2.sh b/t/percent2.sh
index 4ed52c1d8..4313b2462 100755
--- a/t/percent2.sh
+++ b/t/percent2.sh
@@ -19,7 +19,7 @@
# '${ARCH}/%.$(OBJEXT):'.
# Report from Ralf Corsepius.
-. ./defs || exit 1
+. test-init.sh
cat >>Makefile.am << 'EOF'
${ARCH}/%.$(OBJEXT): %.S
diff --git a/t/perf/cond.sh b/t/perf/cond.sh
index cf9c76081..cce29066c 100755
--- a/t/perf/cond.sh
+++ b/t/perf/cond.sh
@@ -17,7 +17,7 @@
# Check that many conditions do not lead to combinatorial explosion.
# (This is related to PR/352.)
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >>configure.ac
diff --git a/t/perf/testsuite-recheck.sh b/t/perf/testsuite-recheck.sh
index e3383beda..5400dc43f 100755
--- a/t/perf/testsuite-recheck.sh
+++ b/t/perf/testsuite-recheck.sh
@@ -19,7 +19,7 @@
# FIXME: performance is too low, and FAIL accordingly; it just offers an
# FIXME: easy way to verify how effective a performance optimization is.
-. ./defs || exit 1
+. test-init.sh
count=5000
diff --git a/t/perf/testsuite-summary.sh b/t/perf/testsuite-summary.sh
index 679a05a79..3c02481a8 100755
--- a/t/perf/testsuite-summary.sh
+++ b/t/perf/testsuite-summary.sh
@@ -20,7 +20,7 @@
# FIXME: performance is too low, and FAIL accordingly; it just offers
# FIXME: an easy way verify how effective a performance optimization is.
-. ./defs || exit 1
+. test-init.sh
count=10000
@@ -45,7 +45,7 @@ for i in $(seq_ 1 $count); do
echo :test-result: PASS >> $i.trs
echo :copy-in-global-log: yes >> $i.trs
echo TESTS += $i.t
-done >> Makefile.am
+done >> Makefile.am
# Re-enable shell traces.
set -x
diff --git a/t/phony.sh b/t/phony.sh
index fce2a6be0..6f90b0eaf 100755
--- a/t/phony.sh
+++ b/t/phony.sh
@@ -17,7 +17,7 @@
# Make sure .PHONY can be given dependencies several times.
# From Ralf Corsepius.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am << 'EOF'
.PHONY: foo
diff --git a/t/pluseq.sh b/t/pluseq.sh
index 74dea56a1..a6dfb9239 100755
--- a/t/pluseq.sh
+++ b/t/pluseq.sh
@@ -16,7 +16,7 @@
# Test '+=' functionality.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
data_DATA = zar
diff --git a/t/pluseq10.sh b/t/pluseq10.sh
index 20516c3e7..f0be6cffa 100755
--- a/t/pluseq10.sh
+++ b/t/pluseq10.sh
@@ -17,7 +17,7 @@
# Test for += and backslashes.
# Reported by Ralf Corsepius.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'END'
AM_CONDITIONAL([A], [true])
diff --git a/t/pluseq11.sh b/t/pluseq11.sh
index 67dfd3386..f00e74318 100755
--- a/t/pluseq11.sh
+++ b/t/pluseq11.sh
@@ -18,7 +18,7 @@
# is erroneously retained in the final value.
# See also sister test 'pluseq11b.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_OUTPUT
diff --git a/t/pluseq2.sh b/t/pluseq2.sh
index 206944488..d2f7ee79a 100755
--- a/t/pluseq2.sh
+++ b/t/pluseq2.sh
@@ -16,7 +16,7 @@
# Test '+=' with conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([CHECK], [true])
diff --git a/t/pluseq3.sh b/t/pluseq3.sh
index 52e82c51b..b284847a1 100755
--- a/t/pluseq3.sh
+++ b/t/pluseq3.sh
@@ -16,7 +16,7 @@
# Another '+=' test with conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([CHECK], [true])
diff --git a/t/pluseq4.sh b/t/pluseq4.sh
index 32c64ea91..3292dc560 100755
--- a/t/pluseq4.sh
+++ b/t/pluseq4.sh
@@ -16,7 +16,7 @@
# Yet another '+=' test.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pluseq5.sh b/t/pluseq5.sh
index 914e3b789..facab4e1d 100755
--- a/t/pluseq5.sh
+++ b/t/pluseq5.sh
@@ -16,7 +16,7 @@
# Test for another '+=' problem. Report from Brian Jones.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([CHECK], [true])
diff --git a/t/pluseq6.sh b/t/pluseq6.sh
index 2db9c6f10..0d4fcbe85 100755
--- a/t/pluseq6.sh
+++ b/t/pluseq6.sh
@@ -16,7 +16,7 @@
# Test that '+=' works with standard header-vars.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([ZZZ])
diff --git a/t/pluseq7.sh b/t/pluseq7.sh
index c7ea2ad4e..f9a667fc1 100755
--- a/t/pluseq7.sh
+++ b/t/pluseq7.sh
@@ -16,7 +16,7 @@
# Test that '+=' fails when required.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pluseq8.sh b/t/pluseq8.sh
index da0ad8962..83fa50a23 100755
--- a/t/pluseq8.sh
+++ b/t/pluseq8.sh
@@ -16,7 +16,7 @@
# Another '+=' test. From Paul Berrevoets.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
VAR = \
diff --git a/t/pluseq9.sh b/t/pluseq9.sh
index 4bbb78a85..ab97c081c 100755
--- a/t/pluseq9.sh
+++ b/t/pluseq9.sh
@@ -16,7 +16,7 @@
# Test the += diagnostics.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'END'
AM_CONDITIONAL([COND1], [true])
diff --git a/t/posixsubst-data.sh b/t/posixsubst-data.sh
index 51b791e17..9fd534039 100755
--- a/t/posixsubst-data.sh
+++ b/t/posixsubst-data.sh
@@ -17,7 +17,7 @@
# Test that POSIX variable expansion '$(var:str=rpl)' works
# in when used with the DATA primary.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/posixsubst-extradist.sh b/t/posixsubst-extradist.sh
index b8e69d749..d8ba0d9fb 100755
--- a/t/posixsubst-extradist.sh
+++ b/t/posixsubst-extradist.sh
@@ -17,7 +17,7 @@
# Test that POSIX variable expansion '$(var:str=rpl)' works when used
# in EXTRA_DIST.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/posixsubst-ldadd.sh b/t/posixsubst-ldadd.sh
index c9acd411f..579bc233b 100755
--- a/t/posixsubst-ldadd.sh
+++ b/t/posixsubst-ldadd.sh
@@ -18,7 +18,7 @@
# when used in LDADD.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/posixsubst-libraries.sh b/t/posixsubst-libraries.sh
index 884e8aa73..69ea925ec 100755
--- a/t/posixsubst-libraries.sh
+++ b/t/posixsubst-libraries.sh
@@ -19,7 +19,7 @@
# Keep this in sync with sister test 'posixsubst-ltlibraries.sh'.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/posixsubst-ltlibraries.sh b/t/posixsubst-ltlibraries.sh
index 3111954d6..4a7d86728 100755
--- a/t/posixsubst-ltlibraries.sh
+++ b/t/posixsubst-ltlibraries.sh
@@ -19,7 +19,7 @@
# Keep this in sync with sister test 'posixsubst-libraries.sh'.
required='cc libtool libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/posixsubst-programs.sh b/t/posixsubst-programs.sh
index 6e8e56b06..edcd4ddfc 100755
--- a/t/posixsubst-programs.sh
+++ b/t/posixsubst-programs.sh
@@ -18,7 +18,7 @@
# with the PROGRAMS primary.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/posixsubst-scripts.sh b/t/posixsubst-scripts.sh
index c9083cbd3..7b758f393 100755
--- a/t/posixsubst-scripts.sh
+++ b/t/posixsubst-scripts.sh
@@ -17,7 +17,7 @@
# Test that POSIX variable expansion '$(var:str=rpl)' works when used
# with the SCRIPTS primary.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/posixsubst-sources.sh b/t/posixsubst-sources.sh
index d3abfa18b..b69bc544e 100755
--- a/t/posixsubst-sources.sh
+++ b/t/posixsubst-sources.sh
@@ -18,7 +18,7 @@
# with the SOURCES primary.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/posixsubst-tests.sh b/t/posixsubst-tests.sh
index c6318637c..470527c01 100755
--- a/t/posixsubst-tests.sh
+++ b/t/posixsubst-tests.sh
@@ -18,7 +18,7 @@
# with the TESTS special variable.
# For gen-testsuite-part: ==> try-with-serial-tests <==
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/postproc.sh b/t/postproc.sh
index 2b60d885d..d73eaec5f 100755
--- a/t/postproc.sh
+++ b/t/postproc.sh
@@ -18,7 +18,7 @@
# and renamed.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/ppf77.sh b/t/ppf77.sh
index 73a32cb61..f1c67e44e 100755
--- a/t/ppf77.sh
+++ b/t/ppf77.sh
@@ -17,7 +17,7 @@
# Test to make sure preprocessed F77 works.
# Report from Jochen Kuepper.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_F77
diff --git a/t/pr2.sh b/t/pr2.sh
index bafff250b..e5124d6f0 100755
--- a/t/pr2.sh
+++ b/t/pr2.sh
@@ -27,7 +27,7 @@
# to the distribution directory before it creates a templ
# subdirectory in the distribution directory.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT([README.foo:templ/README.foo.in])
diff --git a/t/pr211.sh b/t/pr211.sh
index a7dcee8db..3d19a06a7 100755
--- a/t/pr211.sh
+++ b/t/pr211.sh
@@ -28,7 +28,7 @@
# rename one of the 'foo.o' files.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr220.sh b/t/pr220.sh
index 2054fb31e..fc67cf83a 100755
--- a/t/pr220.sh
+++ b/t/pr220.sh
@@ -22,7 +22,7 @@
# to debug the problem.
# Note that this should be also in the documentation.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
if NEVER_TRUE
diff --git a/t/pr224.sh b/t/pr224.sh
index c4fb9c103..640640f11 100755
--- a/t/pr224.sh
+++ b/t/pr224.sh
@@ -24,7 +24,7 @@
# should be '$(top_builddir)/bar/.deps'.
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir foo
diff --git a/t/pr229.sh b/t/pr229.sh
index cb3b2230f..b0ed4c4dd 100755
--- a/t/pr229.sh
+++ b/t/pr229.sh
@@ -18,7 +18,7 @@
# Make sure AC_CYGWIN requires config.{sub,guess}.
# Reported by James Youngman.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<EOF
AC_CYGWIN
diff --git a/t/pr243.sh b/t/pr243.sh
index ee593f576..5ac32761e 100755
--- a/t/pr243.sh
+++ b/t/pr243.sh
@@ -27,7 +27,7 @@
# the colon in the CONFIG_FILES variable.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/pr266.sh b/t/pr266.sh
index 5d8efada4..c358227be 100755
--- a/t/pr266.sh
+++ b/t/pr266.sh
@@ -18,7 +18,7 @@
# Dependency tracking -vs- nonstandard Makefile names
required=cc
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/pr279-2.sh b/t/pr279-2.sh
index fbd06ac9c..7f292517e 100755
--- a/t/pr279-2.sh
+++ b/t/pr279-2.sh
@@ -24,7 +24,7 @@
# fail with messages like:
# foo_DEPENDENCIES was already defined in condition TRUE, ...
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr279.sh b/t/pr279.sh
index 7f5f7b5b2..24b7fb7b4 100755
--- a/t/pr279.sh
+++ b/t/pr279.sh
@@ -24,7 +24,7 @@
# fail with messages like:
# foo_DEPENDENCIES was already defined in condition TRUE, ...
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr287.sh b/t/pr287.sh
index 62eb739be..bbbfe48c7 100755
--- a/t/pr287.sh
+++ b/t/pr287.sh
@@ -16,7 +16,7 @@
# Test for PR 287: empty SUBDIRS.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/pr300-lib.sh b/t/pr300-lib.sh
index d9a5dd1f3..ca7352383 100755
--- a/t/pr300-lib.sh
+++ b/t/pr300-lib.sh
@@ -18,7 +18,7 @@
# PR/300
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_RANLIB
diff --git a/t/pr300-ltlib.sh b/t/pr300-ltlib.sh
index 492683452..62c5b5560 100755
--- a/t/pr300-ltlib.sh
+++ b/t/pr300-ltlib.sh
@@ -18,7 +18,7 @@
# PR/300
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr300-prog.sh b/t/pr300-prog.sh
index b9aa97df4..d7ada2df8 100755
--- a/t/pr300-prog.sh
+++ b/t/pr300-prog.sh
@@ -18,7 +18,7 @@
# PR/300
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr307.sh b/t/pr307.sh
index 04b4ee934..1204c774a 100755
--- a/t/pr307.sh
+++ b/t/pr307.sh
@@ -33,7 +33,7 @@
# compilation.
required='libtoolize gcc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr401.sh b/t/pr401.sh
index 73a7e2560..3e73b0d4e 100755
--- a/t/pr401.sh
+++ b/t/pr401.sh
@@ -18,7 +18,7 @@
# (pr401b.sh and pr401c.sh do the same for LTLIBOBJS and ALLOCA)
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir lib src
diff --git a/t/pr401b.sh b/t/pr401b.sh
index e5914731d..61935879a 100755
--- a/t/pr401b.sh
+++ b/t/pr401b.sh
@@ -18,7 +18,7 @@
# (pr401.sh and pr401c.sh do the same for LIBOBJS and ALLOCA)
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
mkdir lib src
diff --git a/t/pr401c.sh b/t/pr401c.sh
index e452ab6f9..96561c5e2 100755
--- a/t/pr401c.sh
+++ b/t/pr401c.sh
@@ -18,7 +18,7 @@
# (pr401.sh and pr401b.sh do the same for LIBOBJS and LTLIBOBJS)
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir lib src
diff --git a/t/pr72.sh b/t/pr72.sh
index 3c2c91484..9eb55b7a0 100755
--- a/t/pr72.sh
+++ b/t/pr72.sh
@@ -18,7 +18,7 @@
# Empty _SOURCES results in $(LINK) undefined.
required=libtool
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/pr87.sh b/t/pr87.sh
index 872dfa954..4027b5cb2 100755
--- a/t/pr87.sh
+++ b/t/pr87.sh
@@ -18,7 +18,7 @@
# "make distcheck" fails when two source dirs exist.
required=cc
-. ./defs || exit 1
+. test-init.sh
subdirs="foo bar"
diff --git a/t/pr9.sh b/t/pr9.sh
index ccb0b93cc..7d75cc4bc 100755
--- a/t/pr9.sh
+++ b/t/pr9.sh
@@ -23,7 +23,7 @@
# ltconfig, ltmain.sh, mdate-sh, missing, and mkinstalldirs. In fact,
# the entire 'support/' directory is omitted.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/prefix.sh b/t/prefix.sh
index 907cd788f..bc10771b4 100755
--- a/t/prefix.sh
+++ b/t/prefix.sh
@@ -16,7 +16,7 @@
# Test to make sure range of prefixes can be extended
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/primary-prefix-couples-documented-valid.sh b/t/primary-prefix-couples-documented-valid.sh
index 5b43157f8..89e7880fd 100755
--- a/t/primary-prefix-couples-documented-valid.sh
+++ b/t/primary-prefix-couples-documented-valid.sh
@@ -18,7 +18,7 @@
# examples in the Automake manual do not cause obvious errors.
# Please keep this test in sync with the automake manual.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/primary-prefix-couples-force-valid.sh b/t/primary-prefix-couples-force-valid.sh
index a6d7ace47..5cf02d84b 100755
--- a/t/primary-prefix-couples-force-valid.sh
+++ b/t/primary-prefix-couples-force-valid.sh
@@ -24,7 +24,7 @@
# should work.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/primary-prefix-invalid-couples.tap b/t/primary-prefix-invalid-couples.tap
index dadf38dcd..2152d186e 100755
--- a/t/primary-prefix-invalid-couples.tap
+++ b/t/primary-prefix-invalid-couples.tap
@@ -20,7 +20,7 @@
# cover more cases.
# See also test 'primary-prefix-valid-couples.test'.
-. ./defs || exit 1
+. test-init.sh
plan_ "later"
@@ -29,7 +29,6 @@ oIFS=$IFS # Saved for later.
: > ar-lib
: > ltmain.sh
: > texinfo.tex
-: > elisp-comp
: > py-compile
: > config.guess
: > config.sub
diff --git a/t/primary-prefix-valid-couples.sh b/t/primary-prefix-valid-couples.sh
index e1e3c7791..91d1b880e 100755
--- a/t/primary-prefix-valid-couples.sh
+++ b/t/primary-prefix-valid-couples.sh
@@ -17,7 +17,7 @@
# Test for valid prefix/primary combinations.
# See also test 'primary-prefix-invalid-couples.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
@@ -41,7 +41,6 @@ END
echo '@setfilename foo' > foo.texi
: > texinfo.tex
: > py-compile
-: > elisp-comp
: > ar-lib
# Setup Makefile.am.
diff --git a/t/primary.sh b/t/primary.sh
index b107f4dd3..e11eb0e4a 100755
--- a/t/primary.sh
+++ b/t/primary.sh
@@ -16,7 +16,7 @@
# Test to make sure errors in am_install_var work.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = @programs@
diff --git a/t/primary2.sh b/t/primary2.sh
index f355da05d..c7437fee9 100755
--- a/t/primary2.sh
+++ b/t/primary2.sh
@@ -16,7 +16,7 @@
# Test to make sure errors in am_install_var work.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/primary3.sh b/t/primary3.sh
index 9905a8cc3..0a80a5416 100755
--- a/t/primary3.sh
+++ b/t/primary3.sh
@@ -17,7 +17,7 @@
# Make sure we can build programs ending in '.la'
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CC
diff --git a/t/print-libdir.sh b/t/print-libdir.sh
index 9a33ac715..f9d596a0d 100755
--- a/t/print-libdir.sh
+++ b/t/print-libdir.sh
@@ -17,7 +17,7 @@
# Test on automake options '--print-data-dir' and '--print-script-dir'.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
libdir=$($AUTOMAKE --print-libdir) || exit 1
case $libdir in /*);; *) exit 1;; esac
diff --git a/t/proginst.sh b/t/proginst.sh
index afb730049..c0f13a607 100755
--- a/t/proginst.sh
+++ b/t/proginst.sh
@@ -17,7 +17,7 @@
# Test for bug where when multiple scripts are installed,
# the check for AC_PROG_INSTALL fails.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_SCRIPTS = zardoz qbert brownie
diff --git a/t/programs-primary-rewritten.sh b/t/programs-primary-rewritten.sh
index 89b80250c..40caf2003 100755
--- a/t/programs-primary-rewritten.sh
+++ b/t/programs-primary-rewritten.sh
@@ -18,7 +18,7 @@
# checks have been introduced in commit 'Release-1-9-254-g9d0eaef' into
# the former test 'subst2.test'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([FOO], [c])
diff --git a/t/py-compile-basedir.sh b/t/py-compile-basedir.sh
index 75b45f78e..05e11598b 100755
--- a/t/py-compile-basedir.sh
+++ b/t/py-compile-basedir.sh
@@ -17,7 +17,7 @@
# Test the '--basedir' option of the 'py-compile' script,
required=python
-. ./defs || exit 1
+. test-init.sh
# We'll need to create files in '..', so we need one more subdirectory
# level in order not to clutter up the top-level tests directory.
diff --git a/t/py-compile-basic.sh b/t/py-compile-basic.sh
index cc5fec3d5..d846c1ebe 100755
--- a/t/py-compile-basic.sh
+++ b/t/py-compile-basic.sh
@@ -19,7 +19,7 @@
# 'py-compile-basic2.sh'.
required=python
-. ./defs || exit 1
+. test-init.sh
cp "$am_scriptdir/py-compile" . \
|| fatal_ "failed to fetch auxiliary script py-compile"
diff --git a/t/py-compile-destdir.sh b/t/py-compile-destdir.sh
index ba666f6f9..c26175f9f 100755
--- a/t/py-compile-destdir.sh
+++ b/t/py-compile-destdir.sh
@@ -17,7 +17,7 @@
# Test the '--destdir' option of the 'py-compile' script,
required=python
-. ./defs || exit 1
+. test-init.sh
cp "$am_scriptdir/py-compile" . \
|| fatal_ "failed to fetch auxiliary script py-compile"
diff --git a/t/py-compile-env.sh b/t/py-compile-env.sh
index 89d4ffc69..a0d055db1 100755
--- a/t/py-compile-env.sh
+++ b/t/py-compile-env.sh
@@ -16,7 +16,7 @@
# Make sure 'py-compile' honours the PYTHON environment variable.
-. ./defs || exit 1
+. test-init.sh
cp "$am_scriptdir/py-compile" . \
|| fatal_ "failed to fetch auxiliary script py-compile"
diff --git a/t/py-compile-option-terminate.sh b/t/py-compile-option-terminate.sh
index 0ad1fd868..a14c5ad6f 100755
--- a/t/py-compile-option-terminate.sh
+++ b/t/py-compile-option-terminate.sh
@@ -18,7 +18,7 @@
# explicitly terminate the option list for 'py-compile'.
required=python
-. ./defs || exit 1
+. test-init.sh
cp "$am_scriptdir/py-compile" . \
|| fatal_ "failed to fetch auxiliary script py-compile"
diff --git a/t/py-compile-usage.sh b/t/py-compile-usage.sh
index 13ddc8e80..ee5177d3f 100755
--- a/t/py-compile-usage.sh
+++ b/t/py-compile-usage.sh
@@ -17,7 +17,7 @@
# Test 'py-compile --help', 'py-compile --version', and that 'py-compile'
# correctly complains on wrong usage.
-. ./defs || exit 1
+. test-init.sh
cp "$am_scriptdir/py-compile" . \
|| fatal_ "failed to fetch auxiliary script py-compile"
diff --git a/t/python-am-path-iftrue.sh b/t/python-am-path-iftrue.sh
index d7ba43689..9c2335a75 100755
--- a/t/python-am-path-iftrue.sh
+++ b/t/python-am-path-iftrue.sh
@@ -18,7 +18,7 @@
am_create_testdir=empty
required=python
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/python-dist.sh b/t/python-dist.sh
index 0b6a4b044..070950cfb 100755
--- a/t/python-dist.sh
+++ b/t/python-dist.sh
@@ -17,7 +17,7 @@
# Test distribution of *_PYTHON files.
# This test does not require python.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PATH_PYTHON([], [:], [:])
diff --git a/t/python-missing.sh b/t/python-missing.sh
index b0912d34b..9a3ccfbf3 100755
--- a/t/python-missing.sh
+++ b/t/python-missing.sh
@@ -20,7 +20,7 @@
am_create_testdir=empty
# An actual python is *not* required in this test.
-. ./defs || exit 1
+. test-init.sh
PYTHON=; unset PYTHON
diff --git a/t/python-pr10995.sh b/t/python-pr10995.sh
index 63e97c52c..60ebd6716 100755
--- a/t/python-pr10995.sh
+++ b/t/python-pr10995.sh
@@ -19,7 +19,7 @@
# declaration.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AM_PATH_PYTHON
diff --git a/t/python-too-old.sh b/t/python-too-old.sh
index b479c9e79..e7d923464 100755
--- a/t/python-too-old.sh
+++ b/t/python-too-old.sh
@@ -19,7 +19,7 @@
am_create_testdir=empty
required=python
-. ./defs || exit 1
+. test-init.sh
py_too_old ()
{
diff --git a/t/python-vars.sh b/t/python-vars.sh
index 0c2c08b7f..24d274d53 100755
--- a/t/python-vars.sh
+++ b/t/python-vars.sh
@@ -18,7 +18,7 @@
# advertised in the manual.
required=python
-. ./defs || exit 1
+. test-init.sh
# In case the user's config.site defines pythondir or pyexecdir.
CONFIG_SITE=/dev/null; export CONFIG_SITE
diff --git a/t/python-virtualenv.sh b/t/python-virtualenv.sh
index 89a99aac0..9c0ffcc00 100755
--- a/t/python-virtualenv.sh
+++ b/t/python-virtualenv.sh
@@ -18,7 +18,7 @@
# This test also works as a mild stress-test on the python support.
required='cc python virtualenv'
-. ./defs || exit 1
+. test-init.sh
# In case the user's config.site defines pythondir or pyexecdir.
CONFIG_SITE=/dev/null; export CONFIG_SITE
diff --git a/t/python.sh b/t/python.sh
index a3add40f9..3f79ca36b 100755
--- a/t/python.sh
+++ b/t/python.sh
@@ -16,7 +16,7 @@
# Test to make sure py_compile and am__py_compile are correctly defined.
-. ./defs || exit 1
+. test-init.sh
echo 'AM_PATH_PYTHON' >> configure.ac
diff --git a/t/python10.sh b/t/python10.sh
index 881490241..9ee8cada7 100755
--- a/t/python10.sh
+++ b/t/python10.sh
@@ -17,7 +17,7 @@
# Test _PYTHON with conditionals.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_PATH_PYTHON
diff --git a/t/python11.sh b/t/python11.sh
index a22826c6d..a648c7b33 100755
--- a/t/python11.sh
+++ b/t/python11.sh
@@ -17,7 +17,7 @@
# Test missing python.
# Python is not required for this test.
-. ./defs || exit 1
+. test-init.sh
# We don't want to allow user overrides in this test.
PYTHON=; unset PYTHON
diff --git a/t/python12.sh b/t/python12.sh
index 12dca5d18..19398337c 100755
--- a/t/python12.sh
+++ b/t/python12.sh
@@ -17,7 +17,7 @@
# Ensure DESTDIR is not included in byte-compiled files.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_PATH_PYTHON
diff --git a/t/python2.sh b/t/python2.sh
index 71ba25fd2..0ecf79d4e 100755
--- a/t/python2.sh
+++ b/t/python2.sh
@@ -16,7 +16,7 @@
# Make sure that Automake suggests using AM_PATH_PYTHON.
-. ./defs || exit 1
+. test-init.sh
$ACLOCAL
diff --git a/t/python3.sh b/t/python3.sh
index 934be211e..e57868b9b 100755
--- a/t/python3.sh
+++ b/t/python3.sh
@@ -17,7 +17,7 @@
# Make sure we install built python files.
required=python
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AM_PATH_PYTHON
diff --git a/t/recurs-user-deeply-nested.sh b/t/recurs-user-deeply-nested.sh
new file mode 100755
index 000000000..27a51adbd
--- /dev/null
+++ b/t/recurs-user-deeply-nested.sh
@@ -0,0 +1,97 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that recursion on user-defined targets can be made to work
+# with "deeply" nested uses of $(SUBDIRS).
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES([
+ sub1/Makefile
+ sub1/sub2/Makefile
+ sub1/sub2/sub3/Makefile
+ sub1/sub2/sub3/sub4/Makefile
+])
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_OUTPUT
+END
+
+dirs='sub1 sub1/sub2 sub1/sub2/sub3 sub1/sub2/sub3/sub4'
+
+mkdir $dirs
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub1
+
+foo-local:
+ cp sub1/foo foo
+MOSTLYCLEANFILES = foo
+
+.PHONY: test
+test:
+ echo 'It works!' > exp
+ diff exp foo
+ diff exp sub1/foo
+ test ! -f sub1/sub2/foo
+ test ! -f sub1/sub2/sub3/foo
+ diff exp sub1/sub2/sub3/sub4/foo
+ rm -f exp
+
+all-local: foo
+check-local: test
+END
+
+cat > sub1/Makefile.am <<'END'
+SUBDIRS = sub2
+foo-local:
+ test ! -f sub2/sub3/foo
+ cp sub2/sub3/sub4/foo foo
+MOSTLYCLEANFILES = foo
+END
+
+# Here we deliberately lack an explicit definition the 'foo-local'
+# target; that shouldn't stop 'foo' recursion into subdirectory
+# 'sub3/sub4'.
+echo SUBDIRS = sub3 > sub1/sub2/Makefile.am
+echo SUBDIRS = sub4 > sub1/sub2/sub3/Makefile.am
+
+cat > sub1/sub2/sub3/sub4/Makefile.am <<'END'
+foo-local:
+ echo 'It works!' > foo
+MOSTLYCLEANFILES = foo
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+for d in $dirs; do
+ $FGREP foo-am $d/Makefile.in || exit 1
+ case $d in
+ */sub4);;
+ *) $FGREP foo-recursive $d/Makefile.in || exit 1;;
+ esac
+done
+
+./configure
+
+$MAKE foo
+$MAKE test
+
+$MAKE distcheck
+
+:
diff --git a/t/recurs-user-indir.sh b/t/recurs-user-indir.sh
new file mode 100755
index 000000000..5e85d3470
--- /dev/null
+++ b/t/recurs-user-indir.sh
@@ -0,0 +1,99 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that user recursion works with various types of indirections
+# *involved in the definition of the '*-local' targets*: make macros,
+# AC_SUBST'd strings, automake-time file inclusions, automake
+# conditionals...
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES([
+ sub1/Makefile
+ sub1/subsub/Makefile
+ sub2/Makefile
+ sub2/subsub/Makefile
+])
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_SUBST([FOO_LOCAL], [foo-local])
+AM_CONDITIONAL([COND], [:])
+AC_OUTPUT
+END
+
+mkdir sub1 sub1/subsub sub2 sub2/subsub
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub1 sub2
+AM_FOO_LOCAL = foo-local
+
+$(AM_FOO_LOCAL):
+ pwd && : > foo
+CLEANFILES = foo
+
+all-local: foo
+check-local:
+ test -f foo
+ test -f sub1/foo
+ test -f sub1/subsub/foo
+ test -f sub2/foo
+ test -f sub2/subsub/foo
+ test ! -r sub2/subsub/bar
+END
+
+cat > sub1/Makefile.am <<'END'
+SUBDIRS = subsub
+@FOO_LOCAL@:
+ pwd && : > foo
+CLEANFILES = foo
+END
+
+cat > sub1/subsub/Makefile.am <<'END'
+$(FOO_LOCAL):
+ pwd && : > foo
+CLEANFILES = foo
+END
+
+cat > sub2/Makefile.am <<'END'
+include $(srcdir)/bar.am
+include $(srcdir)/baz.am
+CLEANFILES = foo
+END
+
+echo 'SUBDIRS = subsub' > sub2/bar.am
+echo 'foo-local: ; pwd && : > foo' > sub2/baz.am
+
+cat > sub2/subsub/Makefile.am <<'END'
+if COND
+foo-local:
+ pwd && : > foo
+CLEANFILES = foo
+else !COND
+foo-local:
+ pwd && : > bar
+endif !COND
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+
+$MAKE check
+$MAKE distcheck
+
+:
diff --git a/t/recurs-user-keep-going.sh b/t/recurs-user-keep-going.sh
new file mode 100755
index 000000000..041e30477
--- /dev/null
+++ b/t/recurs-user-keep-going.sh
@@ -0,0 +1,95 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that user recursion works with "make -k".
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_CONFIG_FILES([
+ sub1/Makefile
+ sub1/subsub1/Makefile
+ sub2/Makefile
+ sub2/subsub2/Makefile
+ sub3/Makefile
+])
+FAIL='@echo "FAIL $@ in `pwd`"; exit 1'
+PASS='@echo "PASS $@ in `pwd`"; : > foo'
+AC_SUBST([FAIL])
+AC_SUBST([PASS])
+AC_OUTPUT
+END
+
+mkdir sub1 sub1/subsub1 sub2 sub2/subsub2 sub3
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub1 . sub2 sub3
+foo-local:; @FAIL@
+END
+
+cat > sub1/Makefile.am <<'END'
+SUBDIRS = subsub1
+foo-local:; @PASS@
+END
+
+cat > sub2/Makefile.am <<'END'
+SUBDIRS = subsub2
+foo-local:; @FAIL@
+END
+
+echo 'foo-local:; @FAIL@' > sub1/subsub1/Makefile.am
+echo 'foo-local:; @PASS@' > sub2/subsub2/Makefile.am
+echo 'foo-local:; @PASS@' > sub3/Makefile.am
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+
+cat > exp <<END
+./sub1/foo
+./sub2/subsub2/foo
+./sub3/foo
+END
+
+as_expected ()
+{
+ find . -name foo > t || { cat t; exit 1; }
+ LC_ALL=C sort t > got
+ cat exp
+ cat got
+ diff exp got
+}
+
+# Without "-k", we fail in 'sub1/subsub1', and do nothing else.
+# So, no 'foo' file gets created.
+$MAKE foo && exit 1
+find . -name foo | grep . && exit 1
+
+if using_gmake; then
+ $MAKE -k foo && exit 1
+ as_expected
+ $MAKE --keep-going foo && exit 1
+ as_expected
+else
+ # Don't trust the exit status of 'make -k' for non-GNU makes.
+ $MAKE -k foo || :
+ as_expected
+fi
+
+:
diff --git a/t/recurs-user-many.sh b/t/recurs-user-many.sh
new file mode 100755
index 000000000..b40dd79ad
--- /dev/null
+++ b/t/recurs-user-many.sh
@@ -0,0 +1,73 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that many user-defined recursive targets can be supported
+# at once, and that calls to 'AM_EXTRA_RECURSIVE_TARGETS' are
+# cumulative.
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES([sub/Makefile])
+## NOTE: extra white spaces, tabs, newlines and backslashes in the
+## lines below: on purpose.
+AM_EXTRA_RECURSIVE_TARGETS([ foo \
+ bar ])
+AC_SUBST([CLEANFILES], ['foo bar baz'])
+AC_OUTPUT
+# Yes, this appears after AC_OUTPUT. So what?
+AM_EXTRA_RECURSIVE_TARGETS([baz])
+END
+
+mkdir sub
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub
+foo-local:
+ : > foo
+bar-local:
+ echo x > bar
+baz-local: ; touch baz
+check-local: foo bar baz
+ ls -l . sub ;: For debugging.
+ test -f foo
+ test -f bar
+ test -f baz
+ test -f sub/foo
+ test -f sub/bar
+ test -f sub/baz
+END
+
+cat > sub/Makefile.am <<'END'
+foo-local bar-local baz-local:
+ touch `echo $@ | sed 's/-local$$//'`
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+for t in foo bar baz; do
+ $FGREP "$t-am" Makefile.in
+ $FGREP "$t-am" sub/Makefile.in
+done
+
+./configure
+
+$MAKE check
+$MAKE distcheck
+
+:
diff --git a/t/silent-amopts.sh b/t/recurs-user-no-subdirs.sh
index c7414537b..76da43374 100755
--- a/t/silent-amopts.sh
+++ b/t/recurs-user-no-subdirs.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#! /bin/sh
# Copyright (C) 2012 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
@@ -14,15 +14,39 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that automake complaints if the 'silent-rules' option is
-# used in AUTOMAKE_OPTIONS.
+# Check that user recursion can be made to work even when $(SUBDIRS)
+# is empty or undefined.
-. ./defs || exit 1
+. test-init.sh
-echo AUTOMAKE_OPTIONS = silent-rules > Makefile.am
+cat >> configure.ac <<'END'
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_OUTPUT
+END
$ACLOCAL
-AUTOMAKE_fails
-grep "^Makefile\.am:1:.*'silent-rules'.*AM_INIT_AUTOMAKE" stderr
+$AUTOCONF
+
+# First try with undefined $(SUBDIRS).
+cat > Makefile.am <<'END'
+all-local: foo
+foo-local:
+ : > bar
+MOSTLYCLEANFILES = bar
+END
+$AUTOMAKE
+./configure
+$MAKE foo
+test -f bar
+
+$MAKE distclean
+test ! -r bar # Sanity check.
+
+# Now try with empty but defined $(SUBDIRS).
+echo SUBDIRS = >> Makefile.am
+$AUTOMAKE
+./configure
+$MAKE foo
+test -f bar
:
diff --git a/t/cygnus-check-without-all.sh b/t/recurs-user-no-top-level.sh
index ec8771854..1546f1c6f 100755
--- a/t/cygnus-check-without-all.sh
+++ b/t/recurs-user-no-top-level.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2010-2012 Free Software Foundation, Inc.
+# Copyright (C) 2012 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
@@ -14,37 +14,37 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that, in cygnus mode, target "check" does not depend target
-# "all".
+# Check that user recursion works even for targets that don't exist
+# in the top-level Makefile.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
-AM_MAINTAINER_MODE
+AC_CONFIG_FILES([sub/Makefile])
+AM_EXTRA_RECURSIVE_TARGETS([foo-bar])
AC_OUTPUT
END
+mkdir sub
+
cat > Makefile.am <<'END'
-all-local:
- : > all-target-has-failed
- exit 1
-check-local:
- touch check-target-has-run
+SUBDIRS = sub
+all-local: foo-bar
END
-$ACLOCAL
-$AUTOMAKE --cygnus -Wno-obsolete
-
-$EGREP '(^| )all.*(:|:.* )check' Makefile.in && exit 1
+cat > sub/Makefile.am <<'END'
+foo-bar-local:
+ : > foo-bar
+MOSTLYCLEANFILES = foo-bar
+END
+$ACLOCAL
$AUTOCONF
+$AUTOMAKE
+
./configure
-$MAKE check
-test -f check-target-has-run
-test ! -e all-target-has-failed
-# Sanity checks.
-$MAKE && exit 1
-test -f all-target-has-failed
+$MAKE foo-bar
+test -f sub/foo-bar
:
diff --git a/t/recurs-user-override.sh b/t/recurs-user-override.sh
new file mode 100755
index 000000000..02dd33350
--- /dev/null
+++ b/t/recurs-user-override.sh
@@ -0,0 +1,68 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that override of user-defined recursive targets work as
+# expected.
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES([sub/Makefile])
+AM_EXTRA_RECURSIVE_TARGETS([foobar zardoz])
+AC_OUTPUT
+END
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub
+all-local: foobar zardoz
+foobar:
+ : > foobar.out
+MOSTLYCLEANFILES = foobar.out
+check-local:
+ test -f foobar.out
+ test ! -r sub/foobar.out
+ test -f sub/zardoz.out
+ test ! -r sub/baz.out
+END
+
+mkdir sub
+cat > sub/Makefile.am <<'END'
+foobar foobar-local:
+ : > foobar.out
+zardoz-local:
+ : > baz.out
+zardoz:
+ : > zardoz.out
+MOSTLYCLEANFILES = zardoz.out
+END
+
+$ACLOCAL
+$AUTOCONF
+
+AUTOMAKE_fails
+grep '^Makefile\.am:3:.*user target.*foobar' stderr
+grep '^Makefile\.am:.*foobar-local.*instead of foobar$' stderr
+grep '^sub/Makefile\.am:5:.*user target.*zardoz' stderr
+grep '^sub/Makefile\.am:.*zardoz-local.*instead of zardoz$' stderr
+
+$AUTOMAKE -Wno-override
+
+./configure
+
+$MAKE check
+$MAKE distcheck
+
+:
diff --git a/t/cygnus-requires-maintainer-mode.sh b/t/recurs-user-phony.sh
index 978df8cf4..274f441c0 100755
--- a/t/cygnus-requires-maintainer-mode.sh
+++ b/t/recurs-user-phony.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2010-2012 Free Software Foundation, Inc.
+# Copyright (C) 2012 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
@@ -14,40 +14,51 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that, in cygnus mode, maintainer mode is required.
+# Check that user-defined recursive targets and their associate
+# '-local', '-am' and '-recursive' targets are declared as phony.
-. ./defs || exit 1
-
-: > Makefile.am
-
-$ACLOCAL
-AUTOMAKE_fails -Wno-obsolete --cygnus
-grep '^configure\.ac:.*AM_MAINTAINER_MODE.*required.*cygnus' stderr
+# Require GNU make, because some vendo makes (e.g., Solaris) doesn't
+# truly respect .PHONY.
+required=GNUmake
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_FILES([sub/Makefile])
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_OUTPUT
END
cat > Makefile.am <<'END'
SUBDIRS = sub
+foo-local:
+ echo 'GOOD!' > foo
END
mkdir sub
cat > sub/Makefile.am <<'END'
-AUTOMAKE_OPTIONS = -Wno-obsolete cygnus
+foo-local:
+ echo 'GOOD!' > foo
END
-rm -rf autom4te.cache
+dummy_files='
+ foo
+ foo-local
+ foo-am
+ foo-recursive
+ sub/foo
+ sub/foo-local
+ sub/foo-am
+'
+
$ACLOCAL
-AUTOMAKE_fails
-grep '^configure\.ac:.*AM_MAINTAINER_MODE.*required.*cygnus' stderr
+$AUTOCONF
+$AUTOMAKE
+./configure
-cat >> configure.ac <<'END'
-AM_MAINTAINER_MODE
-END
+touch $dummy_files
-rm -rf autom4te.cache
-$ACLOCAL
-$AUTOMAKE --cygnus -Wno-obsolete
+$MAKE foo
+grep 'GOOD!' foo
+grep 'GOOD!' sub/foo
:
diff --git a/t/clean2.sh b/t/recurs-user-wrap.sh
index ce5e9bf48..15a210cb2 100755
--- a/t/clean2.sh
+++ b/t/recurs-user-wrap.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2004-2012 Free Software Foundation, Inc.
+# Copyright (C) 2012 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
@@ -14,55 +14,46 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Make sure distclean works in cygnus mode.
-# Report from Daniel Jacobowitz.
+# Check that rules generated by user recursion are apt to be wrapped
+# by other makefiles.
-. ./defs || exit 1
+required=GNUmake
+. test-init.sh
cat >> configure.ac << 'END'
-AM_MAINTAINER_MODE
-AC_CONFIG_FILES([sub/Makefile])
+AM_EXTRA_RECURSIVE_TARGETS([extra])
+AC_CONFIG_FILES([src/Makefile])
AC_OUTPUT
END
-cat > Makefile.am << 'END'
-SUBDIRS = sub
+mkdir src
+echo SUBDIRS = src > Makefile.am
+echo 'bar: ; : > $@ ' > src/Makefile.am
-data_DATA = bar
-
-bar:
- touch $@
-
-DISTCLEANFILES = bar
-END
-
-mkdir sub
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
-cat > sub/Makefile.am << 'END'
-data_DATA = foo
+./configure
-foo:
- touch $@
+$MAKE extra
+test ! -f extra-local
+test ! -f src/bar
-CLEANFILES = $(data_DATA)
+cat > GNUmakefile << 'END'
+.DEFAULT_GOAL = all
+extra-local:
+ : > $@
+include ./Makefile
END
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --cygnus -Wno-obsolete
+cat > src/GNUmakefile << 'END'
+include ./Makefile
+extra-local: bar
+END
-./configure
-$MAKE
-ls -l
-test -f bar
-test -f sub/foo
-$MAKE distclean
-ls -l
-test ! -e bar
-test ! -e sub/foo
-test ! -e Makefile
-test ! -e config.status
-test -f Makefile.in
-test -f configure
+$MAKE extra
+test -f extra-local
+test -f src/bar
:
diff --git a/t/recurs-user.sh b/t/recurs-user.sh
new file mode 100755
index 000000000..198483fb9
--- /dev/null
+++ b/t/recurs-user.sh
@@ -0,0 +1,81 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Basic checks on user-defined recursive rules.
+# Check that user recursion respect $(SUBDIRS) order,
+# and proceeds in a depth-first fashion.
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_CONFIG_FILES([
+ sub1/Makefile
+ sub2/Makefile
+ sub3/Makefile
+ sub3/deeper/Makefile
+])
+AC_OUTPUT
+END
+
+mkdir sub1 sub2 sub3 sub3/deeper
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub1 . sub3 sub2
+foo-local:
+ echo '.' >> $(top_builddir)/got
+.PHONY: test
+test: foo
+ cat $(srcdir)/exp
+ cat ./got
+ diff $(srcdir)/exp ./got
+check-local: test
+MOSTLYCLEANFILES = got
+EXTRA_DIST = exp
+END
+
+for i in 1 2 3; do
+ cat > sub$i/Makefile.am <<END
+foo-local:
+ echo 'sub$i' >> \$(top_builddir)/got
+END
+done
+
+echo SUBDIRS = deeper >> sub3/Makefile.am
+
+cat >> sub3/deeper/Makefile.am <<'END'
+foo-local:
+ echo sub3/deeper >> $(top_builddir)/got
+END
+
+cat >> exp <<'END'
+sub1
+.
+sub3/deeper
+sub3
+sub2
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+
+$MAKE test
+$MAKE distcheck
+
+:
diff --git a/t/recurs-user2.sh b/t/recurs-user2.sh
new file mode 100755
index 000000000..4664efddf
--- /dev/null
+++ b/t/recurs-user2.sh
@@ -0,0 +1,103 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that user recursion can be made to work when $(SUBDIRS) are
+# not "strictly" nested, as in e.g.:
+# SUBDIRS = src external/lib external/tests
+# with no Makefile in 'external'.
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES(
+ sub1/Makefile
+ sub2/Makefile
+dnl There's deliberately no 'sub3/Makefile'.
+ sub3/subsub/Makefile
+ sub4/Makefile
+ sub4/subsub/Makefile
+)
+AM_EXTRA_RECURSIVE_TARGETS([foo])
+AC_OUTPUT
+END
+
+mkdir sub1 sub2 sub3 sub4 sub3/subsub sub4/subsub
+
+cat > Makefile.am <<'END'
+SUBDIRS = sub1 sub2 sub3/subsub sub4 sub4/subsub
+
+foo-local:
+ echo _rootdir_ >foo
+MOSTLYCLEANFILES = foo
+
+.PHONY: test
+test: foo
+ grep _rootdir_ foo
+ grep ':sub1:' sub1/foo
+ grep ',sub1,' sub1/bar
+ test ! -r sub2/foo
+ test ! -r sub3/foo
+ grep '%sub3/subsub%' sub3/subsub/quux
+ test ! -r sub3/subsub/foo
+ test ! -r sub4/foo
+ grep '=sub4/subsub=' sub4/subsub/foo
+
+check-local: test
+END
+
+# A 'foo-local' target with dependencies shouldn't cause problems.
+cat > sub1/Makefile.am <<'END'
+foo-local: bar
+ sed 's/,/:/g' bar >foo
+bar:
+ echo ',sub1,' >$@
+MOSTLYCLEANFILES = foo bar
+END
+
+# The lack of a 'foo' target here shouldn't cause any error in
+# automake nor in make.
+: > sub2/Makefile.am
+
+# The lack of file 'sub3/Makefile.am' shouldn't cause any problem either.
+rm -f sub3/Makefile.am
+
+# A 'foo-local' creating a file != 'foo' shouldn't cause any problem.
+cat > sub3/subsub/Makefile.am <<'END'
+foo-local:
+ echo '%sub3/subsub%' >quux
+MOSTLYCLEANFILES = quux
+END
+
+# No 'foo-local' nor 'foo' target here ...
+: > sub4/Makefile.am
+# ... should not cause errors, nor cause the 'foo-local' target
+# here not to be executed.
+cat > sub4/subsub/Makefile.am <<'END'
+foo-local:
+ echo '=sub4/subsub=' >foo
+MOSTLYCLEANFILES = foo
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+
+$MAKE test
+$MAKE distcheck
+
+:
diff --git a/t/relativize.tap b/t/relativize.tap
index d940ddf2b..6d4693441 100755
--- a/t/relativize.tap
+++ b/t/relativize.tap
@@ -17,7 +17,7 @@
# Test Automake-provided internal make macro $(am__relativize).
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
plan_ later
diff --git a/t/missing4.sh b/t/remake-aclocal-version-mismatch.sh
index 22d31d0b2..b844fc1db 100755
--- a/t/missing4.sh
+++ b/t/remake-aclocal-version-mismatch.sh
@@ -17,7 +17,7 @@
# See how well the rebuild rule handles an aclocal.m4 that was
# generated for another version of autoconf.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >>configure.ac
diff --git a/t/remake-after-acinclude-m4.sh b/t/remake-after-acinclude-m4.sh
index 7c899dc2a..39596f6a7 100755
--- a/t/remake-after-acinclude-m4.sh
+++ b/t/remake-after-acinclude-m4.sh
@@ -17,7 +17,7 @@
# Test remake rules when acinclude.m4 or its prerequisites change.
# Keep in sync with the other sister tests 'remake-after-*.sh'.
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
diff --git a/t/remake-after-aclocal-m4.sh b/t/remake-after-aclocal-m4.sh
index 45d7a6a94..f7ba219b9 100755
--- a/t/remake-after-aclocal-m4.sh
+++ b/t/remake-after-aclocal-m4.sh
@@ -17,7 +17,7 @@
# Test remake rules when aclocal.m4 or its prerequisites change.
# Keep in sync with the other sister tests 'remake-after-*.sh'.
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
diff --git a/t/remake-after-configure-ac.sh b/t/remake-after-configure-ac.sh
index ee178b1c7..0ff74540f 100755
--- a/t/remake-after-configure-ac.sh
+++ b/t/remake-after-configure-ac.sh
@@ -17,7 +17,7 @@
# Test remake rules when configure.ac or its prerequisites change.
# Keep in sync with the other sister tests 'remake-after-*.sh'.
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
diff --git a/t/remake-after-makefile-am.sh b/t/remake-after-makefile-am.sh
index fca90b637..2161790cf 100755
--- a/t/remake-after-makefile-am.sh
+++ b/t/remake-after-makefile-am.sh
@@ -17,7 +17,7 @@
# Test remake rules when Makefile.am or its prerequisites change.
# Keep in sync with the other sister tests 'remake-after-*.sh'.
-. ./defs || exit 1
+. test-init.sh
if using_gmake; then
remake_() { $MAKE nil; }
diff --git a/t/remake-all-1.sh b/t/remake-all-1.sh
index 93a870eb7..29cefd476 100755
--- a/t/remake-all-1.sh
+++ b/t/remake-all-1.sh
@@ -17,7 +17,7 @@
# Check that the "all" target triggers rebuilt of outdated Makefiles.
# See also sister test 'remake-all-2.sh'.
-. ./defs || exit 1
+. test-init.sh
mkfile=Makefile
diff --git a/t/remake-all-2.sh b/t/remake-all-2.sh
index 0f7d9849a..debdbb488 100755
--- a/t/remake-all-2.sh
+++ b/t/remake-all-2.sh
@@ -18,7 +18,7 @@
# This handle the case in which the makefiles are not called 'Makefile'.
# See also sister test 'remake-all-1.sh'.
-. ./defs || exit 1
+. test-init.sh
mkfile=foobar
diff --git a/t/remake-am-pr10111.sh b/t/remake-am-pr10111.sh
index b3b7c6c74..787e71b07 100755
--- a/t/remake-am-pr10111.sh
+++ b/t/remake-am-pr10111.sh
@@ -22,7 +22,7 @@
# big deal in practice (in fact, this test *currently fails*). Still,
# keeping the limitation exposed is a good idea anyway.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/remake-deeply-nested.sh b/t/remake-deeply-nested.sh
index 8f29499c8..4949b52b2 100755
--- a/t/remake-deeply-nested.sh
+++ b/t/remake-deeply-nested.sh
@@ -19,7 +19,7 @@
# rules don't break in obvious ways in a slightly "heavier than usual"
# setup.
-. ./defs || exit 1
+. test-init.sh
ocwd=$(pwd) || fatal_ "getting current working directory"
diff --git a/t/remake-deleted-am-2.sh b/t/remake-deleted-am-2.sh
index 0b5506270..dde1615fb 100755
--- a/t/remake-deleted-am-2.sh
+++ b/t/remake-deleted-am-2.sh
@@ -18,7 +18,7 @@
# of the "deleted header problem". This test checks deeper inclusion
# stacks, and use VPATH builds.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/remake-deleted-am-subdir.sh b/t/remake-deleted-am-subdir.sh
index 868d36e50..f784593fd 100755
--- a/t/remake-deleted-am-subdir.sh
+++ b/t/remake-deleted-am-subdir.sh
@@ -18,7 +18,7 @@
# of the "deleted header problem". This test does the check when the
# SUBDIRS variable is involved.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_FILES([sub1/Makefile sub2/Makefile])
diff --git a/t/remake-deleted-am.sh b/t/remake-deleted-am.sh
index f754a3794..485f37f74 100755
--- a/t/remake-deleted-am.sh
+++ b/t/remake-deleted-am.sh
@@ -17,7 +17,7 @@
# Check that inclusion of '.am' fragments by automake does not suffer
# of the "deleted header problem". Basic checks are done here.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/remake-deleted-m4-file.sh b/t/remake-deleted-m4-file.sh
index 0bb7cae6f..2499d82cd 100755
--- a/t/remake-deleted-m4-file.sh
+++ b/t/remake-deleted-m4-file.sh
@@ -20,7 +20,7 @@
# header file" issue w.r.t. aclocal.m4 dependencies. See also related
# test 'acloca22.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
FOO_MACRO
diff --git a/t/remake-fail.sh b/t/remake-fail.sh
index 9ccf5d1c4..99a5b00d0 100755
--- a/t/remake-fail.sh
+++ b/t/remake-fail.sh
@@ -16,7 +16,7 @@
# Make sure remaking rules fail when they should.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/remake-gnulib-add-acsubst.sh b/t/remake-gnulib-add-acsubst.sh
index 2fdab58d3..3aea5b998 100755
--- a/t/remake-gnulib-add-acsubst.sh
+++ b/t/remake-gnulib-add-acsubst.sh
@@ -22,7 +22,7 @@
# for more info).
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/remake-gnulib-add-header.sh b/t/remake-gnulib-add-header.sh
index 127fa1fd5..c70b3c672 100755
--- a/t/remake-gnulib-add-header.sh
+++ b/t/remake-gnulib-add-header.sh
@@ -22,7 +22,7 @@
# for more info).
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_HEADERS([config.h])
diff --git a/t/remake-gnulib-remove-header.sh b/t/remake-gnulib-remove-header.sh
index 9044a04ab..23fbfc81b 100755
--- a/t/remake-gnulib-remove-header.sh
+++ b/t/remake-gnulib-remove-header.sh
@@ -23,7 +23,7 @@
# for more info).
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_CONFIG_HEADERS([config.h])
diff --git a/t/remake-include-aclocal.sh b/t/remake-include-aclocal.sh
index df1870e19..7567dfb07 100755
--- a/t/remake-include-aclocal.sh
+++ b/t/remake-include-aclocal.sh
@@ -19,7 +19,7 @@
# - remake-include-configure.sh
# - remake-include-makefile.sh
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
@@ -32,13 +32,13 @@ else
fi
cat >> configure.ac <<END
+AC_CONFIG_MACRO_DIR([m4])
FINGERPRINT='my_fingerprint'
AC_SUBST([FINGERPRINT])
AC_OUTPUT
END
cat > Makefile.am <<'END'
-ACLOCAL_AMFLAGS = -I m4
.PHONY: nil
nil:
## Used by "make distcheck" later.
@@ -51,7 +51,7 @@ END
mkdir m4
echo 'AC_DEFUN([my_fingerprint], [BadBadBad])' > m4/foo.m4
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE
diff --git a/t/remake-include-configure.sh b/t/remake-include-configure.sh
index f7f8c0450..5e0a4266a 100755
--- a/t/remake-include-configure.sh
+++ b/t/remake-include-configure.sh
@@ -19,7 +19,7 @@
# - remake-include-aclocal.sh
# - remake-include-makefile.sh
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
diff --git a/t/remake-include-makefile.sh b/t/remake-include-makefile.sh
index ed749ccee..0dcee5833 100755
--- a/t/remake-include-makefile.sh
+++ b/t/remake-include-makefile.sh
@@ -20,7 +20,7 @@
# - remake-include-configure.sh
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
diff --git a/t/remake-m4-pr10111.sh b/t/remake-m4-pr10111.sh
index 8a28925b6..9df34b603 100755
--- a/t/remake-m4-pr10111.sh
+++ b/t/remake-m4-pr10111.sh
@@ -22,7 +22,7 @@
# big deal in practice (in fact, this test *currently fails*). Still,
# keeping the limitation exposed is a good idea anyway.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
m4_include([foobar.m4])
diff --git a/t/remake-macrodir.sh b/t/remake-macrodir.sh
new file mode 100755
index 000000000..bdd3f02d2
--- /dev/null
+++ b/t/remake-macrodir.sh
@@ -0,0 +1,83 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Check that the aclocal honouring of AC_CONFIG_MACRO_DIR interacts
+# nicely with automatic rebuild rules.
+
+. test-init.sh
+
+cat >> configure.ac <<'END'
+AC_CONFIG_MACRO_DIR([macro-dir])
+my__FOO || AS_EXIT([1])
+AC_OUTPUT
+END
+
+: > Makefile.am
+
+mkdir macro-dir
+cat > macro-dir/foo.m4 <<'END'
+AC_DEFUN([my__FOO], [: > bar])
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+$FGREP my__FOO configure && exit 1
+
+./configure
+test -f bar
+rm -f bar
+
+$sleep
+
+cat > macro-dir/foo.m4 <<'END'
+AC_DEFUN([my__FOO], [: > baz])
+END
+
+$MAKE Makefile
+test -f baz
+test ! -r bar
+rm -f baz
+
+$sleep
+
+rm -f macro-dir/foo.m4
+cat > macro-dir/quux.m4 <<'END'
+AC_DEFUN([my__FOO], [: > quux])
+END
+
+$MAKE Makefile
+test -f quux
+test ! -r baz
+rm -f quux
+
+$sleep
+
+sed 's/^AC_CONFIG_MACRO_DIR/&([newdir])/' configure.ac > t
+mv -f t configure.ac
+
+mkdir newdir
+cat > newdir/mu.m4 <<'END'
+AC_DEFUN([my__FOO], [[: my__FOO do nothing]])
+END
+
+$MAKE Makefile
+$FGREP ': my__FOO do nothing' configure
+
+$MAKE distcheck
+
+:
diff --git a/t/remake-maintainer-mode.sh b/t/remake-maintainer-mode.sh
index b1e8dd8db..326a3c919 100755
--- a/t/remake-maintainer-mode.sh
+++ b/t/remake-maintainer-mode.sh
@@ -18,7 +18,7 @@
# but not all.
# Report from Ralf Corsepius.
-. ./defs || exit 1
+. test-init.sh
if using_gmake; then
remake="$MAKE"
diff --git a/t/remake-makefile-intree.sh b/t/remake-makefile-intree.sh
index cb7c425dc..b9e33c379 100755
--- a/t/remake-makefile-intree.sh
+++ b/t/remake-makefile-intree.sh
@@ -21,7 +21,7 @@
# Keep this in sync with sister test 'remake-makefile-vpath.sh', which
# performs the same checks for a VPATH build.
-. ./defs || exit 1
+. test-init.sh
mv -f configure.ac configure.stub
@@ -110,29 +110,29 @@ $MAKE distcheck
rm -f quux
-# Modify Makefile.am to add a directory of extra m4 files
-# considered by aclocal.
+# Modify configure.ac and aclocal.m4 to add a directory of extra m4
+# files considered by aclocal. Also update checks in Makefile.am.
+# Note that we won't use this new directory of extra m4 files in the
+# first rebuild below (but we will in the second).
$sleep
mkdir $srcdir/m4
cat > $srcdir/Makefile.am <<'END'
-ACLOCAL_AMFLAGS = -I m4
+all-local: quux
check-local:
cat quux
grep '%Foo%' quux
test x'$(QUUX)' = x'%Foo%'
END
-$MAKE # This should place aclocal flags in Makefile.
-grep '.*-I m4' Makefile # Sanity check.
-
# Modify configure.ac and aclocal.m4.
$sleep
cat $srcdir/configure.stub - > $srcdir/configure.ac <<'END'
+AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_FILES([quux])
MY_CUSTOM_MACRO
AC_OUTPUT
diff --git a/t/remake-makefile-vpath.sh b/t/remake-makefile-vpath.sh
index 7e37fe856..54c6af9c1 100755
--- a/t/remake-makefile-vpath.sh
+++ b/t/remake-makefile-vpath.sh
@@ -21,7 +21,7 @@
# Keep this in sync with sister test 'remake-makefile-instree.sh', which
# performs the same checks for a in-tree build.
-. ./defs || exit 1
+. test-init.sh
mv -f configure.ac configure.stub
@@ -112,29 +112,29 @@ $MAKE distcheck
rm -f quux
-# Modify Makefile.am to add a directory of extra m4 files
-# considered by aclocal.
+# Modify configure.ac and aclocal.m4 to add a directory of extra m4
+# files considered by aclocal. Also update checks in Makefile.am.
+# Note that we won't use this new directory of extra m4 files in the
+# first rebuild below (but we will in the second).
$sleep
mkdir $srcdir/m4
cat > $srcdir/Makefile.am <<'END'
-ACLOCAL_AMFLAGS = -I m4
+all-local: quux
check-local:
cat quux
grep '%Foo%' quux
test x'$(QUUX)' = x'%Foo%'
END
-$MAKE # This should place aclocal flags in Makefile.
-grep '.*-I m4' Makefile # Sanity check.
-
# Modify configure.ac and aclocal.m4.
$sleep
cat $srcdir/configure.stub - > $srcdir/configure.ac <<'END'
+AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_FILES([quux])
MY_CUSTOM_MACRO
AC_OUTPUT
diff --git a/t/remake-mild-stress.sh b/t/remake-mild-stress.sh
index 02cef718e..54f7cdf4f 100755
--- a/t/remake-mild-stress.sh
+++ b/t/remake-mild-stress.sh
@@ -17,7 +17,7 @@
# Test basic remake rules for Makefiles with non-default names
# and/or with multiple sources.
-. ./defs || exit 1
+. test-init.sh
magic1=::MagicStringOne::
magic2=__MagicStringTwo__
diff --git a/t/remake-moved-m4-file.sh b/t/remake-moved-m4-file.sh
index 68ea5a831..3ca16801f 100755
--- a/t/remake-moved-m4-file.sh
+++ b/t/remake-moved-m4-file.sh
@@ -17,7 +17,7 @@
# Test remake rules when m4 files get moved among different "include
# dirs" (i.e. those passed to aclocal with '-I' option).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
MY_MACRO
diff --git a/t/remake-not-after-make-dist.sh b/t/remake-not-after-make-dist.sh
index 10fdf11c7..f06ede63b 100755
--- a/t/remake-not-after-make-dist.sh
+++ b/t/remake-not-after-make-dist.sh
@@ -25,7 +25,7 @@
#
# Report from Akim Demaille.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
# Rebuild rule are ok until make dist, but not afterwards.
diff --git a/t/remake-recurs-user.sh b/t/remake-recurs-user.sh
new file mode 100755
index 000000000..34f86513b
--- /dev/null
+++ b/t/remake-recurs-user.sh
@@ -0,0 +1,89 @@
+#! /bin/sh
+# Copyright (C) 2012 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/>.
+
+# Remake rules and user-defined recursive rules.
+
+. test-init.sh
+
+cat >> configure.ac << 'END'
+m4_include([extra-targets.m4])
+AC_CONFIG_FILES([sub/Makefile])
+AC_OUTPUT
+END
+
+echo 'AM_EXTRA_RECURSIVE_TARGETS([foo])' > extra-targets.m4
+
+cat > Makefile.am << 'END'
+SUBDIRS = sub
+all-local: foo
+foo-local:
+ : > foo
+bar-local:
+ : > bar
+MOSTLYCLEANFILES = foo
+END
+
+mkdir sub
+cat > sub/Makefile.am << 'END'
+foo-local:
+ : > foo2
+MOSTLYCLEANFILES = foo2
+bar-local: later-target
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+
+$MAKE
+test -f foo
+test -f sub/foo2
+test ! -f bar
+test ! -f sub/zardoz
+$MAKE distcheck
+
+$sleep
+
+echo 'AM_EXTRA_RECURSIVE_TARGETS([bar])' >> extra-targets.m4
+
+cat >> Makefile.am <<'END'
+MOSTLYCLEANFILES += bar oof
+all-local: bar
+foo-local: oof
+oof:
+ : > $@
+END
+
+echo 'include $(srcdir)/more.am' >> sub/Makefile.am
+
+cat > sub/more.am << 'END'
+later-target:
+ : > zardoz
+DISTCLEANFILES = zardoz
+END
+
+using_gmake || $MAKE Makefile
+$MAKE
+test -f foo
+test -f oof
+test -f sub/foo2
+test -f bar
+test -f sub/zardoz
+$MAKE distcheck
+
+:
diff --git a/t/remake-renamed-am.sh b/t/remake-renamed-am.sh
index 378aa2660..200bef118 100755
--- a/t/remake-renamed-am.sh
+++ b/t/remake-renamed-am.sh
@@ -18,7 +18,7 @@
# of the "deleted header problem". This test checks that we can rename
# an included .am file without confusing the remake rules.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/remake-renamed-m4-file.sh b/t/remake-renamed-m4-file.sh
index ee25c5894..ff99f1d54 100755
--- a/t/remake-renamed-m4-file.sh
+++ b/t/remake-renamed-m4-file.sh
@@ -16,7 +16,7 @@
# Test remake rules when m4 files get renamed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
MY_MACRO
diff --git a/t/remake-renamed-m4-macro-and-file.sh b/t/remake-renamed-m4-macro-and-file.sh
index f440a45e4..965873709 100755
--- a/t/remake-renamed-m4-macro-and-file.sh
+++ b/t/remake-renamed-m4-macro-and-file.sh
@@ -18,7 +18,7 @@
# an m4 macro in it gets renamed. Kudos to Bruno Haible for thinking
# about this situation. See also related test 'acloca22.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
MY_MACRO
diff --git a/t/remake-renamed-m4-macro.sh b/t/remake-renamed-m4-macro.sh
index 281dde257..99ab1db90 100755
--- a/t/remake-renamed-m4-macro.sh
+++ b/t/remake-renamed-m4-macro.sh
@@ -17,7 +17,7 @@
# Test remake rules when the name of an m4 macro change. Try both with
# and without indirection.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
MY_MACRO
diff --git a/t/remake-subdir-from-subdir.sh b/t/remake-subdir-from-subdir.sh
index b6c0c61b8..0a2c5fa1f 100755
--- a/t/remake-subdir-from-subdir.sh
+++ b/t/remake-subdir-from-subdir.sh
@@ -19,7 +19,7 @@
# See also the other similar tests 'remake-subdir*.sh', and the
# related test 'aclocal5.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
m4_include([subdirs.m4])
diff --git a/t/remake-subdir-gnu.sh b/t/remake-subdir-gnu.sh
index 9b2672bec..a00ae5758 100755
--- a/t/remake-subdir-gnu.sh
+++ b/t/remake-subdir-gnu.sh
@@ -21,7 +21,7 @@
# related test 'aclocal5.sh'
required=GNUmake
-. ./defs || exit 1
+. test-init.sh
magic1='::MagicString::One::'
magic2='__MagicString__Two__'
diff --git a/t/remake-subdir-grepping.sh b/t/remake-subdir-grepping.sh
index 0cce72e05..6700472e6 100755
--- a/t/remake-subdir-grepping.sh
+++ b/t/remake-subdir-grepping.sh
@@ -18,7 +18,7 @@
# are correctly generated.
# See also sister functional test 'remake-subdir-only.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/remake-subdir-long-time.sh b/t/remake-subdir-long-time.sh
index 41cc40a6d..e9a6f5709 100755
--- a/t/remake-subdir-long-time.sh
+++ b/t/remake-subdir-long-time.sh
@@ -21,7 +21,7 @@
# an explicit delay in the build process.
# Suggestion by Ralf Wildenhues.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/remake-subdir-no-makefile.sh b/t/remake-subdir-no-makefile.sh
index 5291ddda6..56a131736 100755
--- a/t/remake-subdir-no-makefile.sh
+++ b/t/remake-subdir-no-makefile.sh
@@ -17,7 +17,7 @@
# Ensure that remake rules work for files in a subdirectory even when
# there is no Makefile for that subdirectory.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/foo])
diff --git a/t/remake-subdir-only.sh b/t/remake-subdir-only.sh
index 12d1ca544..b1023ddcb 100755
--- a/t/remake-subdir-only.sh
+++ b/t/remake-subdir-only.sh
@@ -17,7 +17,7 @@
# Make sure remaking rules in subdir are correctly generated.
# See also sister "grepping" test 'remake-subdir-grepping.sh'.
-. ./defs || exit 1
+. test-init.sh
fingerprint='=/FiNgErPrInT/='
diff --git a/t/remake-subdir.sh b/t/remake-subdir.sh
index 1e4716d8f..a8014cf8f 100755
--- a/t/remake-subdir.sh
+++ b/t/remake-subdir.sh
@@ -19,7 +19,7 @@
# See also the other similar tests 'remake-subdir*.sh', and the
# related test 'aclocal5.sh'.
-. ./defs || exit 1
+. test-init.sh
if using_gmake; then
remake=$MAKE
diff --git a/t/remake-subdir2.sh b/t/remake-subdir2.sh
index 42f0ba14d..a87554467 100755
--- a/t/remake-subdir2.sh
+++ b/t/remake-subdir2.sh
@@ -19,7 +19,7 @@
# See also the other similar tests 'remake-subdir*.sh', and the
# related test 'aclocal5.sh'.
-. ./defs || exit 1
+. test-init.sh
magic1='::MagicString::One::'
magic2='__MagicString__Two__'
diff --git a/t/remake-subdir3.sh b/t/remake-subdir3.sh
index b6c580ca3..9362a69ea 100755
--- a/t/remake-subdir3.sh
+++ b/t/remake-subdir3.sh
@@ -16,7 +16,7 @@
# Make sure remaking rules work when subdir Makefile.in has been removed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
@@ -39,7 +39,7 @@ do_check ()
{
$MAKE >stdout || { cat stdout; exit 1; }
cat stdout
- test $(grep -c " --run " stdout) -eq 1
+ test $(grep -c "/missing " stdout) -eq 1
}
# Now, we are set up. Ensure that, for either missing Makefile.in,
diff --git a/t/remake-timing-bug-pr8365.sh b/t/remake-timing-bug-pr8365.sh
index 3e7f1e6e4..db1c46c83 100755
--- a/t/remake-timing-bug-pr8365.sh
+++ b/t/remake-timing-bug-pr8365.sh
@@ -22,7 +22,7 @@
# make by hand. Thus, fixing it would not be worth the hassle, but
# we prefer to keep it exposed anyway.
-. ./defs || exit 1
+. test-init.sh
# We'll use calls to stat to get debugging information.
if stat /dev/null; then stat=stat; else stat=:; fi
diff --git a/t/repeated-options.sh b/t/repeated-options.sh
index c300996f8..83253d3cc 100755
--- a/t/repeated-options.sh
+++ b/t/repeated-options.sh
@@ -18,7 +18,7 @@
# generate broken or incorrect makefiles.
required='cc bzip2'
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<END
AC_INIT([$me], [1.0])
diff --git a/t/req.sh b/t/req.sh
index cfeb44c1e..e68db0c5f 100755
--- a/t/req.sh
+++ b/t/req.sh
@@ -16,20 +16,15 @@
# Test to make sure macro used in m4 file is included.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<EOF
-AC_INIT
+AC_INIT([$me], [1.0])
AM_INIT_GUILE_MODULE
EOF
cat > acinclude.m4 << 'END'
-AC_DEFUN([AM_INIT_GUILE_MODULE],[
-. $srcdir/../GUILE-VERSION
-AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
-AC_CONFIG_AUX_DIR(..)
-module=[$1]
-AC_SUBST(module)])
+AC_DEFUN([AM_INIT_GUILE_MODULE], [AM_INIT_AUTOMAKE([whocares])])
END
$ACLOCAL
diff --git a/t/reqd.sh b/t/reqd.sh
index 6006a9cd9..f34979831 100755
--- a/t/reqd.sh
+++ b/t/reqd.sh
@@ -17,7 +17,7 @@
# Make sure Automake will install several copies of required files if needed.
# Reported by Marius Vollmer.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<EOF
AC_CONFIG_FILES([one/Makefile two/Makefile])
diff --git a/t/reqd2.sh b/t/reqd2.sh
index 5734fd199..c6a325646 100755
--- a/t/reqd2.sh
+++ b/t/reqd2.sh
@@ -19,7 +19,7 @@
# to fix the Makefiles.)
required='libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([req2], [1.0])
diff --git a/t/rulepat.sh b/t/rulepat.sh
index a7cbb97e0..2d0e5378c 100755
--- a/t/rulepat.sh
+++ b/t/rulepat.sh
@@ -16,7 +16,7 @@
# Test to make sure RULE_PATTERN catches strange targets.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
$(srcdir)/Makefile.am:
diff --git a/t/sanity.sh b/t/sanity.sh
index 09b127261..1f20b118f 100755
--- a/t/sanity.sh
+++ b/t/sanity.sh
@@ -16,7 +16,7 @@
# Unsafe absolute directory names should be diagnosed.
-. ./defs || exit 1
+. test-init.sh
mkdir 'unsafe$'
cd 'unsafe$'
diff --git a/t/seenc.sh b/t/seenc.sh
index 9f0ae1191..9a1ae2b09 100755
--- a/t/seenc.sh
+++ b/t/seenc.sh
@@ -16,7 +16,7 @@
# Test to make sure C-but-not-CC error works.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
dnl AC_PROG_CC and AC_PROG_CXX missing on purpose
diff --git a/t/self-check-configure-help.sh b/t/self-check-configure-help.sh
index cbe0aa58a..24600251c 100755
--- a/t/self-check-configure-help.sh
+++ b/t/self-check-configure-help.sh
@@ -17,7 +17,7 @@
# Sanity check on the function used by the automake testsuite to
# analyze output of "configure --help".
-. ./defs || exit 1
+. test-init.sh
# FIXME: this test is a good candidate for a conversion to TAP.
diff --git a/t/self-check-dir.tap b/t/self-check-dir.tap
index 2bc2ce0c6..0dc893d19 100755
--- a/t/self-check-dir.tap
+++ b/t/self-check-dir.tap
@@ -15,12 +15,12 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Sanity check for the automake testsuite.
-# Check that tests using './defs' create a proper temporary directory,
-# and run in it. Also check that we can prevent the pre-population
-# and the creation of such directory if we want.
+# Check that tests using 'test-init.sh' create a proper temporary
+# directory, and run in it. Also check that we can prevent the
+# pre-population and the creation of such directory if we want.
am_create_testdir=no
-. ./defs || exit 99
+. test-init.sh
plan_ 5
@@ -37,7 +37,7 @@ do_check ()
rm -rf _self.dir || framework_failure_ "cleaning up _self.dir"
command_ok_ "$1 [$2]" $AM_TEST_RUNNER_SHELL -c "
$2
- . ./defs || exit 99
+ . test-init.sh
# Don't fail if 'ls -l' fails; avoids possible racy spurious failures.
pwd; ls -l || : # For debugging.
$3
diff --git a/t/self-check-exit.tap b/t/self-check-exit.tap
index 19cf27a87..14d9e8bed 100755
--- a/t/self-check-exit.tap
+++ b/t/self-check-exit.tap
@@ -16,11 +16,11 @@
# Sanity check for the automake testsuite.
# Check that, in case of failing commands, the correct exit status is
-# passed to the exit trap installed by the './defs' script.
+# passed to the exit trap installed by the 'test-init.sh' script.
# Also check that the 'errexit' shell flag is active.
am_create_testdir=no
-. ./defs || exit 99
+. test-init.sh
plan_ 32
@@ -30,14 +30,14 @@ plan_ 32
set +e
# It's especially important that the 'unset' is done before sourcing
-# ./defs, i.e., when 'set -e' is not active yet, for the benefit of shells
-# (like Bash 2.05 and Solaris 10 /bin/ksh) that returns a non-zero status
-# when unsetting an already-unset variable.
-# Add an extra newline at the end so that the aliases defined by 'defs'
-# can take effect. Yes, this is truly required.
-init="stderr_fileno_=2; unset am_explicit_skips; . ./defs${nl}"
+# test-init.sh, i.e., when 'set -e' is not active yet, for the benefit
+# of shells (like Bash 2.05 and Solaris 10 /bin/ksh) that returns a
+# non-zero status when unsetting an already-unset variable.
+# Add an extra newline at the end so that the aliases defined by
+# test-init.sh can take effect. Yes, this is truly required.
+init="stderr_fileno_=2; unset am_explicit_skips;. test-init.sh${nl}"
-# Required so that the code in defs doesn't go crazy trying to creating a
+# Required so that the code in test-init.sh doesn't go crazy trying to creating a
# temporary directory in the absolute dir of $AM_TEST_RUNNER_SHELL.
dummy_test_script=t/$me.sh
diff --git a/t/self-check-explicit-skips.sh b/t/self-check-explicit-skips.sh
index 97f5288fd..aa9250463 100755
--- a/t/self-check-explicit-skips.sh
+++ b/t/self-check-explicit-skips.sh
@@ -19,7 +19,7 @@
# an early exit due to some command exiting unexpectedly with status 77.
am_create_testdir=no
-. ./defs || exit 1
+. test-init.sh
set +e
@@ -31,7 +31,7 @@ run_dummy_test ()
{
env $2 $AM_TEST_RUNNER_SHELL -c "
am_create_testdir=no
- . ./defs
+ . test-init.sh
$1
" dummy.sh
}
diff --git a/t/self-check-is-blocked-signal.tap b/t/self-check-is-blocked-signal.tap
index 9077ca846..cd23b29dc 100755
--- a/t/self-check-is-blocked-signal.tap
+++ b/t/self-check-is-blocked-signal.tap
@@ -18,7 +18,7 @@
# shell function.
am_create_testdir=no
-. ./defs || exit 99
+. test-init.sh
plan_ 2
diff --git a/t/self-check-is_newest.tap b/t/self-check-is_newest.tap
index a5f84b311..a236798db 100755
--- a/t/self-check-is_newest.tap
+++ b/t/self-check-is_newest.tap
@@ -16,7 +16,7 @@
# Sanity check for the automake testsuite: the 'is_newest' subroutine.
-. ./defs || exit 1
+. test-init.sh
plan_ 21
diff --git a/t/self-check-me.tap b/t/self-check-me.tap
index 9c3125ee7..6d008b648 100755
--- a/t/self-check-me.tap
+++ b/t/self-check-me.tap
@@ -15,10 +15,10 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Sanity check for the automake testsuite.
-# Make sure that $me gets automatically defined by './defs'.
+# Make sure that $me gets automatically defined by 'test-init.sh'.
am_create_testdir=no
-. ./defs || exit 1
+. test-init.sh
plan_ 12
@@ -31,7 +31,7 @@ do_check ()
{
$AM_TEST_RUNNER_SHELL -c '
am_create_testdir=no # Do not pollute the top-level directory.
- . ./defs
+ . test-init.sh
echo me=$me
' "$1" | grep "^me=$2$"
command_ok_ "me=$1" test $? -eq 0
@@ -52,10 +52,10 @@ do_check abc. 'abc\.'
s=$(me=bad $AM_TEST_RUNNER_SHELL -c '
# Do not pollute the top-level directory.
am_create_testdir=no
- . ./defs
+ . test-init.sh
echo me=$me
' foo.sh)
-command_ok_ "override of \$me before ./defs causes no error" \
+command_ok_ "override of \$me before test-init.sh causes no error" \
test $? -eq 0
r='ok'
diff --git a/t/self-check-report.sh b/t/self-check-report.sh
index 11211ec4b..74ec75c99 100755
--- a/t/self-check-report.sh
+++ b/t/self-check-report.sh
@@ -21,7 +21,7 @@
unset stderr_fileno_ || :
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
set +e
diff --git a/t/self-check-seq.tap b/t/self-check-seq.tap
index ead4eed70..4db005040 100755
--- a/t/self-check-seq.tap
+++ b/t/self-check-seq.tap
@@ -17,7 +17,7 @@
# Sanity check for the automake testsuite.
# Check the 'seq_' subroutine.
-. ./defs || exit 1
+. test-init.sh
plan_ 14
diff --git a/t/self-check-unindent.tap b/t/self-check-unindent.tap
index 2bd3bc2c5..c8dc5a84f 100755
--- a/t/self-check-unindent.tap
+++ b/t/self-check-unindent.tap
@@ -17,7 +17,7 @@
# Sanity check for the automake testsuite.
# Check the 'unindent' subroutine.
-. ./defs || exit 1
+. test-init.sh
plan_ 22
diff --git a/t/serial-tests.sh b/t/serial-tests.sh
index 26ce68faa..52178c58f 100755
--- a/t/serial-tests.sh
+++ b/t/serial-tests.sh
@@ -17,7 +17,7 @@
# Option 'serial-tests'.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
hasnt_parallel_tests ()
{
diff --git a/t/silent.sh b/t/silent-c.sh
index 5a12036c7..82b95873a 100755
--- a/t/silent.sh
+++ b/t/silent-c.sh
@@ -14,17 +14,15 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check silent-rules mode, without libtool, standard depmode case.
-
-# Please keep this file in sync with 'silent2.sh'.
+# Check silent-rules mode for C, without libtool, both with and without
+# automatic dependency tracking.
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_CONFIG_FILES([sub/Makefile])
AC_PROG_CC
AM_PROG_CC_C_O
@@ -59,25 +57,35 @@ $ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
-./configure --enable-silent-rules
-$MAKE >stdout || { cat stdout; exit 1; }
-cat stdout
-$EGREP ' (-c|-o)' stdout && exit 1
-grep 'mv ' stdout && exit 1
-grep 'CC .*foo\.' stdout
-grep 'CC .*bar\.' stdout
-grep 'CC .*baz\.' stdout
-grep 'CC .*bla\.' stdout
-grep 'CCLD .*foo' stdout
-grep 'CCLD .*bar' stdout
-grep 'CCLD .*baz' stdout
-grep 'CCLD .*bla' stdout
+for config_args in \
+ '--enable-dependency-tracking' \
+ '--disable-dependency-tracking' \
+; do
+
+ ./configure --enable-silent-rules $config_args
+
+ $MAKE >stdout || { cat stdout; exit 1; }
+ cat stdout
+ $EGREP ' (-c|-o)' stdout && exit 1
+ grep 'mv ' stdout && exit 1
+ grep 'CC .*foo\.' stdout
+ grep 'CC .*bar\.' stdout
+ grep 'CC .*baz\.' stdout
+ grep 'CC .*bla\.' stdout
+ grep 'CCLD .*foo' stdout
+ grep 'CCLD .*bar' stdout
+ grep 'CCLD .*baz' stdout
+ grep 'CCLD .*bla' stdout
+
+ $MAKE clean
+ $MAKE V=1 >stdout || { cat stdout; exit 1; }
+ cat stdout
+ grep ' -c' stdout
+ grep ' -o foo' stdout
+ $EGREP '(CC|LD) ' stdout && exit 1
+
+ $MAKE distclean
-$MAKE clean
-$MAKE V=1 >stdout || { cat stdout; exit 1; }
-cat stdout
-grep ' -c' stdout
-grep ' -o foo' stdout
-$EGREP '(CC|LD) ' stdout && exit 1
+done
:
diff --git a/t/silent-configsite.sh b/t/silent-configsite.sh
index 4adc60137..8bca33ff5 100755
--- a/t/silent-configsite.sh
+++ b/t/silent-configsite.sh
@@ -18,10 +18,10 @@
# from config.site, and that this default can be overridden from
# either the ./configure or make command line.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
-AM_SILENT_RULES
+# This line will be edited later to force silent-rules default.
AC_OUTPUT
EOF
@@ -51,8 +51,9 @@ $MAKE distclean
: 'Disable by default in configure.ac, enable by default in config.site'
-sed 's/^AM_SILENT_RULES/&([no])/' configure.ac > configure.tmp
-mv -f configure.tmp configure.ac
+sed 's/.*silent-rules default.*/AM_SILENT_RULES([no])/' configure.ac > t
+diff t configure.ac && fatal_ "editing configure.ac"
+mv -f t configure.ac
$ACLOCAL
$AUTOCONF
$AUTOMAKE --add-missing
@@ -67,8 +68,9 @@ $MAKE distclean
: 'Enable by default in configure.ac, disable by default in config.site'
-sed 's/^AM_SILENT_RULES/&([yes])/' configure.ac > configure.tmp
-mv -f configure.tmp configure.ac
+sed 's/.*AM_SILENT_RULES.*/AM_SILENT_RULES([yes])/' configure.ac > t
+diff t configure.ac && fatal_ "editing configure.ac"
+mv -f t configure.ac
$ACLOCAL
$AUTOCONF
$AUTOMAKE --add-missing
diff --git a/t/silent6.sh b/t/silent-custom.sh
index 3593adf5d..73fc4d060 100755
--- a/t/silent6.sh
+++ b/t/silent-custom.sh
@@ -16,10 +16,9 @@
# Check user extensibility of silent-rules mode.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
EOF
@@ -31,6 +30,7 @@ echo SUBDIRS = sub > Makefile.am
mkdir sub
cat > sub/Makefile.am <<'EOF'
+AUTOMAKE_OPTIONS = -Wno-portability-recursive
my_verbose = $(my_verbose_$(V))
my_verbose_ = $(my_verbose_$(AM_DEFAULT_VERBOSITY))
my_verbose_0 = @echo " XGEN $@";
diff --git a/t/silentcxx.sh b/t/silent-cxx.sh
index 1cb9f26a7..0a7aa82e2 100755
--- a/t/silentcxx.sh
+++ b/t/silent-cxx.sh
@@ -14,18 +14,15 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check silent-rules mode for C++.
-# This test should work with generic C++ compilers; keep it in sync with
-# sister test 'silentcxx-gcc.sh', which requires the GNU C++ compiler
-# and forces the use of gcc depmode.
+# Check silent-rules mode for C++, both with and without automatic
+# dependency tracking.
required=c++
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_PROG_CXX
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
diff --git a/t/silentf77.sh b/t/silent-f77.sh
index 580ec6d7d..24bc93706 100755
--- a/t/silentf77.sh
+++ b/t/silent-f77.sh
@@ -15,15 +15,14 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Check silent-rules mode for Fortran 77.
-# Keep this ins sync with the sister test 'silentf90.sh'.
+# Keep this ins sync with the sister test 'silent-f90.sh'.
required=fortran77
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_PROG_F77
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
diff --git a/t/silentf90.sh b/t/silent-f90.sh
index fb422fdb7..ef83d808b 100755
--- a/t/silentf90.sh
+++ b/t/silent-f90.sh
@@ -15,15 +15,14 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Check silent-rules mode for Fortran 90.
-# Keep this ins sync with the sister test 'silentf77.sh'.
+# Keep this ins sync with the sister test 'silent-f77.sh'.
required=fortran
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_PROG_FC
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
diff --git a/t/silent7.sh b/t/silent-gen.sh
index 898a4423b..cd01a4f63 100755
--- a/t/silent7.sh
+++ b/t/silent-gen.sh
@@ -14,14 +14,12 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check user extensibility of silent-rules mode.
+# Silent rules: use of pre-defined variables $(AM_V_GEN) and $(AM_V_at).
+# Incidentally, also check that silent rules are disabled by default.
-. ./defs || exit 1
+. test-init.sh
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_OUTPUT
-EOF
+echo AC_OUTPUT >> configure.ac
cat > Makefile.am <<'EOF'
all-local: foo
@@ -41,7 +39,9 @@ $ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
-./configure --disable-silent-rules
+# Silent rules are disabled by default, since we haven't called
+# "AM_SILENT_RULES([yes])" explicitly.
+./configure
$MAKE >stdout || { cat stdout; exit 1; }
cat stdout
grep 'GEN ' stdout && exit 1
@@ -85,8 +85,4 @@ grep 'GEN ' stdout && exit 1
grep 'cp ' stdout
grep 'echo ' stdout
-# Ensure that setting 'silent-rules' in a Makefile.am produces an error.
-echo 'AUTOMAKE_OPTIONS = silent-rules' >> Makefile.am
-AUTOMAKE_fails --force
-
:
diff --git a/t/silent-lex.sh b/t/silent-lex.sh
index ca2164f76..6cc04308e 100755
--- a/t/silent-lex.sh
+++ b/t/silent-lex.sh
@@ -17,12 +17,11 @@
# Check silent-rules mode for Lex.
required='cc lex'
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AM_PROG_CC_C_O
AC_PROG_LEX
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/silent9.sh b/t/silent-lt.sh
index 63441e9ab..28a4f8900 100755
--- a/t/silent9.sh
+++ b/t/silent-lt.sh
@@ -14,21 +14,19 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check silent-rules mode, with libtool, nodep case.
-
-# Please keep this file in sync with 'silent3.sh' and 'silent4.sh'.
+# Check silent-rules mode for C, with libtool, both with and without
+# automatic dependency tracking.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_CONFIG_FILES([sub/Makefile])
AC_PROG_CC
-AM_PROG_CC_C_O
AM_PROG_AR
+AM_PROG_CC_C_O
AC_PROG_LIBTOOL
AC_OUTPUT
EOF
@@ -62,26 +60,37 @@ $ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
-./configure --disable-dependency-tracking --enable-silent-rules
-$MAKE >stdout || { cat stdout; exit 1; }
-cat stdout
-$EGREP ' (-c|-o)' stdout && exit 1
-grep 'mv ' stdout && exit 1
-grep ' CC .*foo\.' stdout
-grep ' CC .*bar\.' stdout
-grep ' CC .*baz\.' stdout
-grep ' CC .*bla\.' stdout
-grep ' CCLD .*foo' stdout
-grep ' CCLD .*bar' stdout
-grep ' CCLD .*baz' stdout
-grep ' CCLD .*bla' stdout
-
-$MAKE clean
-$MAKE V=1 >stdout || { cat stdout; exit 1; }
-cat stdout
-grep ' -c' stdout
-grep ' -o libfoo' stdout
-# The libtool command line can contain e.g. a '--tag=CC' option.
-sed 's/--tag=[^ ]*/--tag=x/g' stdout | $EGREP '(CC|LD) ' && exit 1
+for config_args in \
+ '--enable-dependency-tracking' \
+ '--disable-dependency-tracking' \
+; do
+
+ ./configure --enable-silent-rules $config_args
+
+ $MAKE >stdout || { cat stdout; exit 1; }
+ cat stdout
+
+ $EGREP ' (-c|-o)' stdout && exit 1
+ grep 'mv ' stdout && exit 1
+ grep ' CC .*foo\.' stdout
+ grep ' CC .*bar\.' stdout
+ grep ' CC .*baz\.' stdout
+ grep ' CC .*bla\.' stdout
+ grep ' CCLD .*foo' stdout
+ grep ' CCLD .*bar' stdout
+ grep ' CCLD .*baz' stdout
+ grep ' CCLD .*bla' stdout
+
+ $MAKE clean
+ $MAKE V=1 >stdout || { cat stdout; exit 1; }
+ cat stdout
+ grep ' -c' stdout
+ grep ' -o libfoo' stdout
+ # The libtool command line can contain e.g. a '--tag=CC' option.
+ sed 's/--tag=[^ ]*/--tag=x/g' stdout | $EGREP '(CC|LD) ' && exit 1
+
+ $MAKE distclean
+
+done
:
diff --git a/t/silent-many-gcc.sh b/t/silent-many-gcc.sh
deleted file mode 100755
index 98104b649..000000000
--- a/t/silent-many-gcc.sh
+++ /dev/null
@@ -1,241 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Check silent-rules mode, with gcc depmode and many languages at once.
-# This test partly overlaps with other 'silent*.sh', but it serves as
-# a stress test by using many different languages at once -- so don't
-# remove this test script.
-# This test requires the GNU compilers; keep it in sync with sister test
-# 'silent-many-generic.sh', which should work with generic compilers.
-
-required='gcc g++ gfortran lex yacc'
-. ./defs || exit 1
-
-# Avoids too much code duplication.
-do_and_check_silent_build ()
-{
- case $1 in
- --rebuild) rebuild=true;;
- *) rebuild=false;;
- esac
-
- $MAKE >stdout || { cat stdout; exit 1; }
- cat stdout
- # Avoid spurious failures with SunStudio Fortran compilers.
- sed '/^NOTICE:/d' stdout > t
- mv -f t stdout
- cat stdout
-
- $EGREP ' (-c|-o)' stdout && exit 1
- $EGREP '(mv|ylwrap) ' stdout && exit 1
-
- grep 'CXX .*foo1\.' stdout
- grep 'CXX .*baz1\.' stdout
- grep 'FC .*foo2\.' stdout
- grep 'FC .*baz2\.' stdout
- grep 'F77 .*foo3\.' stdout
- grep 'F77 .*baz3\.' stdout
- grep ' CC .*foo5\.' stdout
- grep ' CC .*baz5\.' stdout
- grep ' CC .*foo6\.' stdout
- grep ' CC .*baz6\.' stdout
-
- grep 'CXXLD .*foo' stdout
- grep 'CCLD .*bar' stdout
- grep 'CXXLD .*baz' stdout
- grep 'CCLD .*bla' stdout
-
- if ! $rebuild; then
- grep 'YACC .*foo6\.' stdout
- grep 'YACC .*baz6\.' stdout
- grep 'LEX .*foo5\.' stdout
- grep 'LEX .*baz5\.' stdout
- fi
-
- unset rebuild
-}
-
-# Avoids too much code duplication.
-do_and_check_verbose_build ()
-{
- case $1 in
- --rebuild) rebuild=true;;
- *) rebuild=false;;
- esac
-
- $MAKE V=1 >stdout || { cat stdout; exit 1; }
- cat stdout
-
- grep ' -c ' stdout
- grep ' -o ' stdout
-
- $EGREP '(CC|CXX|FC|F77|LD) ' stdout && exit 1
-
- if ! $rebuild; then
- grep 'ylwrap ' stdout
- $EGREP '(LEX|YACC) ' stdout && exit 1
- fi
-
- unset rebuild
-}
-
-mkdir sub
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AM_PROG_CC_C_O
-AC_PROG_CXX
-AC_PROG_F77
-AC_PROG_FC
-AC_PROG_LEX
-AC_PROG_YACC
-AC_CONFIG_FILES([sub/Makefile])
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-# Need generic and non-generic rules.
-bin_PROGRAMS = foo bar fo2
-bar_CFLAGS = $(AM_CFLAGS)
-foo_SOURCES = foo1.cpp foo2.f90 foo3.f foo5.l foo6.y
-fo2_SOURCES = $(foo_SOURCES)
-fo2_CPPFLAGS = $(AM_CPPFLAGS)
-fo2_FFLAGS = $(AM_FFLAGS)
-fo2_FCFLAGS = $(AM_FCFLAGS)
-fo2_YFLAGS = -v
-fo2_LFLAGS = -n
-SUBDIRS = sub
-AM_YFLAGS = -d
-LDADD = $(LEXLIB)
-BUILT_SOURCES = foo6.h
-EOF
-
-cat > sub/Makefile.am <<'EOF'
-AUTOMAKE_OPTIONS = subdir-objects
-# Need generic and non-generic rules.
-bin_PROGRAMS = baz bla ba2
-bla_CFLAGS = $(AM_CFLAGS)
-baz_SOURCES = baz1.cpp baz2.f90 baz3.f baz5.l baz6.y
-ba2_SOURCES = $(baz_SOURCES)
-ba2_CPPFLAGS = $(AM_CPPFLAGS)
-ba2_FFLAGS = $(AM_FFLAGS)
-ba2_FCFLAGS = $(AM_FCFLAGS)
-ba2_YFLAGS = -v
-ba2_LFLAGS = -n
-AM_YFLAGS = -d
-LDADD = $(LEXLIB)
-BUILT_SOURCES = baz6.h
-EOF
-
-cat > foo1.cpp <<'EOF'
-int main ()
-{
- return 0;
-}
-EOF
-cat > foo2.f90 <<'EOF'
- subroutine foo2
- return
- end
-EOF
-cat > foo3.f <<'EOF'
- subroutine foo3
- return
- end
-EOF
-cat > foo5.l <<'EOF'
-%{
-#define YY_NO_UNISTD_H 1
-%}
-%%
-"END" return EOF;
-.
-%%
-/* Avoid possible link errors. */
-int yywrap (void)
-{
- return 1;
-}
-EOF
-cat > foo6.y <<'EOF'
-%{
-void yyerror (char *s) {}
-%}
-%token EOF
-%%
-fubar : 'f' 'o' 'o' 'b' 'a' 'r' EOF {};
-EOF
-cp foo1.cpp bar.c
-cp foo1.cpp sub/baz.c
-cp foo1.cpp sub/bla.c
-cp foo1.cpp sub/baz1.cpp
-cp foo2.f90 sub/baz2.f90
-cp foo3.f sub/baz3.f
-cp foo5.l sub/baz5.l
-cp foo6.y sub/baz6.y
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-# Sanity check: make sure the cache variables we force are really
-# used by configure.
-$FGREP am_cv_CC_dependencies_compiler_type configure
-$FGREP am_cv_CXX_dependencies_compiler_type configure
-# Ensure per-target rules are used, to ensure their coverage below.
-# (We do not do an exhaustive check, that wouldn't be practical).
-$FGREP 'bar-bar.o' Makefile.in
-$FGREP 'fo2-foo5.c' Makefile.in
-$FGREP 'fo2-foo6.c' Makefile.in
-
-# Force gcc ("fast") depmode.
-depmodes="am_cv_CC_dependencies_compiler_type=gcc \
- am_cv_CXX_dependencies_compiler_type=gcc"
-# This apparently useless "for" loop is here to simplify the syncing
-# with sister test 'silent-many-generic.sh'.
-for config_args in \
- "$depmodes"
-do
-
- ./configure $config_args --enable-silent-rules
-
- do_and_check_silent_build
- # Cleaning and then rebuilding with the same V flag (and without
- # removing the generated sources in between) shouldn't trigger a
- # different set of rules.
- $MAKE clean
- do_and_check_silent_build --rebuild
-
- # Ensure a clean rebuild.
- $MAKE clean
- # This is required, since these files are not removed by 'make clean'
- # (as dictated by the GNU Coding Standards).
- rm -f *foo5.c *foo6.[ch] sub/*baz5.c sub/*baz6.[ch]
-
- do_and_check_verbose_build
- # Cleaning and then rebuilding with the same V flag (and without
- # removing the generated sources in between) shouldn't trigger a
- # different set of rules.
- $MAKE clean
- do_and_check_verbose_build --rebuild
-
- # Ensure a clean reconfiguration/rebuild.
- $MAKE clean
- $MAKE maintainer-clean
-
-done
-
-:
diff --git a/t/silent-many-generic.sh b/t/silent-many-languages.sh
index 6cbcbd708..c8954d135 100755
--- a/t/silent-many-generic.sh
+++ b/t/silent-many-languages.sh
@@ -18,12 +18,9 @@
# This test partly overlaps with other 'silent*.sh', but it serves as
# a stress test by using many different languages at once -- so don't
# remove this test script.
-# This test should work with generic compilers; keep it in sync with
-# sister test 'silent-many-gcc.sh', which requires the GNU compilers
-# and forces the use of gcc depmode.
required='cc c++ fortran fortran77 lex yacc'
-. ./defs || exit 1
+. test-init.sh
# Avoids too much code duplication.
do_and_check_silent_build ()
@@ -96,7 +93,6 @@ do_and_check_verbose_build ()
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AM_PROG_CC_C_O
AC_PROG_F77
AC_PROG_FC
diff --git a/t/silent-nested-vars.sh b/t/silent-nested-vars.sh
index 08ba070ae..3969ada57 100755
--- a/t/silent-nested-vars.sh
+++ b/t/silent-nested-vars.sh
@@ -17,7 +17,7 @@
# Check silent-rules mode, on 'make' implementations that do not
# support nested variables (Bug#9928, Bug#10237).
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'EOF'
AM_SILENT_RULES
diff --git a/t/silent-nowarn.sh b/t/silent-nowarn.sh
deleted file mode 100755
index 9eb759d6b..000000000
--- a/t/silent-nowarn.sh
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2011-2012 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/>.
-
-# Check that the 'silent-rules' mode suppresses the warnings for recursive
-# make variable expansions. This should happen regardless of whether and
-# where these warnings are requested.
-
-. ./defs || exit 1
-
-cat > configure.ac <<END
-AC_INIT([$me], [1.0])
-# Yes, we repeat the warnings two times, both before and after
-# 'silent-rules'. This is deliberate.
-AM_INIT_AUTOMAKE([gnu -Wall -Wportability-recursive
- silent-rules
- -Wall -Wportability-recursive])
-AC_CONFIG_FILES([Makefile])
-END
-
-cat > Makefile.am <<'END'
-AUTOMAKE_OPTIONS = gnu -Wall -Wportability-recursive
-foo = $($(v)) $(x$(v)) $($(v)x) $(y$(v)z)
-END
-
-# Files required bu gnu strictness.
-touch AUTHORS ChangeLog COPYING INSTALL NEWS README THANKS
-
-$ACLOCAL
-$AUTOMAKE --gnu -Wall -Wportability-recursive
-
-:
diff --git a/t/silent-obsolescent-warns.sh b/t/silent-obsolescent-warns.sh
deleted file mode 100755
index 38d845c91..000000000
--- a/t/silent-obsolescent-warns.sh
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Some checks about silent-rules mode and warnings.
-
-. ./defs || exit 1
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-my_verbose = $(my_verbose_$(V))
-my_verbose_ = $(my_verbose_$(AM_DEFAULT_VERBOSITY))
-my_verbose_0 = @echo " PKG-GEN $@";
-foo: foo.in
- $(my_verbose)cp $(srcdir)/foo.in $@
-EOF
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-
-cat > configure.ac <<'END'
-AC_INIT([silent6], [1.0])
-AM_INIT_AUTOMAKE([-Wall])
-AC_CONFIG_FILES([Makefile])
-END
-
-rm -rf autom4te*.cache
-$ACLOCAL
-AUTOMAKE_fails
-grep 'my_verbose_\$(V.*non-POSIX ' stderr
-$AUTOMAKE -Wno-error
-
-# AM_SILENT_RULES should turn off the warning.
-echo 'AM_SILENT_RULES' >> configure.ac
-rm -rf autom4te*.cache
-$ACLOCAL
-$AUTOMAKE
-grep 'AM_V_GEN' Makefile.in
-$AUTOMAKE --force -Wno-all -Wportability
-grep 'AM_V_GEN' Makefile.in
-
-# The 'silent-rules' option to AM_INIT_AUTOMAKE should work likewise.
-cat > configure.ac <<'END'
-AC_INIT([silent6], [1.0])
-AM_INIT_AUTOMAKE([silent-rules])
-AC_CONFIG_FILES([Makefile])
-END
-rm -rf autom4te*.cache
-$ACLOCAL
-$AUTOMAKE
-grep 'AM_V_GEN' Makefile.in
-$AUTOMAKE --force -Wno-all -Wportability
-grep 'AM_V_GEN' Makefile.in
-
-:
diff --git a/t/silent-texi.sh b/t/silent-texi.sh
new file mode 100755
index 000000000..358d06818
--- /dev/null
+++ b/t/silent-texi.sh
@@ -0,0 +1,87 @@
+#!/bin/sh
+# Copyright (C) 2009-2012 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/>.
+
+# Check texinfo rules in silent-rules mode.
+
+required='makeinfo tex texi2dvi dvips'
+. test-init.sh
+
+echo AC_OUTPUT >> configure.ac
+
+cat > Makefile.am <<'EOF'
+info_TEXINFOS = foo.texi sub/zardoz.texi
+EOF
+
+cat > foo.texi <<'EOF'
+\input texinfo
+@setfilename foo.info
+@settitle foo manual
+@bye
+EOF
+
+mkdir sub
+cat > sub/zardoz.texi <<'EOF'
+\input texinfo
+@setfilename zardoz.info
+@settitle zardoz manual
+@bye
+EOF
+
+$ACLOCAL
+$AUTOMAKE --add-missing
+$AUTOCONF
+
+./configure --disable-silent-rules
+
+# Silent mode output.
+st=0
+$MAKE V=0 dvi html info ps pdf >stdout 2>stderr || st=$?
+cat stdout
+cat stderr >&2
+test $st -eq 0
+grep '^ DVIPS foo\.ps$' stdout
+grep '^ MAKEINFO foo\.html$' stdout
+# NetBSD make will print './foo.info' instead of 'foo.info'.
+$EGREP '^ MAKEINFO (|\./)foo\.info$' stdout
+grep '^ TEXI2DVI foo\.dvi$' stdout
+grep '^ TEXI2PDF foo\.pdf$' stdout
+grep '^ DVIPS sub/zardoz.ps$' stdout
+grep '^ MAKEINFO sub/zardoz.html$' stdout
+# NetBSD make will print './sub/zardoz.info' instead of 'zardoz.info'.
+$EGREP '^ MAKEINFO (|\./)sub/zardoz.info$' stdout
+grep '^ TEXI2DVI sub/zardoz.dvi$' stdout
+grep '^ TEXI2PDF sub/zardoz.pdf$' stdout
+# No make recipe is displayed before being executed.
+$EGREP 'texi2(dvi|pdf)|dvips|makeinfo|(rm|mv) ' \
+ stdout stderr && exit 1
+# No verbose output from TeX nor dvips.
+$EGREP '(zardoz|foo)\.log|3\.14|Copyright|This is|[Oo]utput ' \
+ stdout stderr && exit 1
+
+# Verbose mode output.
+$MAKE clean || exit 1
+$MAKE V=1 dvi html info ps pdf >output 2>&1 || { cat output; exit 1; }
+cat output
+$EGREP '(DVIPS|MAKEINFO|TEXI2(PDF|DVI)) ' output && exit 1
+# Verbose output from TeX.
+grep '[Oo]utput .*foo\.pdf' output
+grep '[Oo]utput .*zardoz\.pdf' output
+$FGREP 'foo.log' output
+$FGREP 'zardoz.log' output
+# Verbose output from dvips.
+$FGREP ' dvips' output
+
+:
diff --git a/t/silent-yacc-headers.sh b/t/silent-yacc-headers.sh
index e89fe5af7..e9ef9a096 100755
--- a/t/silent-yacc-headers.sh
+++ b/t/silent-yacc-headers.sh
@@ -18,12 +18,11 @@
# involved (i.e., the '-d' option is in *YFLAGS).
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AC_PROG_YACC
AC_PROG_CC
AC_OUTPUT
diff --git a/t/silent-yacc.sh b/t/silent-yacc.sh
index c5729efe5..a1de8b7c3 100755
--- a/t/silent-yacc.sh
+++ b/t/silent-yacc.sh
@@ -15,15 +15,13 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Check silent-rules mode for Yacc.
-# Keep this in sync with sister test 'silent-yacc-gcc.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
AM_PROG_CC_C_O
AC_PROG_YACC
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/silent2.sh b/t/silent2.sh
deleted file mode 100755
index 4e8fd6b82..000000000
--- a/t/silent2.sh
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Check silent-rules mode, without libtool, non-fastdep case
-# (so that, with GCC, we also cover the other code paths in depend2).
-
-# Please keep this file in sync with 'silent.sh'.
-
-required=gcc
-. ./defs || exit 1
-
-mkdir sub
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_CONFIG_FILES([sub/Makefile])
-AC_PROG_CC
-AM_PROG_CC_C_O
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-# Need generic and non-generic rules.
-bin_PROGRAMS = foo bar
-bar_CFLAGS = $(AM_CFLAGS)
-SUBDIRS = sub
-EOF
-
-cat > sub/Makefile.am <<'EOF'
-AUTOMAKE_OPTIONS = subdir-objects
-# Need generic and non-generic rules.
-bin_PROGRAMS = baz bla
-bla_CFLAGS = $(AM_CFLAGS)
-EOF
-
-cat > foo.c <<'EOF'
-int main ()
-{
- return 0;
-}
-EOF
-cp foo.c bar.c
-cp foo.c sub/baz.c
-cp foo.c sub/bla.c
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-./configure am_cv_CC_dependencies_compiler_type=gcc --enable-silent-rules
-$MAKE >stdout || { cat stdout; exit 1; }
-cat stdout
-$EGREP ' (-c|-o)' stdout && exit 1
-grep 'mv ' stdout && exit 1
-grep 'CC .*foo\.' stdout
-grep 'CC .*bar\.' stdout
-grep 'CC .*baz\.' stdout
-grep 'CC .*bla\.' stdout
-grep 'CCLD .*foo' stdout
-grep 'CCLD .*bar' stdout
-grep 'CCLD .*baz' stdout
-grep 'CCLD .*bla' stdout
-
-$MAKE clean
-$MAKE V=1 >stdout || { cat stdout; exit 1; }
-cat stdout
-grep ' -c' stdout
-grep ' -o foo' stdout
-$EGREP '(CC|LD) ' stdout && exit 1
-
-:
diff --git a/t/silent3.sh b/t/silent3.sh
deleted file mode 100755
index e4c043a19..000000000
--- a/t/silent3.sh
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Check silent-rules mode, with libtool, standard depmode case.
-
-# Please keep this file in sync with 'silent4.sh' and 'silent9.sh'.
-
-required='cc libtoolize'
-. ./defs || exit 1
-
-mkdir sub
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_CONFIG_FILES([sub/Makefile])
-AC_PROG_CC
-AM_PROG_AR
-AM_PROG_CC_C_O
-AC_PROG_LIBTOOL
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-# Need generic and non-generic rules.
-lib_LTLIBRARIES = libfoo.la libbar.la
-libbar_la_CFLAGS = $(AM_CFLAGS)
-SUBDIRS = sub
-EOF
-
-cat > sub/Makefile.am <<'EOF'
-AUTOMAKE_OPTIONS = subdir-objects
-# Need generic and non-generic rules.
-lib_LTLIBRARIES = libbaz.la libbla.la
-libbla_la_CFLAGS = $(AM_CFLAGS)
-EOF
-
-cat > libfoo.c <<'EOF'
-int main ()
-{
- return 0;
-}
-EOF
-cp libfoo.c libbar.c
-cp libfoo.c sub/libbaz.c
-cp libfoo.c sub/libbla.c
-
-libtoolize
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-./configure --enable-silent-rules
-$MAKE >stdout || { cat stdout; exit 1; }
-cat stdout
-$EGREP ' (-c|-o)' stdout && exit 1
-grep 'mv ' stdout && exit 1
-grep ' CC .*foo\.' stdout
-grep ' CC .*bar\.' stdout
-grep ' CC .*baz\.' stdout
-grep ' CC .*bla\.' stdout
-grep ' CCLD .*foo' stdout
-grep ' CCLD .*bar' stdout
-grep ' CCLD .*baz' stdout
-grep ' CCLD .*bla' stdout
-
-$MAKE clean
-$MAKE V=1 >stdout || { cat stdout; exit 1; }
-cat stdout
-grep ' -c' stdout
-grep ' -o libfoo' stdout
-# The libtool command line can contain e.g. a '--tag=CC' option.
-sed 's/--tag=[^ ]*/--tag=x/g' stdout | $EGREP '(CC|LD) ' && exit 1
-
-:
diff --git a/t/silent4.sh b/t/silent4.sh
deleted file mode 100755
index 15568fd99..000000000
--- a/t/silent4.sh
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Check silent-rules mode, with libtool, non-fastdep case
-# (so that, with GCC, we also cover the other code paths in depend2).
-
-# Please keep this file in sync with 'silent3.sh' and 'silent9.sh'.
-
-required="libtoolize gcc"
-. ./defs || exit 1
-
-mkdir sub
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_CONFIG_FILES([sub/Makefile])
-AC_PROG_CC
-AM_PROG_AR
-AM_PROG_CC_C_O
-AC_PROG_LIBTOOL
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-# Need generic and non-generic rules.
-lib_LTLIBRARIES = libfoo.la libbar.la
-libbar_la_CFLAGS = $(AM_CFLAGS)
-SUBDIRS = sub
-EOF
-
-cat > sub/Makefile.am <<'EOF'
-AUTOMAKE_OPTIONS = subdir-objects
-# Need generic and non-generic rules.
-lib_LTLIBRARIES = libbaz.la libbla.la
-libbla_la_CFLAGS = $(AM_CFLAGS)
-EOF
-
-cat > libfoo.c <<'EOF'
-int main ()
-{
- return 0;
-}
-EOF
-cp libfoo.c libbar.c
-cp libfoo.c sub/libbaz.c
-cp libfoo.c sub/libbla.c
-
-libtoolize
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-./configure am_cv_CC_dependencies_compiler_type=gcc --enable-silent-rules
-$MAKE >stdout || { cat stdout; exit 1; }
-cat stdout
-$EGREP ' (-c|-o)' stdout && exit 1
-grep 'mv ' stdout && exit 1
-grep ' CC .*foo\.' stdout
-grep ' CC .*bar\.' stdout
-grep ' CC .*baz\.' stdout
-grep ' CC .*bla\.' stdout
-grep ' CCLD .*foo' stdout
-grep ' CCLD .*bar' stdout
-grep ' CCLD .*baz' stdout
-grep ' CCLD .*bla' stdout
-
-$MAKE clean
-$MAKE V=1 >stdout || { cat stdout; exit 1; }
-cat stdout
-grep ' -c' stdout
-grep ' -o libfoo' stdout
-# The libtool command line can contain e.g. a '--tag=CC' option.
-sed 's/--tag=[^ ]*/--tag=x/g' stdout | $EGREP '(CC|LD) ' && exit 1
-
-:
diff --git a/t/silent8.sh b/t/silent8.sh
deleted file mode 100755
index 76bf62c80..000000000
--- a/t/silent8.sh
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2009-2012 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/>.
-
-# Check texinfo rules in silent-rules mode.
-
-required='makeinfo-html tex texi2dvi-o dvips'
-. ./defs || exit 1
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-info_TEXINFOS = foo.texi
-EOF
-
-cat > foo.texi <<'EOF'
-\input texinfo
-@c %**start of header
-@setfilename foo.info
-@settitle foo manual
-@c %**end of header
-@bye
-EOF
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-./configure --disable-silent-rules
-
-# Make sure that all labels work in silent-mode.
-$MAKE V=0 dvi html info ps pdf >stdout || { cat stdout; exit 1; }
-cat stdout
-grep 'DVIPS foo.ps' stdout || exit 1
-grep 'MAKEINFO foo.html' stdout || exit 1
-# NetBSD make will print './foo.info' instead of 'foo.info'.
-grep 'MAKEINFO.*foo.info' stdout || exit 1
-grep 'TEXI2DVI foo.dvi' stdout || exit 1
-grep 'TEXI2PDF foo.pdf' stdout || exit 1
-
-# Now make sure the labels don't appear in verbose mode.
-$MAKE clean || exit 1
-$MAKE V=1 dvi html info ps pdf >stdout || { cat stdout; exit 1; }
-cat stdout
-grep 'DVIPS foo.ps' stdout && exit 1
-grep 'MAKEINFO foo.html' stdout && exit 1
-grep 'MAKEINFO.*foo.info' stdout && exit 1
-grep 'TEXI2DVI foo.dvi' stdout && exit 1
-grep 'TEXI2PDF foo.pdf' stdout && exit 1
-
-:
diff --git a/t/silentcxx-gcc.sh b/t/silentcxx-gcc.sh
deleted file mode 100755
index 1907e21d0..000000000
--- a/t/silentcxx-gcc.sh
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2010-2012 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/>.
-
-# Check silent-rules mode for C++.
-# This test requires the GNU C++ compiler; keep it in sync with sister
-# test 'silentcxx.sh', which should work with generic compilers.
-
-required=g++
-. ./defs || exit 1
-
-mkdir sub
-
-cat >>configure.ac <<'EOF'
-AM_SILENT_RULES
-AC_PROG_CXX
-AC_CONFIG_FILES([sub/Makefile])
-AC_OUTPUT
-EOF
-
-cat > Makefile.am <<'EOF'
-# Need generic and non-generic rules.
-bin_PROGRAMS = foo1 foo2
-foo1_SOURCES = foo.cpp baz.cxx quux.cc
-foo2_SOURCES = $(foo1_SOURCES)
-foo2_CXXFLAGS = $(AM_CXXFLAGS)
-SUBDIRS = sub
-EOF
-
-cat > sub/Makefile.am <<'EOF'
-AUTOMAKE_OPTIONS = subdir-objects
-# Need generic and non-generic rules.
-bin_PROGRAMS = bar1 bar2
-bar1_SOURCES = bar.cpp
-bar2_SOURCES = $(bar1_SOURCES)
-bar2_CXXFLAGS = $(AM_CXXFLAGS)
-EOF
-
-cat > foo.cpp <<'EOF'
-using namespace std; /* C compilers fail on this. */
-int main() { return 0; }
-EOF
-
-# Let's try out other extensions too.
-echo 'class Baz { public: int i; };' > baz.cxx
-echo 'class Quux { public: bool b; };' > quux.cc
-
-cp foo.cpp sub/bar.cpp
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-# Sanity check: make sure the cache variable we force is really used
-# by configure.
-$FGREP am_cv_CXX_dependencies_compiler_type configure
-
-# Force gcc ("fast") depmode.
-# This apparently useless "for" loop is here to simplify the syncing
-# with sister test 'silentcxx.sh'.
-for config_args in \
- am_cv_CXX_dependencies_compiler_type=gcc
-do
- ./configure $config_args --enable-silent-rules
- $MAKE >stdout || { cat stdout; exit 1; }
- cat stdout
-
- $EGREP ' (-c|-o)' stdout && exit 1
- grep 'mv ' stdout && exit 1
-
- grep 'CXX .*foo\.' stdout
- grep 'CXX .*baz\.' stdout
- grep 'CXX .*quux\.' stdout
- grep 'CXX .*bar\.' stdout
- grep 'CXXLD .*foo1' stdout
- grep 'CXXLD .*bar1' stdout
- grep 'CXXLD .*foo2' stdout
- grep 'CXXLD .*bar2' stdout
-
- # Ensure a clean rebuild.
- $MAKE clean
-
- $MAKE V=1 >stdout || { cat stdout; exit 1; }
- cat stdout
-
- grep ' -c ' stdout
- grep ' -o ' stdout
-
- $EGREP '(CC|CXX|LD) ' stdout && exit 1
-
- # Ensure a clean reconfiguration/rebuild.
- $MAKE clean
- $MAKE maintainer-clean
-
-done
-
-:
diff --git a/t/sourcefile-in-subdir.sh b/t/sourcefile-in-subdir.sh
index 831300e90..66fe9b798 100755
--- a/t/sourcefile-in-subdir.sh
+++ b/t/sourcefile-in-subdir.sh
@@ -16,7 +16,7 @@
# Test to make sure subdir source file generates explicit dependency.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = zardoz widdershins
diff --git a/t/space.sh b/t/space.sh
index 96bf9ba91..21cffd2ff 100755
--- a/t/space.sh
+++ b/t/space.sh
@@ -16,7 +16,7 @@
# Test leading space on macro assignment.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/specflg-dummy.sh b/t/specflg-dummy.sh
index 28d576cd4..e0611bc68 100755
--- a/t/specflg-dummy.sh
+++ b/t/specflg-dummy.sh
@@ -20,7 +20,7 @@
# even if AM_CFLAGS is undefined. Similarly for other *FLAGS variables
# (CXXFLAGS, YFLAGS, LDFLAGS, ...)
-. ./defs || exit 1
+. test-init.sh
# Disable shell globbing if possible.
(set +f) >/dev/null 2>&1 && set +f
diff --git a/t/specflg6.sh b/t/specflg6.sh
index 958e887bf..791d9f765 100755
--- a/t/specflg6.sh
+++ b/t/specflg6.sh
@@ -18,7 +18,7 @@
# conditionals are present.
# From Richard Boulton.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/specflg7.sh b/t/specflg7.sh
index 7261d1891..057204057 100755
--- a/t/specflg7.sh
+++ b/t/specflg7.sh
@@ -17,7 +17,7 @@
# The true/false example from the manual, plus a check for _SHORTNAME.
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/specflg8.sh b/t/specflg8.sh
index 598970ada..be7cf459d 100755
--- a/t/specflg8.sh
+++ b/t/specflg8.sh
@@ -19,7 +19,7 @@
# use of _CPPFLAGS (PR/337).
required='cc native'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/specflg9.sh b/t/specflg9.sh
index c8cde9e0f..429262944 100755
--- a/t/specflg9.sh
+++ b/t/specflg9.sh
@@ -16,7 +16,7 @@
# Another check for per-target flag substitutions.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/spell.sh b/t/spell.sh
index 18abba245..3bed9b186 100755
--- a/t/spell.sh
+++ b/t/spell.sh
@@ -16,7 +16,7 @@
# Test to make sure misspellings in _SOURCES variables cause failure.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = zardoz foo
diff --git a/t/spell2.sh b/t/spell2.sh
index c468b2b06..98550afe1 100755
--- a/t/spell2.sh
+++ b/t/spell2.sh
@@ -16,7 +16,7 @@
# Test to make sure misspellings in _SOURCES variables cause failure.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/spell3.sh b/t/spell3.sh
index c12703b9c..4d209302b 100755
--- a/t/spell3.sh
+++ b/t/spell3.sh
@@ -17,7 +17,7 @@
# Test to make sure some internal _DEPENDENCIES variables don't cause
# errors.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TAGS_DEPENDENCIES = joe
diff --git a/t/spelling.sh b/t/spelling.sh
index f6f99eb66..94cce097f 100755
--- a/t/spelling.sh
+++ b/t/spelling.sh
@@ -16,7 +16,7 @@
# Test to make sure that misspelled prefixes actually cause error.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'EOF'
bni_PROGRAMS = zot
diff --git a/t/spy-rm.tap b/t/spy-rm.tap
index f279745e8..0a2e51277 100755
--- a/t/spy-rm.tap
+++ b/t/spy-rm.tap
@@ -25,7 +25,7 @@
# <http://austingroupbugs.net/view.php?id=542>
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
plan_ 10
diff --git a/t/spy.sh b/t/spy.sh
index a23772d3c..641627a35 100755
--- a/t/spy.sh
+++ b/t/spy.sh
@@ -67,7 +67,7 @@
# So it seems only non-overlapping ::-rule may be portable. This is
# what we check now.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile <<\EOF
a :: b
diff --git a/t/src-acsubst.sh b/t/src-acsubst.sh
index 13531ac0a..5772cb214 100755
--- a/t/src-acsubst.sh
+++ b/t/src-acsubst.sh
@@ -16,7 +16,7 @@
# Test to make sure config substitution in _SOURCES fails.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >> configure.ac
diff --git a/t/stamph2.sh b/t/stamph2.sh
index a6f589517..7860e72b0 100755
--- a/t/stamph2.sh
+++ b/t/stamph2.sh
@@ -15,13 +15,12 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Make sure stamp-h* files are created where we expect
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << END
-AM_CONFIG_HEADER([1.h
- 2.h:config.hin
- 3.h:sdir1/config1.hin])
-# AM_CONFIG_HEADER and AC_CONFIG_HEADERS should be synonyms.
+AC_CONFIG_HEADERS([1.h
+ 2.h:config.hin
+ 3.h:sdir1/config1.hin])
AC_CONFIG_HEADERS([sdir1/4.h
sdir1/5.h:config.hin
sdir1/6.h:sdir1/config1.hin
diff --git a/t/stdinc.sh b/t/stdinc.sh
index d030e64c4..21c66b857 100755
--- a/t/stdinc.sh
+++ b/t/stdinc.sh
@@ -18,7 +18,7 @@
# Report by Kent Boortz.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/stdlib.sh b/t/stdlib.sh
index b3f458a90..59177fcae 100755
--- a/t/stdlib.sh
+++ b/t/stdlib.sh
@@ -16,7 +16,7 @@
# Test "not a standard library" error.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/stdlib2.sh b/t/stdlib2.sh
index 6cce9162d..f79353c3e 100755
--- a/t/stdlib2.sh
+++ b/t/stdlib2.sh
@@ -17,7 +17,7 @@
# Check for AM_LDFLAGS = -module
# Report from Kevin P. Fleming.
required=libtool
-. ./defs || exit 1
+. test-init.sh
: > README
: > NEWS
diff --git a/t/strictness-override.sh b/t/strictness-override.sh
index 27e44dd17..f3028dbb0 100755
--- a/t/strictness-override.sh
+++ b/t/strictness-override.sh
@@ -21,7 +21,7 @@
# been in place for quite a long time); see also Automake bug #7673.
# Update this test if the semantics are changed.
-. ./defs || exit 1
+. test-init.sh
# We want complete control over automake options.
AUTOMAKE=$am_original_AUTOMAKE
diff --git a/t/strictness-precedence.sh b/t/strictness-precedence.sh
index ab70ee3fd..d56cf5f22 100755
--- a/t/strictness-precedence.sh
+++ b/t/strictness-precedence.sh
@@ -18,7 +18,7 @@
# strictness specified later should take precedence over strictness
# specified earlier.
-. ./defs || exit 1
+. test-init.sh
# We want complete control over automake options.
AUTOMAKE=$am_original_AUTOMAKE
diff --git a/t/strip.sh b/t/strip.sh
index 6170627dc..338d5bb22 100755
--- a/t/strip.sh
+++ b/t/strip.sh
@@ -17,7 +17,7 @@
# Test for install-strip.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/strip2.sh b/t/strip2.sh
index 2397545d4..c18b517eb 100755
--- a/t/strip2.sh
+++ b/t/strip2.sh
@@ -18,7 +18,7 @@
# This test needs GNU binutils strip. See sister test 'strip3.sh'.
required='cc strip'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/strip3.sh b/t/strip3.sh
index 543449dba..5c3121fee 100755
--- a/t/strip3.sh
+++ b/t/strip3.sh
@@ -19,7 +19,7 @@
# test 'strip2.sh'.
required='cc libtoolize strip'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subdir-ac-subst.sh b/t/subdir-ac-subst.sh
index a8deb17a6..37f5899d3 100755
--- a/t/subdir-ac-subst.sh
+++ b/t/subdir-ac-subst.sh
@@ -18,7 +18,7 @@
# SUBDIRS + AC_SUBST setup from the manual.
# Lots of lines here are duplicated in 'subcond-am-cond.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
if test "$want_opt" = yes; then
diff --git a/t/subdir-add-pr46.sh b/t/subdir-add-pr46.sh
index 66ecfda7a..750ae800b 100755
--- a/t/subdir-add-pr46.sh
+++ b/t/subdir-add-pr46.sh
@@ -19,7 +19,7 @@
# test 'subdir-add2-pr46.sh' do it from a subdirectory.
# PR automake/46
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/subdir-add2-pr46.sh b/t/subdir-add2-pr46.sh
index 7fa51b919..bfe7e9c51 100755
--- a/t/subdir-add2-pr46.sh
+++ b/t/subdir-add2-pr46.sh
@@ -19,9 +19,10 @@
# it works when make is run from the top-level directory.
# PR automake/46
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
+AC_CONFIG_MACRO_DIR([m4])
m4_include([confiles.m4])
MORE_DEFS
AC_OUTPUT
@@ -31,7 +32,6 @@ echo 'AC_CONFIG_FILES([sub/Makefile])' > confiles.m4
cat > Makefile.am << 'END'
SUBDIRS = sub
-ACLOCAL_AMFLAGS = -I m4
END
mkdir sub
@@ -41,7 +41,7 @@ mkdir sub
mkdir m4
echo 'AC_DEFUN([MORE_DEFS], [])' > m4/moredefs.m4
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE
./configure
diff --git a/t/subdir-am-cond.sh b/t/subdir-am-cond.sh
index cb55ffb88..28868bf46 100755
--- a/t/subdir-am-cond.sh
+++ b/t/subdir-am-cond.sh
@@ -18,7 +18,7 @@
# SUBDIRS + AM_CONDITIONAL setup from the manual.
# Lots of lines here are duplicated in 'subdir-ac-subst.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_CONDITIONAL([COND_OPT], [test "$want_opt" = yes])
diff --git a/t/subdir-cond-err.sh b/t/subdir-cond-err.sh
index 4eba4f894..da0ab5697 100755
--- a/t/subdir-cond-err.sh
+++ b/t/subdir-cond-err.sh
@@ -16,7 +16,7 @@
# Check SUBDIRS set based on conditionals.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([TEST], [true])
diff --git a/t/subdir-cond-gettext.sh b/t/subdir-cond-gettext.sh
index f933f77db..4cc48e5ec 100755
--- a/t/subdir-cond-gettext.sh
+++ b/t/subdir-cond-gettext.sh
@@ -17,7 +17,7 @@
# It is ok to have a conditional SUBDIRS when using gettext.
required=gettext
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_GNU_GETTEXT
diff --git a/t/subdir-distclean.sh b/t/subdir-distclean.sh
index 25274fd23..4b005e861 100755
--- a/t/subdir-distclean.sh
+++ b/t/subdir-distclean.sh
@@ -17,7 +17,7 @@
# Check that "./configure && make && make distclean" is actually a
# no-op, even when conditional SUBDIRS are involved.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub1/Makefile sub2/Makefile sub1/subsub/Makefile])
diff --git a/t/subdir-env-interference.sh b/t/subdir-env-interference.sh
index 396aecc24..8c3dc58c4 100755
--- a/t/subdir-env-interference.sh
+++ b/t/subdir-env-interference.sh
@@ -16,7 +16,7 @@
# SUDBIRS with $fail set in the environment.
-. ./defs || exit 1
+. test-init.sh
mkdir sub
diff --git a/t/subdir-order.sh b/t/subdir-order.sh
index 0ce19d937..1b6ee9d21 100755
--- a/t/subdir-order.sh
+++ b/t/subdir-order.sh
@@ -16,7 +16,7 @@
# The $(SUDBIRS) entries are processed in the order they are specified.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([
diff --git a/t/subdir-subsub.sh b/t/subdir-subsub.sh
index b8389ddd7..6925ea74d 100755
--- a/t/subdir-subsub.sh
+++ b/t/subdir-subsub.sh
@@ -16,7 +16,7 @@
# Test to make sure sub-sub-dirs work correctly.
-. ./defs || exit 1
+. test-init.sh
mkdir one
mkdir one/two
diff --git a/t/subdir-with-slash.sh b/t/subdir-with-slash.sh
index 0a3330b88..106358973 100755
--- a/t/subdir-with-slash.sh
+++ b/t/subdir-with-slash.sh
@@ -16,7 +16,7 @@
# Test SUDBIRS with '/' in them.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([src/subdir/Makefile src/subdir2/Makefile])
diff --git a/t/subdir.sh b/t/subdir.sh
index 249481aa3..e8719997d 100755
--- a/t/subdir.sh
+++ b/t/subdir.sh
@@ -17,7 +17,7 @@
# Test to make sure install-sh and mkinstalldirs correctly found in
# subdirs.
-. ./defs || exit 1
+. test-init.sh
mkdir zot
diff --git a/t/subobj-clean-lt-pr10697.sh b/t/subobj-clean-lt-pr10697.sh
index 6cbc0214b..b02a6a4db 100755
--- a/t/subobj-clean-lt-pr10697.sh
+++ b/t/subobj-clean-lt-pr10697.sh
@@ -22,7 +22,7 @@
# 'subobj-clean-pr10697.sh', which deals with the non-libtool case.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_AR
diff --git a/t/subobj-clean-pr10697.sh b/t/subobj-clean-pr10697.sh
index e7be1c5cc..9fdc786f6 100755
--- a/t/subobj-clean-pr10697.sh
+++ b/t/subobj-clean-pr10697.sh
@@ -22,7 +22,7 @@
# 'subobj-clean-lt-pr10697.sh', which deals with the libtool case.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj.sh b/t/subobj.sh
index 7ac839b6a..19b13117b 100755
--- a/t/subobj.sh
+++ b/t/subobj.sh
@@ -16,7 +16,7 @@
# Test of subdir objects with C.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj10.sh b/t/subobj10.sh
index cefb0ab06..68f0e32b1 100755
--- a/t/subobj10.sh
+++ b/t/subobj10.sh
@@ -17,7 +17,7 @@
# PR 492: Test asm subdir-objects.
required=gcc
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/subobj11a.sh b/t/subobj11a.sh
index 25bdb93d1..4bd886303 100755
--- a/t/subobj11a.sh
+++ b/t/subobj11a.sh
@@ -27,7 +27,7 @@
# 'subobj11c.sh'.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj11b.sh b/t/subobj11b.sh
index 6d539c2c3..89f878b88 100755
--- a/t/subobj11b.sh
+++ b/t/subobj11b.sh
@@ -26,7 +26,7 @@
# See also "semantic" sister test 'subobj11a.sh', and related test
# 'subobj11c.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj11c.sh b/t/subobj11c.sh
index ce33e3086..20119e129 100755
--- a/t/subobj11c.sh
+++ b/t/subobj11c.sh
@@ -19,7 +19,7 @@
# included makefile fragments (containing dependency info).
# See also related tests 'subobj11a.sh' and 'subobj11b.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj2.sh b/t/subobj2.sh
index 646c6cf2c..d0b05fe3b 100755
--- a/t/subobj2.sh
+++ b/t/subobj2.sh
@@ -16,7 +16,7 @@
# Test of subdir objects with C++.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/subobj4.sh b/t/subobj4.sh
index 4399eefc0..4fb227ff8 100755
--- a/t/subobj4.sh
+++ b/t/subobj4.sh
@@ -17,7 +17,7 @@
# Make sure '../foo/foo.cpp' generates a rule.
# Report from Dave Brolley.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj5.sh b/t/subobj5.sh
index 6736cb1b9..b056374c4 100755
--- a/t/subobj5.sh
+++ b/t/subobj5.sh
@@ -18,7 +18,7 @@
# From Robert Collins.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([generic/Makefile])
diff --git a/t/subobj6.sh b/t/subobj6.sh
index cf265f761..67a0548c9 100755
--- a/t/subobj6.sh
+++ b/t/subobj6.sh
@@ -18,7 +18,7 @@
# From Robert Collins.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_CC_C_O
diff --git a/t/subobj7.sh b/t/subobj7.sh
index 1ce58aeca..4e95b4c1d 100755
--- a/t/subobj7.sh
+++ b/t/subobj7.sh
@@ -17,7 +17,7 @@
# Test to make sure AM_CFLAGS appears in subdir compilation rule.
# Report from Steve M. Robbins.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subobj8.sh b/t/subobj8.sh
index 58b1e41f3..fe0d0c888 100755
--- a/t/subobj8.sh
+++ b/t/subobj8.sh
@@ -16,7 +16,7 @@
# Make sure 'compile' is included when subdir-objects is used in a subdir.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/subobj9.sh b/t/subobj9.sh
index 2d8f8fbe2..69675760b 100755
--- a/t/subobj9.sh
+++ b/t/subobj9.sh
@@ -23,7 +23,7 @@
# forgets '.../<file>.o'.
required='c++ libtoolize'
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/subobjname.sh b/t/subobjname.sh
index 7601664d5..36cb4d62f 100755
--- a/t/subobjname.sh
+++ b/t/subobjname.sh
@@ -18,7 +18,7 @@
# combinational explosion. (This test is named after the &subobjname
# sub in Automake).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/subpkg-macrodir.sh b/t/subpkg-macrodir.sh
new file mode 100755
index 000000000..a16f42b64
--- /dev/null
+++ b/t/subpkg-macrodir.sh
@@ -0,0 +1,87 @@
+#! /bin/sh
+# Copyright (C) 2002-2012 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/>.
+
+# Subpackages that want to use m4 macros from their superpackages,
+# with AC_CONFIG_MACRO_DIRS.
+
+. test-init.sh
+
+cat > configure.ac <<'END'
+AC_INIT([super], [1.0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_SUBDIRS([pkg])
+AX_BAR
+AX_FOO
+END
+
+mkdir m4
+
+cat > m4/foo.m4 <<'EOF'
+AC_DEFUN([AX_FOO], [
+ AC_CONFIG_FILES([Makefile])
+ AC_OUTPUT
+])
+EOF
+
+cat > m4/bar.m4 <<'EOF'
+AC_DEFUN([AX_BAR], [AC_SUBST([WHOMAI], [SuperPkg])])
+EOF
+
+cat > Makefile.am << 'END'
+test-whomai:
+ test '$(WHOAMI)' = SuperPkg
+check-local: test
+.PHONY: test
+END
+
+mkdir pkg
+
+cat > pkg/configure.ac <<'END'
+AC_INIT([super], [1.0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_MACRO_DIRS([macros ../m4])
+AX_BAR
+AX_FOO
+END
+
+mkdir pkg/macros
+cat > pkg/macros/zardoz.m4 << 'END'
+AC_DEFUN([AX_BAR], [AC_SUBST([WHOMAI], [sub-pkg])])
+END
+
+cat > pkg/Makefile.am << 'END'
+test-whomai:
+ test '$(WHOAMI)' = sub-pkg
+check-local: test
+.PHONY: test
+END
+
+AUTOMAKE=$AUTOMAKE ACLOCAL=$ACLOCAL AUTOCONF=$AUTOCONF $AUTORECONF -vi
+
+$FGREP 'm4_include([m4/foo.m4])' aclocal.m4
+$FGREP 'm4_include([m4/bar.m4])' aclocal.m4
+$FGREP 'm4_include([../m4/foo.m4])' pkg/aclocal.m4
+$FGREP 'm4_include([macros/zardoz.m4])' pkg/aclocal.m4
+
+./configure
+
+$MAKE test
+(cd pkg && $MAKE test) || exit 1
+
+$MAKE distcheck
+
+:
diff --git a/t/subpkg-yacc.sh b/t/subpkg-yacc.sh
index 0ce1a7c23..f05396f74 100755
--- a/t/subpkg-yacc.sh
+++ b/t/subpkg-yacc.sh
@@ -18,7 +18,7 @@
# properly, when a subpackage is involved.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/subpkg.sh b/t/subpkg.sh
index c8ce125b6..69445350e 100755
--- a/t/subpkg.sh
+++ b/t/subpkg.sh
@@ -17,7 +17,7 @@
# Check subpackage handling.
required=cc
-. ./defs || exit 1
+. test-init.sh
mkdir m4
@@ -29,6 +29,7 @@ AC_DEFUN([FOO],[
EOF
cat >>configure.ac <<'END'
+AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SUBDIRS([lib])
FOO
END
@@ -46,8 +47,6 @@ distdir = subpack-1
dist-hook:
test -f $(distdir)/LDADD.c
test -f $(top_distdir)/LDADD.c
-
-ACLOCAL_AMFLAGS = -I m4
EOF
cat >LDADD.c <<'EOF'
@@ -64,6 +63,7 @@ mkdir lib/src
cat >lib/configure.ac <<'EOF'
AC_INIT([lib], [2.3])
AM_INIT_AUTOMAKE
+AC_CONFIG_MACRO_DIR([../m4])
AM_PROG_AR
AC_PROG_RANLIB
AC_CONFIG_HEADERS([config.h:config.hin])
@@ -80,8 +80,6 @@ dist-hook:
test -f $(top_distdir)/LDADD.c
test -f $(distdir)/src/x.c
test ! -f $(top_distdir)/src/x.c
-
-ACLOCAL_AMFLAGS = -I ../m4
EOF
cat >lib/src/x.c <<'EOF'
@@ -92,12 +90,12 @@ int lib (void)
}
EOF
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE -Wno-override
cd lib
-$ACLOCAL -I ../m4
+$ACLOCAL
$FGREP 'm4_include([../m4/foo.m4])' aclocal.m4
$AUTOCONF
$AUTOHEADER
diff --git a/t/subpkg2.sh b/t/subpkg2.sh
index 8afcc5af9..2914fdcbf 100755
--- a/t/subpkg2.sh
+++ b/t/subpkg2.sh
@@ -17,7 +17,7 @@
# Try a DIST_SUBDIRS subpackage with no SUBDIRS.
# Report from Gary V. Vaughan.
-. ./defs || exit 1
+. test-init.sh
mkdir m4
@@ -28,6 +28,7 @@ AC_DEFUN([FOO],[
EOF
cat >>configure.ac <<'END'
+AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SUBDIRS([sub])
AC_OUTPUT
END
@@ -43,20 +44,21 @@ mkdir sub
cat >sub/configure.ac <<'EOF'
AC_INIT([sub], [2.3])
AM_INIT_AUTOMAKE
+AC_CONFIG_MACRO_DIR([../m4])
AC_CONFIG_FILES([Makefile])
AC_CONFIG_FILES([script])
FOO
EOF
: >sub/script.in
-echo ACLOCAL_AMFLAGS = -I ../m4 > sub/Makefile.am
+: >sub/Makefile.am
-$ACLOCAL -I m4
+$ACLOCAL
$AUTOCONF
$AUTOMAKE
cd sub
-$ACLOCAL -I ../m4
+$ACLOCAL
$FGREP 'm4_include([../m4/foo.m4])' aclocal.m4
$AUTOCONF
$AUTOMAKE -Wno-override
@@ -64,3 +66,5 @@ cd ..
./configure
$MAKE distcheck
+
+:
diff --git a/t/subpkg3.sh b/t/subpkg3.sh
index 6ebc4bd23..5f89b91d8 100755
--- a/t/subpkg3.sh
+++ b/t/subpkg3.sh
@@ -16,7 +16,7 @@
# Make sure different subpackages may share files and directories.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am <<'END'
SUBDIRS = subpkg
diff --git a/t/subpkg4.sh b/t/subpkg4.sh
index 97f452c61..d4ac46d14 100755
--- a/t/subpkg4.sh
+++ b/t/subpkg4.sh
@@ -17,7 +17,7 @@
# Test to ensure 'distdir' fixes the mode of files and directories
# copied into '$(distdir)', even with sub-packages.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am <<'END'
SUBDIRS = subpkg
diff --git a/t/subst-no-trailing-empty-line.sh b/t/subst-no-trailing-empty-line.sh
index 388f29732..f9a9c5bad 100755
--- a/t/subst-no-trailing-empty-line.sh
+++ b/t/subst-no-trailing-empty-line.sh
@@ -21,7 +21,7 @@
# These checks have been introduced in commit 'Release-1-9-254-g9d0eaef'
# into the former test 'subst2.test'.
-. ./defs || exit 1
+. test-init.sh
# These are deliberately quite long, so that the xxx_PROGRAMS definition
# in Makefile.am below will be split on multiple lines, with the last
diff --git a/t/subst.sh b/t/subst.sh
index db83d7334..a6010e471 100755
--- a/t/subst.sh
+++ b/t/subst.sh
@@ -17,7 +17,7 @@
# Test that AC_SUBST($1) does something sensible. From Ulrich
# Drepper.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
dnl This test used to have the following lines, which cannot have
diff --git a/t/subst3.sh b/t/subst3.sh
index 18c17e2e2..475027bce 100755
--- a/t/subst3.sh
+++ b/t/subst3.sh
@@ -18,7 +18,7 @@
# 'nobase.sh'.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AC_PROG_CC
diff --git a/t/subst4.sh b/t/subst4.sh
index 739b3689c..91066e846 100755
--- a/t/subst4.sh
+++ b/t/subst4.sh
@@ -16,7 +16,7 @@
# Test AM_SUBST_NOTMAKE.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
myrule="\
diff --git a/t/subst5.sh b/t/subst5.sh
index f44b8516a..636d188a7 100755
--- a/t/subst5.sh
+++ b/t/subst5.sh
@@ -19,7 +19,7 @@
# Thus, we allow substitutions in bin_PROGRAMS, but then EXTRA_PROGRAMS
# needs to list possible values of that substitution, literally.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/substre2.sh b/t/substre2.sh
index 06fcdf1dc..dd23e00a9 100755
--- a/t/substre2.sh
+++ b/t/substre2.sh
@@ -17,7 +17,7 @@
# Test for bug in variable substitution references, where
# undefined variables break later substitutions.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([CC], [whocares])
diff --git a/t/substref.sh b/t/substref.sh
index 4ea39e602..81aa175e4 100755
--- a/t/substref.sh
+++ b/t/substref.sh
@@ -18,7 +18,7 @@
# pattern is null.
# Report from Richard Boulton.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([CC], [whocares])
diff --git a/t/substtarg.sh b/t/substtarg.sh
index 757885c14..75e19fb8a 100755
--- a/t/substtarg.sh
+++ b/t/substtarg.sh
@@ -17,7 +17,7 @@
# Test that substitutions in variables work.
# From Lars J. Aas.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_SOURCE([fakelib.c])
diff --git a/t/suffix-chain.tap b/t/suffix-chain.tap
index 535e36e86..20656db65 100755
--- a/t/suffix-chain.tap
+++ b/t/suffix-chain.tap
@@ -19,7 +19,7 @@
# See automake bug#7824 and bug#7670.
required=cc
-. ./defs || exit 1
+. test-init.sh
plan_ 8
diff --git a/t/suffix-custom-subobj-and-specflg.sh b/t/suffix-custom-subobj-and-specflg.sh
index bcdbc9a0b..15aa56aa9 100755
--- a/t/suffix-custom-subobj-and-specflg.sh
+++ b/t/suffix-custom-subobj-and-specflg.sh
@@ -19,7 +19,7 @@
# Reported by Florian Briegel.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CC
diff --git a/t/suffix-custom-subobj.sh b/t/suffix-custom-subobj.sh
index 22ec98520..ae49151a6 100755
--- a/t/suffix-custom-subobj.sh
+++ b/t/suffix-custom-subobj.sh
@@ -18,7 +18,7 @@
# Reported by John Ratliff.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<EOF
AC_PROG_CC
diff --git a/t/suffix.sh b/t/suffix.sh
index cf7ea1050..64100df1a 100755
--- a/t/suffix.sh
+++ b/t/suffix.sh
@@ -18,7 +18,7 @@
# only once.
# See also related test 'suffix2.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/suffix10.tap b/t/suffix10.tap
index 7e19e0405..1f83590eb 100755
--- a/t/suffix10.tap
+++ b/t/suffix10.tap
@@ -18,7 +18,7 @@
# (related to PR/37)
required='cc libtoolize yacc'
-. ./defs || exit 1
+. test-init.sh
plan_ 7
diff --git a/t/suffix11.tap b/t/suffix11.tap
index 26694ebdc..61fbb51cc 100755
--- a/t/suffix11.tap
+++ b/t/suffix11.tap
@@ -19,7 +19,7 @@
# We also check for suffixes containing '-'.
required=cc
-. ./defs || exit 1
+. test-init.sh
plan_ 10
diff --git a/t/suffix2.sh b/t/suffix2.sh
index 1cee87534..9fc8f2b58 100755
--- a/t/suffix2.sh
+++ b/t/suffix2.sh
@@ -19,7 +19,7 @@
# See also related test 'suffix.sh'.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/suffix3.tap b/t/suffix3.tap
index 15c562d97..166788b02 100755
--- a/t/suffix3.tap
+++ b/t/suffix3.tap
@@ -17,7 +17,7 @@
# Test to make sure that suffix rules chain.
required=c++
-. ./defs || exit 1
+. test-init.sh
plan_ 10
diff --git a/t/suffix4.sh b/t/suffix4.sh
index 2defd0884..4756e7b6a 100755
--- a/t/suffix4.sh
+++ b/t/suffix4.sh
@@ -20,7 +20,7 @@
# Also make sure that .SUFFIXES is automatically adjusted with
# extensions from implicit rules.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
.k.o:
diff --git a/t/suffix5.sh b/t/suffix5.sh
index fec51e929..d8c43ea88 100755
--- a/t/suffix5.sh
+++ b/t/suffix5.sh
@@ -19,7 +19,7 @@
# Based on a report from Arkadiusz Miskiewicz <misiek@pld.ORG.PL>.
required='cc libtool'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_SUBST([LINK], [:])
diff --git a/t/suffix6.sh b/t/suffix6.sh
index 4b3dee20d..23cd5f051 100755
--- a/t/suffix6.sh
+++ b/t/suffix6.sh
@@ -19,7 +19,7 @@
# '.$(OBJEXT)'. See also related "semantic" tests 'suffix6b.sh'
# and 'suffix6c.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUFFIXES = a b .$(OBJEXT) c .o .obj
diff --git a/t/suffix6b.sh b/t/suffix6b.sh
index cfd166215..f5504dce3 100755
--- a/t/suffix6b.sh
+++ b/t/suffix6b.sh
@@ -18,7 +18,7 @@
# extensions. Se also related "grepping" test 'suffix6.sh'.
required=GNUmake # Other makes might not grok dot-less suffix rules.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
# $(LINK) is not defined automatically by Automake, since the *_SOURCES
diff --git a/t/suffix6c.sh b/t/suffix6c.sh
index f688ef779..ae3399fa8 100755
--- a/t/suffix6c.sh
+++ b/t/suffix6c.sh
@@ -17,7 +17,7 @@
# Test to make sure that '.o' and '.obj' are handled like '.$(OBJEXT)'.
# See also related "grepping" test 'suffix6.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
# $(LINK) is not defined automatically by Automake, since the *_SOURCES
diff --git a/t/suffix7.sh b/t/suffix7.sh
index 30a18c0d7..253a65260 100755
--- a/t/suffix7.sh
+++ b/t/suffix7.sh
@@ -17,7 +17,7 @@
# Test to make sure Automake supports implicit rules "confusing"
# extensions. Inspired by a mail from Alex Hornby.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUFFIXES = .idl S.cpp C.h
diff --git a/t/suffix8.tap b/t/suffix8.tap
index 516c9b227..f61a6b094 100755
--- a/t/suffix8.tap
+++ b/t/suffix8.tap
@@ -19,7 +19,7 @@
# From PR/37.
required='cc libtoolize'
-. ./defs || exit 1
+. test-init.sh
plan_ 10
diff --git a/t/suffix9.sh b/t/suffix9.sh
index a0135daba..043b9ad0a 100755
--- a/t/suffix9.sh
+++ b/t/suffix9.sh
@@ -17,7 +17,7 @@
# Make sure that Automake choose the shorter route between suffixes
# (related to PR/37)
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac << 'END'
AC_PROG_CC
diff --git a/t/symlink.sh b/t/symlink.sh
index ad7de70c0..a4c744988 100755
--- a/t/symlink.sh
+++ b/t/symlink.sh
@@ -18,7 +18,7 @@
# Reported by Joerg-Martin Schwarz.
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/symlink2.sh b/t/symlink2.sh
index f1f9dc5a9..fe7d2fa1d 100755
--- a/t/symlink2.sh
+++ b/t/symlink2.sh
@@ -16,7 +16,7 @@
# Test to make sure that 'automake -a' redirects dangling symlinks.
-. ./defs || exit 1
+. test-init.sh
rm -f install-sh
ln -s Zardoz install-sh || skip_ "cannot create broken symlinks"
diff --git a/t/syntax.sh b/t/syntax.sh
index e2404ba6f..96cc8b334 100755
--- a/t/syntax.sh
+++ b/t/syntax.sh
@@ -16,7 +16,7 @@
# Test for error for bad syntax.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
foo = q \
diff --git a/t/tags-pr12372.sh b/t/tags-pr12372.sh
index 66b40a096..e232d5fe4 100755
--- a/t/tags-pr12372.sh
+++ b/t/tags-pr12372.sh
@@ -18,7 +18,7 @@
# extensions. See automake bug#12372.
required='cc etags'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/tags.sh b/t/tags.sh
index 8f38e6be8..deeea16be 100755
--- a/t/tags.sh
+++ b/t/tags.sh
@@ -17,7 +17,7 @@
# Test for bug reported by Harlan Stenn: the tags target doesn't work
# when there are only headers in a directory.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
noinst_HEADERS = iguana.h
diff --git a/t/tags2.sh b/t/tags2.sh
index 521d2ef2b..a8d3486cf 100755
--- a/t/tags2.sh
+++ b/t/tags2.sh
@@ -17,7 +17,7 @@
# TAGS_DEPENDENCIES only make sense if other tag-worthy things (such as
# sources) exist.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/tagsub.sh b/t/tagsub.sh
index 9103805b3..fab0c30f0 100755
--- a/t/tagsub.sh
+++ b/t/tagsub.sh
@@ -18,7 +18,7 @@
# François Pinard, and later by Akim Demaille.
required=etags
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/tap-ambiguous-directive.sh b/t/tap-ambiguous-directive.sh
index 63544e3cb..9c8b03fc0 100755
--- a/t/tap-ambiguous-directive.sh
+++ b/t/tap-ambiguous-directive.sh
@@ -18,7 +18,7 @@
# - handling of "ambiguous" TODO and SKIP directives
# See also related test 'tap-todo-skip-together.sh'.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-autonumber.sh b/t/tap-autonumber.sh
index 876245ee8..450a3815e 100755
--- a/t/tap-autonumber.sh
+++ b/t/tap-autonumber.sh
@@ -20,7 +20,7 @@
# - test results without number get automatically numbered in the
# console progress output
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-bad-prog.tap b/t/tap-bad-prog.tap
index 09b2c7429..e37f18c17 100755
--- a/t/tap-bad-prog.tap
+++ b/t/tap-bad-prog.tap
@@ -18,7 +18,7 @@
# - missing, unreadable, or not-executable test scripts cause proper
# error reports
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-bailout-and-logging.sh b/t/tap-bailout-and-logging.sh
index f87ccb361..33fab0dcc 100755
--- a/t/tap-bailout-and-logging.sh
+++ b/t/tap-bailout-and-logging.sh
@@ -18,7 +18,7 @@
# - even after a "Bail out!" directive, all input is still copied in
# the log file
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-bailout-leading-space.sh b/t/tap-bailout-leading-space.sh
index dfbadba10..54985bae0 100755
--- a/t/tap-bailout-leading-space.sh
+++ b/t/tap-bailout-leading-space.sh
@@ -21,7 +21,7 @@
# "more modern" behaviour in our awk TAP driver.
am_tap_implementation=shell
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-bailout-suppress-badexit.sh b/t/tap-bailout-suppress-badexit.sh
index 7cd5458b7..e9bf2a15d 100755
--- a/t/tap-bailout-suppress-badexit.sh
+++ b/t/tap-bailout-suppress-badexit.sh
@@ -18,7 +18,7 @@
# - A "Bail out!" directive causes the driver to ignore the exit
# status of the test script.
-. ./defs || exit 1
+. test-init.sh
tests='exit.test exit127.test sighup.test sigterm.test'
diff --git a/t/tap-bailout-suppress-later-diagnostic.sh b/t/tap-bailout-suppress-later-diagnostic.sh
index 54e21fdc4..72a0512ae 100755
--- a/t/tap-bailout-suppress-later-diagnostic.sh
+++ b/t/tap-bailout-suppress-later-diagnostic.sh
@@ -18,7 +18,7 @@
# - A "Bail out!" directive causes the driver to ignore any TAP
# diagnostic message in the rest of the following TAP stream.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-bailout-suppress-later-errors.sh b/t/tap-bailout-suppress-later-errors.sh
index bd90f8dbd..fffc21dc5 100755
--- a/t/tap-bailout-suppress-later-errors.sh
+++ b/t/tap-bailout-suppress-later-errors.sh
@@ -18,7 +18,7 @@
# - A "Bail out!" directive causes the driver to ignore any TAP
# result or error in the rest of the following TAP stream.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-bailout.sh b/t/tap-bailout.sh
index 08f12fdf0..0cc3434f7 100755
--- a/t/tap-bailout.sh
+++ b/t/tap-bailout.sh
@@ -17,7 +17,7 @@
# Basic TAP test protocol support:
# - "Bail out!" magic
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-basic.sh b/t/tap-basic.sh
index 4781ce5ac..31f330eb2 100755
--- a/t/tap-basic.sh
+++ b/t/tap-basic.sh
@@ -24,7 +24,7 @@
# Note that some of the features checked here are checked in other
# test cases too, usually in a more thorough and detailed way.
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-color.sh b/t/tap-color.sh
index a3fab2f94..1e8362371 100755
--- a/t/tap-color.sh
+++ b/t/tap-color.sh
@@ -18,7 +18,7 @@
# - colorization of TAP results and diagnostic messages
required='grep-nonprint'
-. ./defs || exit 1
+. test-init.sh
# Escape '[' for grep, below.
red="$esc\[0;31m"
diff --git a/t/tap-common-setup.sh b/t/tap-common-setup.sh
index 6bf168e1a..63af43caf 100755
--- a/t/tap-common-setup.sh
+++ b/t/tap-common-setup.sh
@@ -16,7 +16,7 @@
# Auxiliary test to set up common data used by many tests on TAP support.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << END
AC_OUTPUT
diff --git a/t/tap-deps.sh b/t/tap-deps.sh
index 8e84a63bc..535c58d48 100755
--- a/t/tap-deps.sh
+++ b/t/tap-deps.sh
@@ -17,7 +17,7 @@
# Basic TAP test protocol support:
# - dependencies between test scripts
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
# The tests are *deliberately* listed in inversed order here.
diff --git a/t/tap-diagnostic-custom.sh b/t/tap-diagnostic-custom.sh
index 7c29aa9cc..511ed8b9e 100755
--- a/t/tap-diagnostic-custom.sh
+++ b/t/tap-diagnostic-custom.sh
@@ -18,7 +18,7 @@
# - option '--diagnostic-string' to customize the string introducing
# TAP diagnostics
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-diagnostic.sh b/t/tap-diagnostic.sh
index fc00af969..9cadc8634 100755
--- a/t/tap-diagnostic.sh
+++ b/t/tap-diagnostic.sh
@@ -18,7 +18,7 @@
# - diagnostic messages (TAP lines with leading "#")
# - flags '--comments' and '--no-comments' of the TAP test driver
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-doc.sh b/t/tap-doc.sh
index 69c56f00c..b858ec9ab 100755
--- a/t/tap-doc.sh
+++ b/t/tap-doc.sh
@@ -17,7 +17,7 @@
# Check that an example given in the documentation really works.
# See section "Simple Tests" subsection "Script-based Testsuites".
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-doc2.sh b/t/tap-doc2.sh
index f874ff853..78b88f668 100755
--- a/t/tap-doc2.sh
+++ b/t/tap-doc2.sh
@@ -19,7 +19,7 @@
# with the Automake test harness".
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am <<'END'
TEST_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
@@ -31,7 +31,7 @@ END
cat > configure.ac <<'END'
AC_INIT([GNU Try Tap], [1.0], [bug-automake@gnu.org])
AC_CONFIG_AUX_DIR([build-aux])
-AM_INIT_AUTOMAKE([foreign parallel-tests -Wall -Werror])
+AM_INIT_AUTOMAKE([foreign -Wall -Werror])
AC_CONFIG_FILES([Makefile])
AC_REQUIRE_AUX_FILE([tap-driver.sh])
AC_PROG_AWK
diff --git a/t/tap-driver-stderr.sh b/t/tap-driver-stderr.sh
index b1d9227bf..909769a32 100755
--- a/t/tap-driver-stderr.sh
+++ b/t/tap-driver-stderr.sh
@@ -19,7 +19,7 @@
required=non-root
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-empty-diagnostic.sh b/t/tap-empty-diagnostic.sh
index ae0deef3c..e0e596749 100755
--- a/t/tap-empty-diagnostic.sh
+++ b/t/tap-empty-diagnostic.sh
@@ -17,7 +17,7 @@
# TAP support:
# - empty diagnostic messages are discarder
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-empty.sh b/t/tap-empty.sh
index e3d400c57..a4c8e734c 100755
--- a/t/tap-empty.sh
+++ b/t/tap-empty.sh
@@ -18,7 +18,7 @@
# - empty TAP input
# - blank TAP input
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-escape-directive-2.sh b/t/tap-escape-directive-2.sh
index 49c63981c..4e476fa3a 100755
--- a/t/tap-escape-directive-2.sh
+++ b/t/tap-escape-directive-2.sh
@@ -17,7 +17,7 @@
# TAP support:
# - "escape" TODO and SKIP directives (by escaping the "#" character)
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-escape-directive.sh b/t/tap-escape-directive.sh
index 9b59c3d8b..b6358142b 100755
--- a/t/tap-escape-directive.sh
+++ b/t/tap-escape-directive.sh
@@ -17,7 +17,7 @@
# TAP support:
# - "escape" TODO and SKIP directives (by escaping the "#" character)
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-exit.sh b/t/tap-exit.sh
index c9a9823b9..3c51cc3be 100755
--- a/t/tap-exit.sh
+++ b/t/tap-exit.sh
@@ -19,7 +19,7 @@
# - the '--ignore-exit' option causes the TAP test driver to ignore
# exit statuses of the test scripts.
-. ./defs || exit 1
+. test-init.sh
echo TESTS = > Makefile.am
for st in 1 2 77 99; do
diff --git a/t/tap-fancy.sh b/t/tap-fancy.sh
index c59d0c1e5..587b0ae1d 100755
--- a/t/tap-fancy.sh
+++ b/t/tap-fancy.sh
@@ -17,7 +17,7 @@
# TAP support: some unusual forms for valid TAP input.
# See also related test 'tap-fancy2.sh'.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-fancy2.sh b/t/tap-fancy2.sh
index 1a3ab024f..aaa4fbc33 100755
--- a/t/tap-fancy2.sh
+++ b/t/tap-fancy2.sh
@@ -17,7 +17,7 @@
# TAP support: more unusual forms for valid TAP input.
# See also related test 'tap-fancy.sh'.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-global-log.sh b/t/tap-global-log.sh
index 31e1ccb4f..2ebad94fa 100755
--- a/t/tap-global-log.sh
+++ b/t/tap-global-log.sh
@@ -17,7 +17,7 @@
# TAP support:
# - which log files get copied in the global log?
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-global-result.sh b/t/tap-global-result.sh
index 528c7bb5e..2c272594a 100755
--- a/t/tap-global-result.sh
+++ b/t/tap-global-result.sh
@@ -18,7 +18,7 @@
# - which global test result derives from different test results
# mixed in a single script?
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-log.sh b/t/tap-log.sh
index b9d360301..c679d4fea 100755
--- a/t/tap-log.sh
+++ b/t/tap-log.sh
@@ -22,7 +22,7 @@
# - VERBOSE environment variable support
# Keep in sync with 'test-log.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TESTS = pass.test skip.test xfail.test fail.test xpass.test error.test
diff --git a/t/tap-merge-stdout-stderr.sh b/t/tap-merge-stdout-stderr.sh
index b13d41d7f..37167c612 100755
--- a/t/tap-merge-stdout-stderr.sh
+++ b/t/tap-merge-stdout-stderr.sh
@@ -18,7 +18,7 @@
# - The Automake TAP driver has an option that instruct it to read TAP
# input also from the stderr of the test command, not only its stdout.
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-missing-plan-and-bad-exit.sh b/t/tap-missing-plan-and-bad-exit.sh
index 06a6f8880..c49852a50 100755
--- a/t/tap-missing-plan-and-bad-exit.sh
+++ b/t/tap-missing-plan-and-bad-exit.sh
@@ -19,7 +19,7 @@
# plan, then the driver reports both "missing plan" and "exited with
# non-zero status" errors.
-. ./defs || exit 1
+. test-init.sh
cat > foo.test <<END
#!/bin/sh
diff --git a/t/tap-more.sh b/t/tap-more.sh
index 1556d7066..f330d150c 100755
--- a/t/tap-more.sh
+++ b/t/tap-more.sh
@@ -24,7 +24,7 @@
# correct test script(s)
# - "make distcheck" works
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-more2.sh b/t/tap-more2.sh
index bb06248a7..b4d8d5086 100755
--- a/t/tap-more2.sh
+++ b/t/tap-more2.sh
@@ -20,7 +20,7 @@
# - interactions with 'check_*' variables
required='cc native'
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-msg0-bailout.sh b/t/tap-msg0-bailout.sh
index bdda865a0..4fab88305 100755
--- a/t/tap-msg0-bailout.sh
+++ b/t/tap-msg0-bailout.sh
@@ -19,7 +19,7 @@
# of a "plan with skip" TAP plan
# generally true!
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-msg0-directive.sh b/t/tap-msg0-directive.sh
index 9be3816d0..dd9735918 100755
--- a/t/tap-msg0-directive.sh
+++ b/t/tap-msg0-directive.sh
@@ -17,7 +17,7 @@
# TAP support:
# - literal string "0" as a TODO or SKIP message
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-msg0-misc.sh b/t/tap-msg0-misc.sh
index d7751d7d2..1d5c56860 100755
--- a/t/tap-msg0-misc.sh
+++ b/t/tap-msg0-misc.sh
@@ -18,7 +18,7 @@
# - literal "0" and "0.0" in a test description and a TODO/SKIP message
# at the same time
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-msg0-planskip.sh b/t/tap-msg0-planskip.sh
index 24e569c1f..72f37b7f2 100755
--- a/t/tap-msg0-planskip.sh
+++ b/t/tap-msg0-planskip.sh
@@ -18,7 +18,7 @@
# - literal strings "0" and "0.0" as the reason of the skip in a "TAP
# plan with skip" (i.e., "1..0 # SKIP ...").
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-msg0-result.sh b/t/tap-msg0-result.sh
index f55b0559e..23bcdfbdc 100755
--- a/t/tap-msg0-result.sh
+++ b/t/tap-msg0-result.sh
@@ -17,7 +17,7 @@
# TAP support:
# - the string "0" as a test description
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-negative-numbers.sh b/t/tap-negative-numbers.sh
index fbf54be53..b7b2d72d8 100755
--- a/t/tap-negative-numbers.sh
+++ b/t/tap-negative-numbers.sh
@@ -18,7 +18,7 @@
# - don't spuriously recognize negative TAP result numbers, but correctly
# interpret them as test descriptions instead
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-no-disable-hard-error.sh b/t/tap-no-disable-hard-error.sh
index dc4cad34a..2dc881e6f 100755
--- a/t/tap-no-disable-hard-error.sh
+++ b/t/tap-no-disable-hard-error.sh
@@ -18,7 +18,7 @@
# - "Bail out!" magic and TAP parse errors are not disabled nor turned
# into simple failures by the definition DISABLE_HARD_ERRORS.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
DISABLE_HARD_ERRORS = yes
diff --git a/t/tap-no-merge-stdout-stderr.sh b/t/tap-no-merge-stdout-stderr.sh
index f1013156b..6be67a7e2 100755
--- a/t/tap-no-merge-stdout-stderr.sh
+++ b/t/tap-no-merge-stdout-stderr.sh
@@ -18,7 +18,7 @@
# - By default, TAP input is only from the stdout (and not the stderr)
# of the test command.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TEST_LOG_DRIVER_FLAGS = --comments
diff --git a/t/tap-no-spurious-numbers.sh b/t/tap-no-spurious-numbers.sh
index 81104afbc..1f5e1b771 100755
--- a/t/tap-no-spurious-numbers.sh
+++ b/t/tap-no-spurious-numbers.sh
@@ -18,7 +18,7 @@
# - we shouldn't spuriously recognize as TAP result numbers what it
# not, even if it seems pretty close
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-no-spurious-summary.sh b/t/tap-no-spurious-summary.sh
index 13c577c7a..1c420a092 100755
--- a/t/tap-no-spurious-summary.sh
+++ b/t/tap-no-spurious-summary.sh
@@ -18,7 +18,7 @@
# - ':test-results:' directives in test scripts' output doesn't
# originate spurious results in the testsuite summary
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-no-spurious.sh b/t/tap-no-spurious.sh
index d8bf5eefe..d40dd4102 100755
--- a/t/tap-no-spurious.sh
+++ b/t/tap-no-spurious.sh
@@ -18,7 +18,7 @@
# - don't spuriously recognize lines that are "almost" TAP lines as
# real TAP lines
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-not-ok-skip.sh b/t/tap-not-ok-skip.sh
index bbb9a032a..4fb0511ff 100755
--- a/t/tap-not-ok-skip.sh
+++ b/t/tap-not-ok-skip.sh
@@ -18,7 +18,7 @@
# - a "not ok # SKIP" line should count as a failure, for consistency
# with the prove(1) utility.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-number-wordboundary.sh b/t/tap-number-wordboundary.sh
index 2d15121c3..5cc3fa448 100755
--- a/t/tap-number-wordboundary.sh
+++ b/t/tap-number-wordboundary.sh
@@ -18,7 +18,7 @@
# - TAP result numbers terminated by a non-whitespace "word boundary"
# character are recognized
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-numbers-leading-zero.sh b/t/tap-numbers-leading-zero.sh
index 620addfb5..af306880f 100755
--- a/t/tap-numbers-leading-zero.sh
+++ b/t/tap-numbers-leading-zero.sh
@@ -17,7 +17,7 @@
# TAP support:
# - how does TAP result numbers with leading zero fares?
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-numeric-description.sh b/t/tap-numeric-description.sh
index 61bc25241..080aae910 100755
--- a/t/tap-numeric-description.sh
+++ b/t/tap-numeric-description.sh
@@ -16,7 +16,7 @@
# TAP result lines whose description is a number.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-out-of-order.sh b/t/tap-out-of-order.sh
index ff0e80614..d08fd90d4 100755
--- a/t/tap-out-of-order.sh
+++ b/t/tap-out-of-order.sh
@@ -17,7 +17,7 @@
# TAP support:
# - out-of-order test results
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-passthrough-exit.sh b/t/tap-passthrough-exit.sh
index 33287be90..9ba399bc8 100755
--- a/t/tap-passthrough-exit.sh
+++ b/t/tap-passthrough-exit.sh
@@ -19,7 +19,7 @@
# log file
# See also related test 'tap-passthrough.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TEST_LOG_COMPILER = $(SHELL)
diff --git a/t/tap-passthrough.sh b/t/tap-passthrough.sh
index 981c42852..f3055c304 100755
--- a/t/tap-passthrough.sh
+++ b/t/tap-passthrough.sh
@@ -20,7 +20,7 @@
# - TAP errors are reported in the log file too
# See also related test 'tap-passthrough-exit.sh'.
-. ./defs || exit 1
+. test-init.sh
weirdchars=\''"\$@!&()[]<>#;,:.^?*/'
diff --git a/t/tap-plan-corner.sh b/t/tap-plan-corner.sh
index 8fc0c7e0f..fc9b1a255 100755
--- a/t/tap-plan-corner.sh
+++ b/t/tap-plan-corner.sh
@@ -17,7 +17,7 @@
# TAP support:
# - some corner cases for TAP plan
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-plan-errors.sh b/t/tap-plan-errors.sh
index dd37aff08..bbe580e48 100755
--- a/t/tap-plan-errors.sh
+++ b/t/tap-plan-errors.sh
@@ -23,7 +23,7 @@
# and 'tap-skip-whole-badcount.sh'. More checks about corner-cases
# in TAP plans are performed in 'tap-plan-corner.sh'.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-plan-leading-zero.sh b/t/tap-plan-leading-zero.sh
index dc1923c9f..54097daa2 100755
--- a/t/tap-plan-leading-zero.sh
+++ b/t/tap-plan-leading-zero.sh
@@ -19,7 +19,7 @@
# - TAP "SKIP" plans with multiple zeroes, as in "1..00 # SKIP"
# This is consistent with the behaviour of the 'prove' utility.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-plan-malformed.sh b/t/tap-plan-malformed.sh
index cf43d4728..1f7e4dd4e 100755
--- a/t/tap-plan-malformed.sh
+++ b/t/tap-plan-malformed.sh
@@ -17,7 +17,7 @@
# TAP support: a malformed TAP plan is not recognized. The checks in
# here should be consistent with the behaviour of the 'prove' utility.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-plan-middle.sh b/t/tap-plan-middle.sh
index 971869bf1..f234cb0dd 100755
--- a/t/tap-plan-middle.sh
+++ b/t/tap-plan-middle.sh
@@ -17,7 +17,7 @@
# TAP support:
# - test plan preceding and/or following non-result TAP lines
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-plan-whitespace.sh b/t/tap-plan-whitespace.sh
index 5cc198fea..ea9e45cbd 100755
--- a/t/tap-plan-whitespace.sh
+++ b/t/tap-plan-whitespace.sh
@@ -17,7 +17,7 @@
# TAP support:
# - plan line with trailing whitespace is recognized and handled correctly
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-plan.sh b/t/tap-plan.sh
index d22287033..bc4170b5c 100755
--- a/t/tap-plan.sh
+++ b/t/tap-plan.sh
@@ -18,7 +18,7 @@
# - test scripts with the test plan at the beginning
# - test scripts with the test plan at the end
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-and-logging.sh b/t/tap-planskip-and-logging.sh
index 33e5f7f5d..71426ac63 100755
--- a/t/tap-planskip-and-logging.sh
+++ b/t/tap-planskip-and-logging.sh
@@ -18,7 +18,7 @@
# - interactions between "TAP plan with SKIP" and logging of earlier or
# later TAP or non-TAP text
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-badexit.sh b/t/tap-planskip-badexit.sh
index 0bcc7e315..cf39060b5 100755
--- a/t/tap-planskip-badexit.sh
+++ b/t/tap-planskip-badexit.sh
@@ -18,7 +18,7 @@
# - an exit status != 0 of a test script causes an hard error, even if
# the last line of output is a "SKIP plan" (e.g., "1..0 # SKIP").
-. ./defs || exit 1
+. test-init.sh
echo TESTS = one.test two.test > Makefile.am
diff --git a/t/tap-planskip-bailout.sh b/t/tap-planskip-bailout.sh
index 6558a6970..2bf683f56 100755
--- a/t/tap-planskip-bailout.sh
+++ b/t/tap-planskip-bailout.sh
@@ -18,7 +18,7 @@
# - a "Bail out!" directive causes an hard error, even if coming after
# a "SKIP plan" (e.g., "1..0 # SKIP").
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-case-insensitive.sh b/t/tap-planskip-case-insensitive.sh
index ece3b2555..01df36d07 100755
--- a/t/tap-planskip-case-insensitive.sh
+++ b/t/tap-planskip-case-insensitive.sh
@@ -17,7 +17,7 @@
# TAP support:
# - "SKIP" keyword in a TAP plan is case-insensitive
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-late.sh b/t/tap-planskip-late.sh
index 678bd1949..a5fd5f1d3 100755
--- a/t/tap-planskip-late.sh
+++ b/t/tap-planskip-late.sh
@@ -18,7 +18,7 @@
# - the special "plan with SKIP" can also be used "late" in the TAP
# stream, i.e., preceded by non-TAP output or TAP diagnostic.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-later-errors.sh b/t/tap-planskip-later-errors.sh
index c8400446e..ecb5496a1 100755
--- a/t/tap-planskip-later-errors.sh
+++ b/t/tap-planskip-later-errors.sh
@@ -17,7 +17,7 @@
# TAP support:
# - TAP errors following a "TAP plan with SKIP" are still diagnosed.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-unplanned-corner.sh b/t/tap-planskip-unplanned-corner.sh
index ef9ab3c55..0272dd672 100755
--- a/t/tap-planskip-unplanned-corner.sh
+++ b/t/tap-planskip-unplanned-corner.sh
@@ -18,7 +18,7 @@
# - test results seen in a TAP stream that has a "plan with SKIP" are
# flagged as errors, even if all of them are "SKIP" results.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-unplanned.sh b/t/tap-planskip-unplanned.sh
index 5fa8ca52d..6ea3f057b 100755
--- a/t/tap-planskip-unplanned.sh
+++ b/t/tap-planskip-unplanned.sh
@@ -19,7 +19,7 @@
# been seen is an error
# - any test result following a "plan with skip" is an error.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip-whitespace.sh b/t/tap-planskip-whitespace.sh
index 5ae9d3af5..0946b84b7 100755
--- a/t/tap-planskip-whitespace.sh
+++ b/t/tap-planskip-whitespace.sh
@@ -18,7 +18,7 @@
# - normalization of whitespace in console testsuite progress associated
# with a SKIP directive in the TAP plan
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-planskip.sh b/t/tap-planskip.sh
index 76a72446c..4bb9c4242 100755
--- a/t/tap-planskip.sh
+++ b/t/tap-planskip.sh
@@ -17,7 +17,7 @@
# Basic TAP test protocol support:
# - special plan format to skip all the tests in a script
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-realtime.sh b/t/tap-realtime.sh
index 92d78313b..f8544ee37 100755
--- a/t/tap-realtime.sh
+++ b/t/tap-realtime.sh
@@ -22,7 +22,7 @@
# children, and is pretty hacky and complex; is there a better way to
# accomplish the checks done here?
-. ./defs || exit 1
+. test-init.sh
cat >expect-check <<'END'
eval spawn $env(SHELL) -c ":"
@@ -53,7 +53,9 @@ fi
cat > Makefile.am << 'END'
TESTS = all.test
+AM_COLOR_TESTS= no
END
+
. tap-setup.sh
cat > all.test <<'END'
diff --git a/t/tap-recheck-logs.sh b/t/tap-recheck-logs.sh
index 1b7597e33..69c0fe2ea 100755
--- a/t/tap-recheck-logs.sh
+++ b/t/tap-recheck-logs.sh
@@ -17,7 +17,7 @@
# TAP support:
# - RECHECK_LOGS
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TEST_LOG_COMPILER = cat
diff --git a/t/tap-recheck.sh b/t/tap-recheck.sh
index a5679645c..55f08123a 100755
--- a/t/tap-recheck.sh
+++ b/t/tap-recheck.sh
@@ -17,7 +17,7 @@
# Test the 'recheck' target for TAP test protocol.
# Keep in sync with 'test-driver-custom-multitest-recheck.sh'.
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-result-comment.sh b/t/tap-result-comment.sh
index 714f328fd..b7880ab6e 100755
--- a/t/tap-result-comment.sh
+++ b/t/tap-result-comment.sh
@@ -17,7 +17,7 @@
# TAP support:
# - non-directive comments in TAP results are kept verbatim
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-signal.tap b/t/tap-signal.tap
index 1dfc52df2..f4006959b 100755
--- a/t/tap-signal.tap
+++ b/t/tap-signal.tap
@@ -17,7 +17,7 @@
# TAP support:
# - a test script terminated by a signal causes an hard error
-. ./defs || exit 1
+. test-init.sh
fetch_tap_driver
diff --git a/t/tap-test-number-0.sh b/t/tap-test-number-0.sh
index f36034930..6939ed7bd 100755
--- a/t/tap-test-number-0.sh
+++ b/t/tap-test-number-0.sh
@@ -18,7 +18,7 @@
# - a test result numbered as 0 is to be considered out-of-order
# This is consistent with the behaviour of the 'prove' utility.
-. ./defs || exit 1
+. test-init.sh
if test $am_tap_implementation = perl; then
$PERL -MTAP::Parser -e 1 \
diff --git a/t/tap-todo-skip-together.sh b/t/tap-todo-skip-together.sh
index ee400585f..212ad870b 100755
--- a/t/tap-todo-skip-together.sh
+++ b/t/tap-todo-skip-together.sh
@@ -18,7 +18,7 @@
# - TODO and SKIP directives on the same line: the first one wins
# See also related test 'tap-ambiguous-directive.sh'.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-todo-skip-whitespace.sh b/t/tap-todo-skip-whitespace.sh
index b979c8be5..7839e3767 100755
--- a/t/tap-todo-skip-whitespace.sh
+++ b/t/tap-todo-skip-whitespace.sh
@@ -18,7 +18,7 @@
# - normalization of whitespace in console testsuite progress associated
# with TODO and SKIP directives
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-todo-skip.sh b/t/tap-todo-skip.sh
index c4e47cfa3..ceacdbf4b 100755
--- a/t/tap-todo-skip.sh
+++ b/t/tap-todo-skip.sh
@@ -23,7 +23,7 @@
# - the reasons for TODO and SKIP, if present, are nicely printed in
# the testsuite progress output
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-unplanned.sh b/t/tap-unplanned.sh
index 75ad7bf7a..49af6e0b1 100755
--- a/t/tap-unplanned.sh
+++ b/t/tap-unplanned.sh
@@ -17,7 +17,7 @@
# TAP support:
# - unplanned tests are properly reported as errors
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-whitespace-normalization.sh b/t/tap-whitespace-normalization.sh
index c907d115b..cb5b7591f 100755
--- a/t/tap-whitespace-normalization.sh
+++ b/t/tap-whitespace-normalization.sh
@@ -20,7 +20,7 @@
# force us to tweak dozens of other tests (hopefully).
# See also related test 'tap-todo-skip-whitespace.sh'.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
TEST_LOG_COMPILER = cat
diff --git a/t/tap-with-and-without-number.sh b/t/tap-with-and-without-number.sh
index 6d69eb6f3..8e34d809f 100755
--- a/t/tap-with-and-without-number.sh
+++ b/t/tap-with-and-without-number.sh
@@ -19,7 +19,7 @@
# - tests without explicit number get automatically numbered in the
# testsuite progress output on console
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tap-xfail-tests.sh b/t/tap-xfail-tests.sh
index 94ae1c906..7458942fe 100755
--- a/t/tap-xfail-tests.sh
+++ b/t/tap-xfail-tests.sh
@@ -17,7 +17,7 @@
# TAP and $(XFAIL_TESTS): test results without directives are turned from
# PASS to XPASS and from FAIL to XFAIL; other results are unchanged.
-. ./defs || exit 1
+. test-init.sh
. tap-setup.sh
diff --git a/t/tar-override.sh b/t/tar-override.sh
index c35234e9d..ce8529d97 100755
--- a/t/tar-override.sh
+++ b/t/tar-override.sh
@@ -19,7 +19,7 @@
# FIXME: currently this works only when the tar format used is 'v7'
# FIXME: (which is the default one).
-. ./defs || exit 1
+. test-init.sh
cwd=$(pwd) || fatal_ "getting current working directory"
diff --git a/t/tar.sh b/t/tar.sh
index db3e4895d..76256b893 100755
--- a/t/tar.sh
+++ b/t/tar.sh
@@ -16,7 +16,7 @@
# Check the tar-ustar option.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([tar], [1.0])
diff --git a/t/tar2.sh b/t/tar2.sh
index 5d49cc3b7..3ae53fcf3 100755
--- a/t/tar2.sh
+++ b/t/tar2.sh
@@ -16,7 +16,7 @@
# Check the tar-pax option.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([tar2], [1.0])
diff --git a/t/tar3.sh b/t/tar3.sh
index c09aa6f69..bc7c35305 100755
--- a/t/tar3.sh
+++ b/t/tar3.sh
@@ -16,7 +16,7 @@
# Check the tar options diagnostics.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([tar2], [1.0])
diff --git a/t/target-cflags.sh b/t/target-cflags.sh
index 9b975d51d..f0058387f 100755
--- a/t/target-cflags.sh
+++ b/t/target-cflags.sh
@@ -18,7 +18,7 @@
# Assar Westerlund <assar@sics.se>
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/targetclash.sh b/t/targetclash.sh
index 031cbc151..72cf55d6c 100755
--- a/t/targetclash.sh
+++ b/t/targetclash.sh
@@ -16,7 +16,7 @@
# Check that target clashes are diagnosed.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/test-driver-acsubst.sh b/t/test-driver-acsubst.sh
index 12af6099d..076235d67 100755
--- a/t/test-driver-acsubst.sh
+++ b/t/test-driver-acsubst.sh
@@ -17,7 +17,7 @@
# parallel-tests:
# - LOG_DRIVER variables can be AC_SUBST'd
-. ./defs || exit 1
+. test-init.sh
mkdir test-drivers
diff --git a/t/test-driver-cond.sh b/t/test-driver-cond.sh
index 470958259..f2eb8d240 100755
--- a/t/test-driver-cond.sh
+++ b/t/test-driver-cond.sh
@@ -18,7 +18,7 @@
# - Automake can correctly handle conditionals contents for the
# LOG_DRIVER variables.
-. ./defs || exit 1
+. test-init.sh
cp "$am_testaux_srcdir"/trivial-test-driver . \
|| fatal_ "failed to fetch auxiliary script trivial-test-driver"
diff --git a/t/test-driver-create-log-dir.sh b/t/test-driver-create-log-dir.sh
index 5441abfbc..87db9070c 100755
--- a/t/test-driver-create-log-dir.sh
+++ b/t/test-driver-create-log-dir.sh
@@ -18,7 +18,7 @@
# e.g., 'sub/foo.log'), the Automake test harness must ensure that
# directory exists before calling any custom test driver.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-driver-custom-multitest-recheck.sh b/t/test-driver-custom-multitest-recheck.sh
index 55a6b93db..e27f56fb1 100755
--- a/t/test-driver-custom-multitest-recheck.sh
+++ b/t/test-driver-custom-multitest-recheck.sh
@@ -22,7 +22,7 @@
# and 'parallel-tests-recheck-override.sh'.
# Keep in sync with 'tap-recheck.sh'.
-. ./defs || exit 1
+. test-init.sh
cp "$am_testaux_srcdir"/trivial-test-driver . \
|| fatal_ "failed to fetch auxiliary script trivial-test-driver"
diff --git a/t/test-driver-custom-multitest-recheck2.sh b/t/test-driver-custom-multitest-recheck2.sh
index 54fd46771..d72ebf879 100755
--- a/t/test-driver-custom-multitest-recheck2.sh
+++ b/t/test-driver-custom-multitest-recheck2.sh
@@ -21,7 +21,7 @@
# See also related tests 'test-driver-custom-multitest-recheck.sh' and
# 'parallel-tests-recheck-override.sh'.
-. ./defs || exit 1
+. test-init.sh
cp "$am_testaux_srcdir"/trivial-test-driver . \
|| fatal_ "failed to fetch auxiliary script trivial-test-driver"
diff --git a/t/test-driver-custom-multitest.sh b/t/test-driver-custom-multitest.sh
index 7a073e26e..b68333ed0 100755
--- a/t/test-driver-custom-multitest.sh
+++ b/t/test-driver-custom-multitest.sh
@@ -19,7 +19,7 @@
# only checks implementation details in Automake's custom test drivers
# support, but also serves as a "usability test" for our APIs.
-. ./defs || exit 1
+. test-init.sh
cp "$am_testaux_srcdir"/trivial-test-driver . \
|| fatal_ "failed to fetch auxiliary script trivial-test-driver"
diff --git a/t/test-driver-custom-no-extra-driver.sh b/t/test-driver-custom-no-extra-driver.sh
index a44febd54..edd6183c0 100755
--- a/t/test-driver-custom-no-extra-driver.sh
+++ b/t/test-driver-custom-no-extra-driver.sh
@@ -18,7 +18,7 @@
# installed or referenced if it's not used, i.e., if the user has
# defined his own '*LOG_DRIVER' variables.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/test-driver-custom-xfail-tests.sh b/t/test-driver-custom-xfail-tests.sh
index c19e69f8a..8bfe3e680 100755
--- a/t/test-driver-custom-xfail-tests.sh
+++ b/t/test-driver-custom-xfail-tests.sh
@@ -16,7 +16,7 @@
# Custom test drivers: "abstract" XFAIL_TESTS support.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_SUBST([nihil], [])
diff --git a/t/test-driver-custom.sh b/t/test-driver-custom.sh
index f8306ff92..db4182610 100755
--- a/t/test-driver-custom.sh
+++ b/t/test-driver-custom.sh
@@ -16,7 +16,7 @@
# Custom test drivers: per-extension test drivers.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-driver-fail.sh b/t/test-driver-fail.sh
index 10a4b1ef7..963aadd32 100755
--- a/t/test-driver-fail.sh
+++ b/t/test-driver-fail.sh
@@ -22,7 +22,7 @@
# (like our dummy one in this test) might leave around a test log even
# in case of internal failures.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/test-driver-is-distributed.sh b/t/test-driver-is-distributed.sh
index 2208a04d4..f13bf9bc3 100755
--- a/t/test-driver-is-distributed.sh
+++ b/t/test-driver-is-distributed.sh
@@ -19,35 +19,29 @@
# defined in a subdir Makefile
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
ocwd=$(pwd) || fatal_ "getting current working directory"
-do_check ()
-{
- whereopts=$1 auxdir=$2
- case $#,$whereopts in
- 2,ac) ac_opts=parallel-tests am_code= ;;
- 2,am) am_opts=parallel-tests ac_code= ;;
- *) fatal_ "do_check: bad usage";;
- esac
- mkdir $whereopts
- cd $whereopts
+for i in 1 2; do
+ mkdir D$i
+ cd D$i
+ if test $i -eq 1; then
+ auxdir=.
+ test_driver=test-driver
+ else
+ auxdir=build-aux
+ test_driver=$auxdir/test-driver
+ mkdir $auxdir
+ fi
mkdir tests
unindent > configure.ac << END
AC_INIT([$me], [1.0])
AC_CONFIG_AUX_DIR([$auxdir])
- AM_INIT_AUTOMAKE([$ac_opts])
+ AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile tests/Makefile])
AC_OUTPUT
END
- if test $auxdir = .; then
- test_driver=test-driver
- else
- mkdir $auxdir
- test_driver=$auxdir/test-driver
- fi
- # No 'AUTOMAKE_OPTIONS' in here -- purposely.
unindent > Makefile.am << END
SUBDIRS = tests
check-local: test-top
@@ -57,7 +51,6 @@ END
.PHONY: test-top
END
unindent > tests/Makefile.am << END
- AUTOMAKE_OPTIONS = $am_opts
check-local: test-sub
test-sub:
echo ' ' \$(DIST_COMMON) ' ' | grep '[ /]$test_driver '
@@ -84,10 +77,7 @@ END
$AUTOMAKE
diff Makefile.in Makefile.sav
diff tests/Makefile.in tests/Makefile.sav
- :
-}
-
-do_check ac .
-do_check am build-aux
+ cd "$ocwd" || fatal_ "cannot chdir back to '$ocwd'"
+done
:
diff --git a/t/test-driver-strip-vpath.sh b/t/test-driver-strip-vpath.sh
index ab774db99..6aafb6ae2 100755
--- a/t/test-driver-strip-vpath.sh
+++ b/t/test-driver-strip-vpath.sh
@@ -17,7 +17,7 @@
# Custom test drivers: check that the test name passed to the test
# driver has any VPATH prefix stripped.
-. ./defs || exit 1
+. test-init.sh
ocwd=$(pwd) || fatal_ "cannot get current working directory"
diff --git a/t/test-driver-trs-suffix-registered.sh b/t/test-driver-trs-suffix-registered.sh
index 78acca23a..9ce8b56fb 100755
--- a/t/test-driver-trs-suffix-registered.sh
+++ b/t/test-driver-trs-suffix-registered.sh
@@ -20,7 +20,7 @@
# - .test if $(TEST_EXTENSIONS) is not defined
# - stuff in $(TEST_EXTENSIONS) otherwise
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/test-extensions-cond.sh b/t/test-extensions-cond.sh
index dda019333..3cc7d85ff 100755
--- a/t/test-extensions-cond.sh
+++ b/t/test-extensions-cond.sh
@@ -16,7 +16,7 @@
# Expose bug in conditional definition of TEST_EXTENSIONS.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_CONDITIONAL([COND], [:])
diff --git a/t/test-extensions.sh b/t/test-extensions.sh
index 8f8c4131b..b1c457aaa 100755
--- a/t/test-extensions.sh
+++ b/t/test-extensions.sh
@@ -18,7 +18,7 @@
# and do not diagnose valid (albeit more unusual) ones.
# See automake bug#9400.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/test-harness-vpath-rewrite.sh b/t/test-harness-vpath-rewrite.sh
index 85e4bbb98..ce904ce37 100755
--- a/t/test-harness-vpath-rewrite.sh
+++ b/t/test-harness-vpath-rewrite.sh
@@ -17,7 +17,7 @@
# Check that our concurrent test harness is not subject to spurious VPATH
# rewrites.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-log.sh b/t/test-log.sh
index 0350cce45..91c31c6de 100755
--- a/t/test-log.sh
+++ b/t/test-log.sh
@@ -22,7 +22,7 @@
# - VERBOSE environment variable support
# Keep in sync with 'tap-log.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/test-logs-repeated.sh b/t/test-logs-repeated.sh
index 881f67f92..f4dd06621 100755
--- a/t/test-logs-repeated.sh
+++ b/t/test-logs-repeated.sh
@@ -20,7 +20,7 @@
# different test scripts don't end up sharing the same log file.
# (Automake itself is such a project, BTW ;-)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/test-metadata-global-log.sh b/t/test-metadata-global-log.sh
index 74bb6ffa5..b646cc261 100755
--- a/t/test-metadata-global-log.sh
+++ b/t/test-metadata-global-log.sh
@@ -14,13 +14,13 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Custom test drivers and parallel-tests harness: check the documented
+# Custom test drivers and parallel test harness: check the documented
# semantics for deciding when the content of a test log file should be
# copied in the global test-suite.log file. Currently, this is done
# with the use of the reStructuredText field ':copy-in-global-log:' in
# the associated '.trs' files.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-metadata-global-result.sh b/t/test-metadata-global-result.sh
index 8b6a3c8e2..d7fd8e9f8 100755
--- a/t/test-metadata-global-result.sh
+++ b/t/test-metadata-global-result.sh
@@ -18,7 +18,7 @@
# "global test result" in '*.trs' files, as documented in the automake
# manual.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-metadata-recheck.sh b/t/test-metadata-recheck.sh
index 4f2d29bd0..1aadc0519 100755
--- a/t/test-metadata-recheck.sh
+++ b/t/test-metadata-recheck.sh
@@ -17,7 +17,7 @@
# Test the "make recheck" semantics for custom test drivers, as documented
# in the Automake manual.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-metadata-results.sh b/t/test-metadata-results.sh
index 2410e03fa..5bcd0b8da 100755
--- a/t/test-metadata-results.sh
+++ b/t/test-metadata-results.sh
@@ -17,7 +17,7 @@
# Parallel testsuite harness: check APIs for the registering of test
# results in '*.trs' files, as documented in the automake manual.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-missing.sh b/t/test-missing.sh
index 5db274d7d..f8302487d 100755
--- a/t/test-missing.sh
+++ b/t/test-missing.sh
@@ -18,7 +18,7 @@
# - non-existent scripts listed in TESTS get diagnosed
# See also related test 'test-missing2.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-missing2.sh b/t/test-missing2.sh
index 2ba34798a..ca0588e9d 100755
--- a/t/test-missing2.sh
+++ b/t/test-missing2.sh
@@ -19,7 +19,7 @@
# all the $(TEST_LOGS) have a dummy dependency.
# See also related test 'test-missing.sh'.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/test-trs-basic.sh b/t/test-trs-basic.sh
index f0c30b876..209e02371 100755
--- a/t/test-trs-basic.sh
+++ b/t/test-trs-basic.sh
@@ -18,7 +18,7 @@
# - creation and removal of '.trs' auxiliary files
# - check some internals regarding the use of '.trs' files.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/test-trs-recover.sh b/t/test-trs-recover.sh
index 95a9ddcec..68218398e 100755
--- a/t/test-trs-recover.sh
+++ b/t/test-trs-recover.sh
@@ -19,7 +19,7 @@
# This test is complex and tricky, but that's acceptable since we are
# testing semantics that are potentially complex and tricky.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/test-trs-recover2.sh b/t/test-trs-recover2.sh
index b8e56b577..8db3ed82c 100755
--- a/t/test-trs-recover2.sh
+++ b/t/test-trs-recover2.sh
@@ -17,7 +17,7 @@
# Check parallel harness features:
# - recovery from unreadable '.trs' files, in various scenarios
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_OUTPUT
diff --git a/t/tests-environment-and-log-compiler.sh b/t/tests-environment-and-log-compiler.sh
index 9184a5ef9..3fd1b286b 100755
--- a/t/tests-environment-and-log-compiler.sh
+++ b/t/tests-environment-and-log-compiler.sh
@@ -18,7 +18,7 @@
# by TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER and
# LOG_FLAGS (for tests both with and without registered extensions).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/tests-environment-backcompat.sh b/t/tests-environment-backcompat.sh
index a5d888d4d..bd794564a 100755
--- a/t/tests-environment-backcompat.sh
+++ b/t/tests-environment-backcompat.sh
@@ -16,11 +16,11 @@
# With old serial testsuite driver, TESTS_ENVIRONMENT can be used to
# define the "test runner", i.e. the program that the test scripts must
-# be run by (with the parallel-tests driver one should use LOG_COMPILER
+# be run by (with the parallel test harness one should use LOG_COMPILER
# for this). The behaviour tested here is also documented in the manual.
am_serial_tests=yes
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<END
AC_SUBST([PERL], ['$PERL'])
diff --git a/t/tests-environment-fd-redirect.sh b/t/tests-environment-fd-redirect.sh
index 5780e570f..1a512ba72 100755
--- a/t/tests-environment-fd-redirect.sh
+++ b/t/tests-environment-fd-redirect.sh
@@ -26,7 +26,7 @@
# and the following CC:ed thread on bug-autoconf list:
# <http://lists.gnu.org/archive/html/bug-autoconf/2011-06/msg00002.html>
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/tests-environment.sh b/t/tests-environment.sh
index d6f219dae..519aa92bb 100755
--- a/t/tests-environment.sh
+++ b/t/tests-environment.sh
@@ -17,7 +17,7 @@
# "Simple Tests" testsuite driver: check TESTS_ENVIRONMENT support.
am_serial_tests=yes
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/testsuite-summary-count-many.sh b/t/testsuite-summary-count-many.sh
index 553df50ae..7fee21d90 100755
--- a/t/testsuite-summary-count-many.sh
+++ b/t/testsuite-summary-count-many.sh
@@ -19,7 +19,7 @@
# Incidentally, this test also checks that the testsuite summary doesn't
# give any bug-report address if it's not defined.
-. ./defs || exit 1
+. test-init.sh
for s in trivial-test-driver extract-testsuite-summary.pl; do
cp "$am_testaux_srcdir/$s" . || fatal_ "failed to fetch auxiliary script $s"
diff --git a/t/testsuite-summary-reference-log.sh b/t/testsuite-summary-reference-log.sh
index 1851226ac..6b7485ba7 100755
--- a/t/testsuite-summary-reference-log.sh
+++ b/t/testsuite-summary-reference-log.sh
@@ -17,7 +17,7 @@
# Check that the global testsuite log file referenced in the testsuite
# summary and in the global testsuite log itself is correct.
-. ./defs || exit 1
+. test-init.sh
mv configure.ac configure.stub
diff --git a/t/transform.sh b/t/transform.sh
index aa0797057..dfea36f4f 100755
--- a/t/transform.sh
+++ b/t/transform.sh
@@ -17,7 +17,7 @@
# Make sure that --program-transform works.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/transform2.sh b/t/transform2.sh
index cab5f1a68..72c5359f8 100755
--- a/t/transform2.sh
+++ b/t/transform2.sh
@@ -18,7 +18,7 @@
# collapsed.
required=cc
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_CC
diff --git a/t/transform3.sh b/t/transform3.sh
index fc37be1fe..8eb67353e 100755
--- a/t/transform3.sh
+++ b/t/transform3.sh
@@ -18,7 +18,7 @@
# stuff (in particular, pgklibdir, pkgdatadir and pkglibexecdir).
required=cc
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac <<'END'
AC_INIT([foo], [1.0])
diff --git a/t/txinfo-no-clutter.sh b/t/txinfo-no-clutter.sh
index 3de21b488..0325e68fc 100755
--- a/t/txinfo-no-clutter.sh
+++ b/t/txinfo-no-clutter.sh
@@ -14,19 +14,28 @@
# 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 pdf, ps and dvi targets shouldn't let clutter in the build directory.
-# Related to automake bug#11146.
+# The info, html, pdf, ps and dvi targets shouldn't let clutter in the
+# build directory. Related to automake bug#11146.
-required='makeinfo tex texi2dvi-o dvips'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi dvips'
+. test-init.sh
-mkdir sub
-
-echo AC_OUTPUT >> configure.ac
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES([sub/Makefile])
+AC_OUTPUT
+END
cat > Makefile.am << 'END'
-all-local: ps pdf dvi html
-info_TEXINFOS = foo.texi sub/bar.texi
+all-local: ps pdf dvi html # For "make distcheck".
+info_TEXINFOS = foo.texi doc/bar.texi baz.texi
+SUBDIRS = sub
+END
+
+mkdir sub doc
+
+cat > sub/Makefile.am << 'END'
+all-local: ps pdf dvi html # For "make distcheck".
+info_TEXINFOS = baz.texi
END
cat > foo.texi << 'END'
@@ -39,7 +48,7 @@ Hello walls.
@bye
END
-cat > sub/bar.texi << 'END'
+cat > doc/bar.texi << 'END'
\input texinfo
@setfilename bar.info
@settitle bar
@@ -53,15 +62,6 @@ cat > baz.texi << 'END'
\input texinfo
@setfilename baz.info
@settitle baz
-@node Top
-Hello walls.
-@bye
-END
-
-cat > baz.texi << 'END'
-\input texinfo
-@setfilename baz.info
-@settitle baz
@defindex au
@defindex sa
@defindex sb
@@ -81,6 +81,8 @@ sb
@bye
END
+cp baz.texi sub
+
$ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
@@ -91,10 +93,53 @@ $AUTOCONF
# clean up potential cruft left by earlier ones.
for fmt in info pdf ps dvi html all; do
$MAKE $fmt
- ls -l . sub # For debugging.
- ls -d foo* baz* sub/bar* > lst
- $EGREP -v '^(foo|sub/bar|baz)\.(texi|dvi|ps|pdf|html|info)$' lst && exit 1
- $MAKE clean
+ # For debugging.
+ ls -l . doc sub
+ # Sanity check.
+ case $fmt in
+ html)
+ test -e foo.html
+ test -e doc/bar.html
+ test -e baz.html
+ test -e sub/baz.html
+ ;;
+ all)
+ for x in info pdf ps dvi; do
+ test -f foo.$x
+ test -f doc/bar.$x
+ test -f baz.$x
+ test -f sub/baz.$x
+ done
+ test -e foo.html
+ test -e doc/bar.html
+ test -e baz.html
+ test -e sub/baz.html
+ ;;
+ *)
+ test -f foo.$fmt
+ test -f doc/bar.$fmt
+ test -f baz.$fmt
+ test -f sub/baz.$fmt
+ ;;
+ esac
+ # Real test.
+ ls -d foo* baz* sub/baz* doc/bar* > lst
+ basename_rx='(foo|doc/bar|baz|sub/baz)'
+ case $fmt in
+ pdf) extension_rx="(texi|pdf|t2p)";;
+ dvi) extension_rx="(texi|dvi|t2d)";;
+ ps) extension_rx="(texi|ps|dvi|t2d)";;
+ info) extension_rx="(texi|info)";;
+ html) extension_rx="(texi|html)";;
+ all) extension_rx="(texi|html|info|pdf|ps|dvi|t2[pd])";;
+ *) fatal_ "unreachable code reached";;
+ esac
+ $EGREP -v "^$basename_rx\.$extension_rx$" lst && exit 1
+ # Cleanup for checks on the next format.
+ case $fmt in
+ info) rm -f *.info doc/*.info sub/*.info;;
+ *) $MAKE clean;;
+ esac
done
$MAKE distcheck
diff --git a/t/txinfo-unrecognized-extension.sh b/t/txinfo-unrecognized-extension.sh
index 96b5f91a6..bb2b83df9 100755
--- a/t/txinfo-unrecognized-extension.sh
+++ b/t/txinfo-unrecognized-extension.sh
@@ -17,7 +17,7 @@
# Test that automake complains properly when the files with unrecognized
# extensions are passed to the TEXINFOS primary.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = foobar.foo bazquux.tex zardoz.c
diff --git a/t/txinfo.sh b/t/txinfo.sh
index 31990c427..8b22b27c5 100755
--- a/t/txinfo.sh
+++ b/t/txinfo.sh
@@ -18,7 +18,7 @@
# Jim Meyering.
required=makeinfo
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_OUTPUT
diff --git a/t/txinfo10.sh b/t/txinfo10.sh
index 903d6f5b9..2a186e1ef 100755
--- a/t/txinfo10.sh
+++ b/t/txinfo10.sh
@@ -17,7 +17,7 @@
# Make sure dvi target recurses into subdir.
# Reported by Pavel Roskin.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
SUBDIRS = sub
diff --git a/t/txinfo13.sh b/t/txinfo13.sh
index 53a2ee7ba..374c44a27 100755
--- a/t/txinfo13.sh
+++ b/t/txinfo13.sh
@@ -18,8 +18,8 @@
# Also make sure we do not distribute too much foo.info* files (Report
# from Vincent Lefevre).
-required='makeinfo tex texi2dvi-o'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/txinfo16.sh b/t/txinfo16.sh
index f4c1cee0a..11f7dea57 100755
--- a/t/txinfo16.sh
+++ b/t/txinfo16.sh
@@ -18,7 +18,7 @@
# not in $(builddir).
required='makeinfo tex texi2dvi'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/txinfo17.sh b/t/txinfo17.sh
index d21676920..f125af484 100755
--- a/t/txinfo17.sh
+++ b/t/txinfo17.sh
@@ -17,7 +17,7 @@
# Make sure Automake uses the _first_ @setfilname it sees.
# Report from Karl Berry.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = texinfo.texi
diff --git a/t/txinfo19.sh b/t/txinfo19.sh
index 71af13a5c..1fbc79ebc 100755
--- a/t/txinfo19.sh
+++ b/t/txinfo19.sh
@@ -17,7 +17,7 @@
# Test support for DJGPP's .iNN info files.
required=makeinfo
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/txinfo2.sh b/t/txinfo2.sh
index 37c295342..c5e0e4723 100755
--- a/t/txinfo2.sh
+++ b/t/txinfo2.sh
@@ -17,7 +17,7 @@
# Test to ensure that a ".info~" file doesn't end up in the
# distribution. Bug report from Greg McGary.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/txinfo20.sh b/t/txinfo20.sh
index 3d644f5bb..261725d8e 100755
--- a/t/txinfo20.sh
+++ b/t/txinfo20.sh
@@ -17,7 +17,7 @@
# Make sure info files survive makeinfo errors.
required=makeinfo
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/txinfo21.sh b/t/txinfo21.sh
index 5a3da1595..4e9245c41 100755
--- a/t/txinfo21.sh
+++ b/t/txinfo21.sh
@@ -17,8 +17,8 @@
# Test support for building HTML documentation, and the many
# install-DOC flavors.
-required='makeinfo-html tex texi2dvi'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
cat >>configure.ac <<\EOF
AC_CONFIG_FILES([rec/Makefile])
@@ -34,6 +34,7 @@ AC_OUTPUT
EOF
cat > Makefile.am << 'END'
+check-local: ps pdf dvi html # For "make distcheck".
SUBDIRS = rec
info_TEXINFOS = main.texi sub/main2.texi
END
@@ -75,13 +76,15 @@ install-pdf-local:
:> "$(pdfdir)/hello"
uninstall-local:
rm -f "$(pdfdir)/hello"
+
+check-local: ps pdf dvi html # For "make distcheck".
END
$ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
-./configure
+./configure --prefix "$(pwd)"
$MAKE
@@ -115,17 +118,20 @@ test ! -e sub/main2.html
test ! -e rec/main3.html
# Make sure AM_MAKEINFOHTMLFLAGS is supported, and override AM_MAKEINFO.
+
+cp Makefile.am Makefile.sav
cat >>Makefile.am <<\EOF
AM_MAKEINFOHTMLFLAGS = --no-headers --no-split
AM_MAKEINFOFLAGS = --unsupported-option
EOF
$AUTOMAKE
-./configure --prefix "$(pwd)"
+./config.status Makefile
$MAKE html
test -f main.html
test -f sub/main2.html
test -d rec/main3.html
+
$MAKE clean
test ! -e main.html
test ! -e sub/main2.html
@@ -174,4 +180,11 @@ test ! -e share/$me/pdf/main2.pdf
test ! -e share/$me/pdf/main3.pdf
test ! -e share/$me/pdf/hello
+# Restore the makefile without a broken AM_MAKEINFOFLAGS definition.
+mv -f Makefile.sav Makefile.am
+$AUTOMAKE
+./config.status Makefile
+
+$MAKE distcheck
+
:
diff --git a/t/txinfo22.sh b/t/txinfo22.sh
index efde95387..d337d6ec1 100755
--- a/t/txinfo22.sh
+++ b/t/txinfo22.sh
@@ -19,7 +19,7 @@
# Report from Tom Tromey.
required='makeinfo tex texi2dvi'
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/txinfo23.sh b/t/txinfo23.sh
index 294370bd8..6b90f189e 100755
--- a/t/txinfo23.sh
+++ b/t/txinfo23.sh
@@ -19,8 +19,8 @@
# (Similar to txinfo13.sh, plus DISTCLEANFILES).
# (See also txinfo24.sh and txinfo25.sh).
-required='makeinfo tex texi2dvi-o'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/txinfo24.sh b/t/txinfo24.sh
index ae3e8abb6..5a89c6b8b 100755
--- a/t/txinfo24.sh
+++ b/t/txinfo24.sh
@@ -18,8 +18,8 @@
# (Similar to txinfo16.sh, plus CLEANFILES).
# (See also txinfo23.sh and txinfo25.sh).
-required='makeinfo tex texi2dvi-o'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/txinfo25.sh b/t/txinfo25.sh
index 4feedca19..45ea42823 100755
--- a/t/txinfo25.sh
+++ b/t/txinfo25.sh
@@ -20,8 +20,8 @@
# (Similar to txinfo16.sh, plus CLEANFILES).
# (See also txinfo23.sh and txinfo24.sh).
-required='makeinfo tex texi2dvi-o'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/txinfo26.sh b/t/txinfo26.sh
index 5401fc9e4..268f81880 100755
--- a/t/txinfo26.sh
+++ b/t/txinfo26.sh
@@ -18,7 +18,7 @@
# PR/408
required='makeinfo'
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/txinfo27.sh b/t/txinfo27.sh
index bfc075ae3..f1e8791ba 100755
--- a/t/txinfo27.sh
+++ b/t/txinfo27.sh
@@ -17,7 +17,7 @@
# Make sure install-info works even if no-installinfo is given.
required='makeinfo'
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT >> configure.ac
diff --git a/t/txinfo28.sh b/t/txinfo28.sh
index 216cb6365..069a51593 100755
--- a/t/txinfo28.sh
+++ b/t/txinfo28.sh
@@ -19,8 +19,8 @@
# references.
# Report from Ralf Corsepius.
-required='makeinfo tex texi2dvi-o'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi'
+. test-init.sh
# This setting, when honored by GNU ls, used to cause an infinite loop
# in mdate-sh.
diff --git a/t/txinfo29.sh b/t/txinfo29.sh
index 3e27362bf..b21967892 100755
--- a/t/txinfo29.sh
+++ b/t/txinfo29.sh
@@ -17,7 +17,7 @@
# Make sure that INFO_DEPS can be overridden.
# Report from Bruce Korb.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
INFO_DEPS = foo.info
diff --git a/t/txinfo3.sh b/t/txinfo3.sh
index 5d7694fe1..d6f7caf5c 100755
--- a/t/txinfo3.sh
+++ b/t/txinfo3.sh
@@ -17,7 +17,7 @@
# Test to make sure .info-less @setfilename works.
required='makeinfo tex texi2dvi'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/txinfo30.sh b/t/txinfo30.sh
deleted file mode 100755
index 8c6aa912d..000000000
--- a/t/txinfo30.sh
+++ /dev/null
@@ -1,63 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2005-2012 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/>.
-
-# Make sure 'missing texinfo' does not create empty files.
-# Report from Bob Proulx.
-
-. ./defs || exit 1
-
-echo info_TEXINFOS = bar.texi >Makefile.am
-echo grepme >bar.info
-$sleep
-cat >bar.texi <<EOF
-@setfilename bar.info
-EOF
-
-echo AC_OUTPUT >>configure.ac
-
-cat >makeinfo <<\EOF
-#!/bin/sh
-# This script
-# 1. fails so 'missing' can take over
-# 2. does not understand '--version' so 'missing' thinks 'makeinfo' isn't
-# installed
-exec false
-EOF
-
-chmod +x makeinfo
-
-PATH=$(pwd)$PATH_SEPARATOR$PATH
-export PATH
-
-# Otherwise configure might pick up a working makeinfo from the
-# environment. Seen in automake bug#10866.
-unset MAKEINFO || :
-
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE --add-missing
-
-./configure
-$MAKE
-grep grepme bar.info
-test -f bar.info
-
-# We should not create a missing bar.info.
-rm -f bar.info
-$MAKE && exit 1
-test ! -e bar.info
-
-:
diff --git a/t/txinfo31.sh b/t/txinfo31.sh
index e8186e54b..567e28f40 100755
--- a/t/txinfo31.sh
+++ b/t/txinfo31.sh
@@ -17,7 +17,7 @@
# Make sure file extensions are matched correctly.
# Report from Eric Dorland.
-. ./defs || exit 1
+. test-init.sh
echo info_TEXINFOS = bar.texi >Makefile.am
cat >bar.texi <<EOF
diff --git a/t/txinfo32.sh b/t/txinfo32.sh
index 9f2134a43..c9d7d83da 100755
--- a/t/txinfo32.sh
+++ b/t/txinfo32.sh
@@ -17,7 +17,7 @@
# Make sure the documentation targets work as required with BSD make,
# even in the presence of subdirs (requires presence of default *-am rules).
-. ./defs || exit 1
+. test-init.sh
mkdir sub
cat >>configure.ac <<'END'
diff --git a/t/txinfo33.sh b/t/txinfo33.sh
index efb2678e2..47f403893 100755
--- a/t/txinfo33.sh
+++ b/t/txinfo33.sh
@@ -17,8 +17,8 @@
# DVIS, PDFS, PSS, HTMLS should not be cleaned upon 'mostlyclean'.
# Similar to txinfo25.sh.
-required='makeinfo tex texi2dvi-o dvips'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi dvips'
+. test-init.sh
mkdir sub
diff --git a/t/txinfo4.sh b/t/txinfo4.sh
index e6c67b95f..6784d034e 100755
--- a/t/txinfo4.sh
+++ b/t/txinfo4.sh
@@ -16,7 +16,7 @@
# Make sure non-empty, non-info suffixes are diagnosed.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = textutils.texi
diff --git a/t/txinfo5.sh b/t/txinfo5.sh
deleted file mode 100755
index 44a2faecd..000000000
--- a/t/txinfo5.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#! /bin/sh
-# Copyright (C) 1998-2012 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 to make sure that texinfo.tex is not required by --cygnus.
-# Also check that TEXINFOS + cygnus work without requiring the
-# '-Wno-override' option.
-# See also sister test txinfo5b.sh.
-# Report from Ian Taylor.
-
-. ./defs || exit 1
-
-cat >> configure.ac << 'END'
-AM_MAINTAINER_MODE
-END
-
-cat > Makefile.am << 'END'
-info_TEXINFOS = ian.texi
-END
-
-echo '@setfilename ian.info' > ian.texi
-
-$ACLOCAL
-$AUTOMAKE --cygnus -Wno-obsolete
-
-:
diff --git a/t/txinfo5b.sh b/t/txinfo5b.sh
deleted file mode 100755
index 6c81cedac..000000000
--- a/t/txinfo5b.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#! /bin/sh
-# Copyright (C) 1998-2012 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 to make sure that texinfo.tex is not required by --cygnus.
-# See also sister test txinfo5.sh.
-# Report from Ian Taylor.
-
-. ./defs || exit 1
-
-cat >> configure.ac << 'END'
-AM_MAINTAINER_MODE
-END
-
-cat > Makefile.am << 'END'
-# Disable 'override' warnings to work around an unrelated
-# texi+cygnus bug.
-# Disable obsolete warnings because the 'cygnus' mode is now deprecated.
-AUTOMAKE_OPTIONS = -Wno-override -Wno-obsolete
-info_TEXINFOS = ian.texi
-END
-
-echo '@setfilename ian.info' > ian.texi
-
-$ACLOCAL
-$AUTOMAKE --cygnus
-$AUTOMAKE -a --cygnus
-test ! -e texinfo.tex
-
-:
diff --git a/t/txinfo6.sh b/t/txinfo6.sh
index ca3184dc6..549ead8b8 100755
--- a/t/txinfo6.sh
+++ b/t/txinfo6.sh
@@ -16,7 +16,7 @@
# Test to make sure '.txi' extension works.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = foo.txi
diff --git a/t/txinfo7.sh b/t/txinfo7.sh
index 93d199c1c..8d720547b 100755
--- a/t/txinfo7.sh
+++ b/t/txinfo7.sh
@@ -17,7 +17,7 @@
# Test to make sure texinfo.tex correctly installed by -a. Bug report
# by Per Cederqvist.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = textutils.texi
diff --git a/t/txinfo8.sh b/t/txinfo8.sh
index 6b1c6face..46b791ab7 100755
--- a/t/txinfo8.sh
+++ b/t/txinfo8.sh
@@ -18,7 +18,7 @@
# -a when we're using AC_CONFIG_AUX_DIR. Bug report by by Per
# Cederqvist.
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << END
AC_INIT([$me], [1.0])
diff --git a/t/txinfo9.sh b/t/txinfo9.sh
index 97770f4ce..63dcf7555 100755
--- a/t/txinfo9.sh
+++ b/t/txinfo9.sh
@@ -16,7 +16,7 @@
# Make sure we only create texinfo-related targets once.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = maude.texi liver.txi heart.texinfo
diff --git a/t/uninstall-fail.sh b/t/uninstall-fail.sh
index 510c9685a..6c0c57ce9 100755
--- a/t/uninstall-fail.sh
+++ b/t/uninstall-fail.sh
@@ -20,7 +20,7 @@
# tests for other primaries too? E.g., SCRIPTS, PROGRAMS, LISP, PYTHON,
# etc...
-. ./defs || exit 1
+. test-init.sh
mkdir d
: > d/f
diff --git a/t/uninstall-pr9578.sh b/t/uninstall-pr9578.sh
index cb870b3b7..e5f9acbcb 100755
--- a/t/uninstall-pr9578.sh
+++ b/t/uninstall-pr9578.sh
@@ -22,7 +22,7 @@
# need sister tests for other primaries too? E.g., PROGRAMS, LISP,
# PYTHON, etc...
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_OUTPUT
diff --git a/t/unused.sh b/t/unused.sh
index 79c7b41b2..11c43c142 100755
--- a/t/unused.sh
+++ b/t/unused.sh
@@ -16,7 +16,7 @@
# Test for failing check for unused macros. From Johan Danielsson.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
MACRO_1
diff --git a/t/upc.sh b/t/upc.sh
index 4128ea013..3800a0646 100755
--- a/t/upc.sh
+++ b/t/upc.sh
@@ -16,7 +16,7 @@
# A simple Hello World for UPC.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AM_PROG_UPC
diff --git a/t/upc2.sh b/t/upc2.sh
index be6461f2c..5abd0df2e 100755
--- a/t/upc2.sh
+++ b/t/upc2.sh
@@ -17,7 +17,7 @@
# Test that Automake suggests using AM_PROG_UPC if Unified Parallel C
# sources are used.
-. ./defs || exit 1
+. test-init.sh
echo AC_PROG_CC >>configure.ac
diff --git a/t/upc3.sh b/t/upc3.sh
index 7da65d532..e0312524a 100755
--- a/t/upc3.sh
+++ b/t/upc3.sh
@@ -16,7 +16,7 @@
# Test that C and Unified Parallel C link safely.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/recurs.sh b/t/var-recurs.sh
index 0dc04d307..7a615846f 100755
--- a/t/recurs.sh
+++ b/t/var-recurs.sh
@@ -16,12 +16,10 @@
# Test to make sure recursive variable definitions die.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
-AM_CONDITIONAL(ONE, true)
-AM_CONDITIONAL(TWO, false)
END
cat > Makefile.am << 'END'
diff --git a/t/recurs2.sh b/t/var-recurs2.sh
index 9472631ba..edf5d7b2f 100755
--- a/t/recurs2.sh
+++ b/t/var-recurs2.sh
@@ -17,7 +17,7 @@
# Test to make sure recursive variable definitions die.
# From Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
man_MANS = chgrp.1
@@ -27,3 +27,5 @@ END
$ACLOCAL
$AUTOMAKE
+
+:
diff --git a/t/vars.sh b/t/vars.sh
index cf45cb9ab..14c62d84c 100755
--- a/t/vars.sh
+++ b/t/vars.sh
@@ -17,7 +17,7 @@
# Test various variable definitions that include an '=' sign.
# From Raja R Harinath.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
MY_FLAGS_1=-DABC=345
diff --git a/t/vars3.sh b/t/vars3.sh
index be30006e4..72af29c8f 100755
--- a/t/vars3.sh
+++ b/t/vars3.sh
@@ -17,7 +17,7 @@
# Check that Automake warns about variables containing spaces
# and other non-POSIX characters.
-. ./defs || exit 1
+. test-init.sh
cat >Makefile.am <<'EOF'
L01 = $(shell echo *)
diff --git a/t/vartar.sh b/t/vartar.sh
index 1c9dc3bed..384538a46 100755
--- a/t/vartar.sh
+++ b/t/vartar.sh
@@ -16,7 +16,7 @@
# Targets and macros are two different name spaces.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
install = install
diff --git a/t/vartypo2.sh b/t/vartypo2.sh
index 90facaada..94151eb29 100755
--- a/t/vartypo2.sh
+++ b/t/vartypo2.sh
@@ -18,7 +18,7 @@
# Libtool variant.
required=libtoolize
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AM_PROG_AR
diff --git a/t/vartypos.sh b/t/vartypos.sh
index 16317fb32..e8da7e74c 100755
--- a/t/vartypos.sh
+++ b/t/vartypos.sh
@@ -16,7 +16,7 @@
# Make sure we warn about possible variable typos when we should.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<'END'
AC_PROG_RANLIB
diff --git a/t/version3.sh b/t/version3.sh
index 2b5294d10..6299c6154 100755
--- a/t/version3.sh
+++ b/t/version3.sh
@@ -16,7 +16,7 @@
# Test to make sure version in AUTOMAKE_OPTIONS works.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = 9.9x
diff --git a/t/version4.sh b/t/version4.sh
index f04305e1e..53285fe62 100755
--- a/t/version4.sh
+++ b/t/version4.sh
@@ -16,7 +16,7 @@
# Test to make sure we are compatible with the 1.4-p1 series.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
AUTOMAKE_OPTIONS = 1.4-p3
diff --git a/t/version6.sh b/t/version6.sh
index 74fa088cc..659394e21 100755
--- a/t/version6.sh
+++ b/t/version6.sh
@@ -16,7 +16,7 @@
# Make sure the current version can be required.
-. ./defs || exit 1
+. test-init.sh
amver=$($AUTOMAKE --version | sed -e 's/.* //;1q')
diff --git a/t/version7.sh b/t/version7.sh
index 812dc017b..93eed4d43 100755
--- a/t/version7.sh
+++ b/t/version7.sh
@@ -20,7 +20,7 @@
# changes -- we don't support this feature on non-GNU Makes).
required='makeinfo tex texi2dvi'
-. ./defs || exit 1
+. test-init.sh
cat >configure.ac <<END
m4_include([version.m4])
diff --git a/t/version8.sh b/t/version8.sh
index 28f754847..cff0f0275 100755
--- a/t/version8.sh
+++ b/t/version8.sh
@@ -16,7 +16,7 @@
# Calling AM_AUTOMAKE_VERSION by hand is a bug.
-. ./defs || exit 1
+. test-init.sh
echo 'AM_AUTOMAKE_VERSION([1.9])' >>configure.ac
$ACLOCAL 2>stderr && { cat stderr >&2; exit 0; }
diff --git a/t/vpath.sh b/t/vpath.sh
index dcb08ffb0..a67af17d8 100755
--- a/t/vpath.sh
+++ b/t/vpath.sh
@@ -17,7 +17,7 @@
# Test to make sure VPATH can be overridden.
# Report from Anthony Green.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
VPATH = zardoz
diff --git a/t/vtexi.sh b/t/vtexi.sh
index 5928ddd83..31b763ec3 100755
--- a/t/vtexi.sh
+++ b/t/vtexi.sh
@@ -17,7 +17,7 @@
# Basic checks and some regressions testing on 'version.texi'
# support for texinfo files.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = textutils.texi
diff --git a/t/vtexi2.sh b/t/vtexi2.sh
index 30f679fb7..aee1044e1 100755
--- a/t/vtexi2.sh
+++ b/t/vtexi2.sh
@@ -19,7 +19,7 @@
# version.texi gets listed as a dependency for the .info file but
# not the .dvi file.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
info_TEXINFOS = zardoz.texi
diff --git a/t/vtexi3.sh b/t/vtexi3.sh
index 9afadce05..a49579abe 100755
--- a/t/vtexi3.sh
+++ b/t/vtexi3.sh
@@ -20,7 +20,7 @@
# See also the related test 'vtexi4.sh', which does similar checks, but
# for version.texi only, and requires makeinfo, tex and texi2dvi.
-. ./defs || exit 1
+. test-init.sh
# We are going to override package version in AC_INIT, so we need
# to redefine the name of the distdir as well.
diff --git a/t/vtexi4.sh b/t/vtexi4.sh
index 3f2a89ba3..97345ac0b 100755
--- a/t/vtexi4.sh
+++ b/t/vtexi4.sh
@@ -21,8 +21,8 @@
# for more vers*.texi files, and does not require makeinfo, tex and
# texi2dvi.
-required='makeinfo tex texi2dvi-o grep-nonprint'
-. ./defs || exit 1
+required='makeinfo tex texi2dvi grep-nonprint'
+. test-init.sh
test $(LC_ALL=C date '+%u') -gt 0 && test $(LC_ALL=C date '+%u') -lt 8 \
&& day=$(LC_ALL=C date '+%d') && test -n "$day" \
diff --git a/t/warning-groups-win-over-strictness.sh b/t/warning-groups-win-over-strictness.sh
index 8824fa7b5..057ddaf05 100755
--- a/t/warning-groups-win-over-strictness.sh
+++ b/t/warning-groups-win-over-strictness.sh
@@ -19,7 +19,7 @@
# levels are "catch-all warnings" (such as '-Wall' and '-Wnone').
# Since we are at it, also throw in *.am and *.m4 file inclusions.
-. ./defs || exit 1
+. test-init.sh
# We want complete control over automake options.
AUTOMAKE=$am_original_AUTOMAKE
diff --git a/t/warnings-obsolete-default.sh b/t/warnings-obsolete-default.sh
index fc439eab9..7fbb1bc34 100755
--- a/t/warnings-obsolete-default.sh
+++ b/t/warnings-obsolete-default.sh
@@ -17,7 +17,7 @@
# Check that automake warnings in the 'obsolete' category are enabled
# by default.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE --foreign -Werror"
diff --git a/t/warnings-override.sh b/t/warnings-override.sh
index 756cac83b..94047a22a 100755
--- a/t/warnings-override.sh
+++ b/t/warnings-override.sh
@@ -21,7 +21,7 @@
# been in place for quite a long time); see also Automake bug #7673.
# Update this test if the semantics are changed.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE -Werror"
diff --git a/t/warnings-precedence.sh b/t/warnings-precedence.sh
index 4c15ecd7e..4a422342e 100755
--- a/t/warnings-precedence.sh
+++ b/t/warnings-precedence.sh
@@ -18,7 +18,7 @@
# warnings specified later should take precedence over those specified
# earlier.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE -Werror"
diff --git a/t/warnings-strictness-interactions.sh b/t/warnings-strictness-interactions.sh
index a2b6b403e..83537a20b 100755
--- a/t/warnings-strictness-interactions.sh
+++ b/t/warnings-strictness-interactions.sh
@@ -18,7 +18,7 @@
# in AUTOMAKE_OPTIONS take precedence over explicit warnings given in
# AM_INIT_AUTOMAKE.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE -Werror"
diff --git a/t/warnings-unknown.sh b/t/warnings-unknown.sh
index d1b2b8ca3..2677d0822 100755
--- a/t/warnings-unknown.sh
+++ b/t/warnings-unknown.sh
@@ -16,7 +16,7 @@
# Check that automake complains about unknown warnings.
-. ./defs || exit 1
+. test-init.sh
# We want (almost) complete control over automake options.
AUTOMAKE="$am_original_AUTOMAKE --foreign -Werror"
diff --git a/t/warnings-win-over-strictness.sh b/t/warnings-win-over-strictness.sh
index 087a70d72..eaeb8257d 100755
--- a/t/warnings-win-over-strictness.sh
+++ b/t/warnings-win-over-strictness.sh
@@ -17,7 +17,7 @@
# Check that, on the command line, explicitly-defined warnings take
# precedence over implicit strictness-implied warnings.
-. ./defs || exit 1
+. test-init.sh
# We want complete control over automake options.
AUTOMAKE=$am_original_AUTOMAKE
diff --git a/t/warnopts.sh b/t/warnopts.sh
index 68ceb2a84..65165b731 100755
--- a/t/warnopts.sh
+++ b/t/warnopts.sh
@@ -16,7 +16,7 @@
# Make sure that we can enable or disable warnings on a per-file basis.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<END
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/werror.sh b/t/werror.sh
index 01d76fc03..57f6d648b 100755
--- a/t/werror.sh
+++ b/t/werror.sh
@@ -16,7 +16,7 @@
# Test to make sure -Werror and --add-missing work together.
-. ./defs || exit 1
+. test-init.sh
: > Makefile.am
diff --git a/t/werror2.sh b/t/werror2.sh
index 52ec1811a..b1feeff21 100755
--- a/t/werror2.sh
+++ b/t/werror2.sh
@@ -19,7 +19,7 @@
# succeed if make is run a second time immediately afterwards.
# Report from Harlan Stenn.
-. ./defs || exit 1
+. test-init.sh
echo AC_OUTPUT>>configure.ac
diff --git a/t/werror3.sh b/t/werror3.sh
index a22ff8470..91e4dbc90 100755
--- a/t/werror3.sh
+++ b/t/werror3.sh
@@ -17,7 +17,7 @@
# Make sure a per-Makefile.am -Werror setting is not carried over
# to another Makefile.am.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<\END
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/werror4.sh b/t/werror4.sh
index 1b930d5e9..7908d1deb 100755
--- a/t/werror4.sh
+++ b/t/werror4.sh
@@ -16,7 +16,7 @@
# -Werror and local -Werror settings should be flagged for the user.
-. ./defs || exit 1
+. test-init.sh
cat >>configure.ac <<\END
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/whoami.sh b/t/whoami.sh
index 4a4c2e97d..6d0b13c4a 100755
--- a/t/whoami.sh
+++ b/t/whoami.sh
@@ -18,7 +18,7 @@
# from Johan Danielsson (and a very nice bug report, too, I might
# add).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
WHO_AM_I=17
diff --git a/t/xsource.sh b/t/xsource.sh
index cca400a75..8e2814b49 100755
--- a/t/xsource.sh
+++ b/t/xsource.sh
@@ -17,7 +17,7 @@
# Test to make sure multiple source files with the same object
# file causes error.
-. ./defs || exit 1
+. test-init.sh
cat > Makefile.am << 'END'
bin_PROGRAMS = zardoz
diff --git a/t/yacc-auxdir.sh b/t/yacc-auxdir.sh
index eb7357d9d..03175c9bb 100755
--- a/t/yacc-auxdir.sh
+++ b/t/yacc-auxdir.sh
@@ -17,7 +17,7 @@
# Test to make sure ylwrap is put in right location.
# Report from Tim Van Holder.
-. ./defs || exit 1
+. test-init.sh
mkdir aux1 sub
diff --git a/t/yacc-basic.sh b/t/yacc-basic.sh
index b1883385b..0d37382a3 100755
--- a/t/yacc-basic.sh
+++ b/t/yacc-basic.sh
@@ -18,7 +18,7 @@
# Keep in sync with sister test 'yacc-cxx.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-bison-skeleton-cxx.sh b/t/yacc-bison-skeleton-cxx.sh
index a02a25a8c..e64ec459b 100755
--- a/t/yacc-bison-skeleton-cxx.sh
+++ b/t/yacc-bison-skeleton-cxx.sh
@@ -18,7 +18,7 @@
# For Automake bug#7648 and PR automake/491.
required='c++ bison'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/yacc-bison-skeleton.sh b/t/yacc-bison-skeleton.sh
index f4fdf327d..d7623b376 100755
--- a/t/yacc-bison-skeleton.sh
+++ b/t/yacc-bison-skeleton.sh
@@ -18,7 +18,7 @@
# For Automake bug#7648 and PR automake/491.
required='cc bison'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-clean-cxx.sh b/t/yacc-clean-cxx.sh
index f30ce1b2a..7bc009df4 100755
--- a/t/yacc-clean-cxx.sh
+++ b/t/yacc-clean-cxx.sh
@@ -21,7 +21,7 @@
# See also sister test 'yacc-clean.sh'.
required='c++ yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/yacc-clean.sh b/t/yacc-clean.sh
index dce70a279..1f6664c9d 100755
--- a/t/yacc-clean.sh
+++ b/t/yacc-clean.sh
@@ -20,7 +20,7 @@
# See also sister test 'yacc-cxx-clean.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-cxx.sh b/t/yacc-cxx.sh
index 3c1babbfd..5d0eafc06 100755
--- a/t/yacc-cxx.sh
+++ b/t/yacc-cxx.sh
@@ -19,7 +19,7 @@
# Keep in sync with sister test 'yacc-basic.sh'.
required='c++ yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/yacc-d-basic.sh b/t/yacc-d-basic.sh
index 97155a2d5..1d2fc0756 100755
--- a/t/yacc-d-basic.sh
+++ b/t/yacc-d-basic.sh
@@ -19,7 +19,7 @@
# Keep in sync with sister test 'yacc-d-cxx.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-d-cxx.sh b/t/yacc-d-cxx.sh
index 5bd284e7d..a7b4aaa14 100755
--- a/t/yacc-d-cxx.sh
+++ b/t/yacc-d-cxx.sh
@@ -19,7 +19,7 @@
# Keep in sync with sister test 'yacc-d-basic.sh'.
required='c++ yacc'
-. ./defs || exit 1
+. test-init.sh
write_parse ()
{
diff --git a/t/yacc-d-vpath.sh b/t/yacc-d-vpath.sh
index 05019fb9e..483330e27 100755
--- a/t/yacc-d-vpath.sh
+++ b/t/yacc-d-vpath.sh
@@ -23,7 +23,7 @@
# Please keep this in sync with sister test 'yaccvpath.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-deleted-headers.sh b/t/yacc-deleted-headers.sh
index 952560d86..7dd9ded76 100755
--- a/t/yacc-deleted-headers.sh
+++ b/t/yacc-deleted-headers.sh
@@ -17,7 +17,7 @@
# Tests that we can recover from deleted headers generated by 'yacc -d'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-depend.sh b/t/yacc-depend.sh
index f7254a2e4..3730abb7e 100755
--- a/t/yacc-depend.sh
+++ b/t/yacc-depend.sh
@@ -18,7 +18,7 @@
# Report from Paolo Bonzini.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-depend2.sh b/t/yacc-depend2.sh
index 70f3f14cc..f20604dee 100755
--- a/t/yacc-depend2.sh
+++ b/t/yacc-depend2.sh
@@ -19,7 +19,7 @@
# with NetBSD make).
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-dist-nobuild-subdir.sh b/t/yacc-dist-nobuild-subdir.sh
index 0160c1098..f6064e7d4 100755
--- a/t/yacc-dist-nobuild-subdir.sh
+++ b/t/yacc-dist-nobuild-subdir.sh
@@ -19,7 +19,7 @@
# Exposes automake bug#8485.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
# This test is bounded to fail for any implementation that
# triggers automake bug#7884.
diff --git a/t/yacc-dist-nobuild.sh b/t/yacc-dist-nobuild.sh
index 40b833245..f23591e77 100755
--- a/t/yacc-dist-nobuild.sh
+++ b/t/yacc-dist-nobuild.sh
@@ -19,7 +19,7 @@
# See automake bug#7884.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-grepping.sh b/t/yacc-grepping.sh
index 19036c4c7..546f4ad54 100755
--- a/t/yacc-grepping.sh
+++ b/t/yacc-grepping.sh
@@ -23,7 +23,7 @@
# if (AM_)?YFLAGS do not contain '-d'.
# Requested by Jim Meyering.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-grepping2.sh b/t/yacc-grepping2.sh
index 4382ded62..f8dc92065 100755
--- a/t/yacc-grepping2.sh
+++ b/t/yacc-grepping2.sh
@@ -17,7 +17,7 @@
# Test of yacc functionality, derived from GNU binutils
# by Tim Van Holder.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-headers-and-dist-pr47.sh b/t/yacc-headers-and-dist-pr47.sh
index 5d7be75e5..49458bcd7 100755
--- a/t/yacc-headers-and-dist-pr47.sh
+++ b/t/yacc-headers-and-dist-pr47.sh
@@ -21,7 +21,7 @@
# PR/47.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-line.sh b/t/yacc-line.sh
index 525a455b2..1b2b4848e 100755
--- a/t/yacc-line.sh
+++ b/t/yacc-line.sh
@@ -20,7 +20,7 @@
# See also sister test 'lex-line.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_CONFIG_FILES([sub/Makefile])
diff --git a/t/yacc-mix-c-cxx.sh b/t/yacc-mix-c-cxx.sh
index fbc49d662..0ba3e4502 100755
--- a/t/yacc-mix-c-cxx.sh
+++ b/t/yacc-mix-c-cxx.sh
@@ -18,7 +18,7 @@
# in the same directory.
required='cc c++ yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-nodist.sh b/t/yacc-nodist.sh
index 2e9c7e86b..78191d9b1 100755
--- a/t/yacc-nodist.sh
+++ b/t/yacc-nodist.sh
@@ -21,7 +21,7 @@
# for lex-generated .c files.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-pr204.sh b/t/yacc-pr204.sh
index babd2c9d7..d45a30323 100755
--- a/t/yacc-pr204.sh
+++ b/t/yacc-pr204.sh
@@ -21,7 +21,7 @@
# for lex-generated C files.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'EOF'
AM_MAINTAINER_MODE
diff --git a/t/yacc-subdir.sh b/t/yacc-subdir.sh
index 3f12c5437..465f8287f 100755
--- a/t/yacc-subdir.sh
+++ b/t/yacc-subdir.sh
@@ -18,7 +18,7 @@
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc-weirdnames.sh b/t/yacc-weirdnames.sh
index ab43af3e5..028d9fa44 100755
--- a/t/yacc-weirdnames.sh
+++ b/t/yacc-weirdnames.sh
@@ -17,7 +17,7 @@
# Check that yacc sources with many dots in their name are handled
# correctly.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yacc4.sh b/t/yacc4.sh
index a0e121fb2..a4802d5fb 100755
--- a/t/yacc4.sh
+++ b/t/yacc4.sh
@@ -17,7 +17,7 @@
# Some simple tests of ylwrap functionality.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yaccdry.sh b/t/yaccdry.sh
index 8e5af56e6..bbfda87ba 100755
--- a/t/yaccdry.sh
+++ b/t/yaccdry.sh
@@ -17,7 +17,7 @@
# Removal recovery rules for headers should not remove files with 'make -n'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yaccpp.sh b/t/yaccpp.sh
index 30ad7bcad..1bcf37955 100755
--- a/t/yaccpp.sh
+++ b/t/yaccpp.sh
@@ -19,7 +19,7 @@
# which does much more in-depth checks (but requires an actual
# Yacc program and a working C++ compiler).
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CXX
diff --git a/t/yaccvpath.sh b/t/yaccvpath.sh
index e56ca8e4d..c881f0726 100755
--- a/t/yaccvpath.sh
+++ b/t/yaccvpath.sh
@@ -23,7 +23,7 @@
# Please keep this in sync with sister test 'yacc-d-vpath.sh'.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac << 'END'
AC_PROG_CC
diff --git a/t/yflags-cmdline-override.sh b/t/yflags-cmdline-override.sh
index e53358acd..367a0c691 100755
--- a/t/yflags-cmdline-override.sh
+++ b/t/yflags-cmdline-override.sh
@@ -18,7 +18,7 @@
# at configure time and/or at make time.
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
unset YFLAGS || :
diff --git a/t/yflags-conditional.sh b/t/yflags-conditional.sh
index 676561395..d7fc7e051 100755
--- a/t/yflags-conditional.sh
+++ b/t/yflags-conditional.sh
@@ -17,7 +17,7 @@
# Check that automake complains about *_YFLAGS variables which have
# conditional content.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/yflags-d-false-positives.sh b/t/yflags-d-false-positives.sh
index 5b120dde4..0cae14fb4 100755
--- a/t/yflags-d-false-positives.sh
+++ b/t/yflags-d-false-positives.sh
@@ -16,7 +16,7 @@
# Check for false positives in automake recognition of '-d' in YFLAGS.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/yflags-force-conditional.sh b/t/yflags-force-conditional.sh
index a8404b784..96455bbfa 100755
--- a/t/yflags-force-conditional.sh
+++ b/t/yflags-force-conditional.sh
@@ -17,7 +17,7 @@
# Check that the user can force automake to use *_YFLAGS variables
# which have conditional content.
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_SUBST([CC], [false])
diff --git a/t/yflags-force-override.sh b/t/yflags-force-override.sh
index 8682637ed..d7ed7a12a 100755
--- a/t/yflags-force-override.sh
+++ b/t/yflags-force-override.sh
@@ -19,7 +19,7 @@
# variable is user-reserved).
required='cc yacc'
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/yflags-var-expand.sh b/t/yflags-var-expand.sh
index 789cc2c70..23aea1485 100755
--- a/t/yflags-var-expand.sh
+++ b/t/yflags-var-expand.sh
@@ -19,7 +19,7 @@
# foo_flags = -d
# AM_YFLAGS = $(foo_flags)
-. ./defs || exit 1
+. test-init.sh
cat >> configure.ac <<'END'
AC_PROG_CC
diff --git a/t/yflags.sh b/t/yflags.sh
index 6a6bea7ff..bb453edd6 100755
--- a/t/yflags.sh
+++ b/t/yflags.sh
@@ -19,7 +19,7 @@
# Please keep this in sync with the sister tests yflags2.sh, lflags.sh
# and lflags2.sh.
-. ./defs || exit 1
+. test-init.sh
cat >fake-yacc <<'END'
#!/bin/sh
diff --git a/t/yflags2.sh b/t/yflags2.sh
index d9b913c65..b2a8114e8 100755
--- a/t/yflags2.sh
+++ b/t/yflags2.sh
@@ -19,7 +19,7 @@
# Please keep this in sync with the sister tests yflags.sh, lflags.sh
# and lflags2.sh.
-. ./defs || exit 1
+. test-init.sh
cat >fake-yacc <<'END'
#!/bin/sh