Merge branch 'maint'
authorStefano Lattarini <stefano.lattarini@gmail.com>
Mon, 13 Aug 2012 12:05:40 +0000 (14:05 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Mon, 13 Aug 2012 12:05:40 +0000 (14:05 +0200)
* maint:
  tests: rework tests on AM_PATH_PYTHON
  cosmetics: fix typos and references in comments
  typofix: in a test diagnostic
  readme: fixlets to HACKING

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
39 files changed:
1  2 
doc/automake.texi
lib/am/check.am
t/acloca22.sh
t/aclocal5.sh
t/check-subst.sh
t/color-tests.sh
t/color-tests2.sh
t/confh7.sh
t/confh8.sh
t/distcom4.sh
t/java-compile-run-flat.sh
t/java-compile-run-nested.sh
t/lisp5.sh
t/list-of-tests.mk
t/parallel-tests-dry-run-1.sh
t/parallel-tests-dry-run-2.sh
t/primary-prefix-valid-couples.sh
t/remake10c.sh
t/remake8a.sh
t/remake8b.sh
t/silent-many-gcc.sh
t/silent-many-generic.sh
t/silent-yacc.sh
t/silent.sh
t/silent2.sh
t/silent3.sh
t/silent4.sh
t/silent9.sh
t/silentcxx-gcc.sh
t/silentcxx.sh
t/silentf77.sh
t/silentf90.sh
t/subdir-add2-pr46.sh
t/txinfo23.sh
t/txinfo24.sh
t/txinfo25.sh
t/txinfo28.sh
t/txinfo33.sh
t/vtexi4.sh

diff --combined doc/automake.texi
@@@ -115,6 -115,7 +115,6 @@@ section entitled ``GNU Free Documentati
  * Conditionals::                Conditionals
  * Silencing Make::              Obtain less verbose output from @command{make}
  * Gnits::                       The effect of @option{--gnu} and @option{--gnits}
 -* Cygnus::                      The effect of @option{--cygnus} (deprecated, soon to be removed)
  * Not Enough::                  When Automake is not Enough
  * Distributing::                Distributing the Makefile.in
  * API Versioning::              About compatibility between Automake versions
@@@ -189,6 -190,7 +189,6 @@@ Auto-generating aclocal.m
  Autoconf macros supplied with Automake
  
  * Public Macros::               Macros that you can use.
 -* Obsolete Macros::             Macros that will soon be removed.
  * Private Macros::              Macros that you should not use.
  
  Directories
@@@ -358,9 -360,9 +358,9 @@@ Conditional
  
  Silencing Make
  
 -* Make verbosity::               Make is verbose by default
 -* Tricks For Silencing Make::    Standard and generic ways to silence make
 -* Automake silent-rules Option:: How Automake can help in silencing make
 +* Make verbosity::              Make is verbose by default
 +* Tricks For Silencing Make::   Standard and generic ways to silence make
 +* Automake Silent Rules::       How Automake can help in silencing make
  
  When Automake Isn't Enough
  
@@@ -1953,6 -1955,14 +1953,6 @@@ standard is actually published (which m
  @xref{Gnits}, for more information on the precise implications of the
  strictness level.
  
 -Automake also has a special (and @emph{today deprecated}) ``cygnus'' mode
 -that is similar to strictness but handled differently.  This mode is
 -useful for packages that are put into a ``Cygnus'' style tree (e.g., older
 -versions of the GCC and gdb trees).  @xref{Cygnus}, for more information
 -on this mode.  Please note that this mode @emph{is deprecated and will be
 -removed in the next major Automake release (1.13)}; you must avoid its use
 -in new packages, and should stop using it in existing packages as well.
 -
  
  @node Uniform
  @section The Uniform Naming Scheme
@@@ -2281,6 -2291,9 +2281,6 @@@ generate not only the desired output bu
  that is then used by the automatic dependency tracking feature
  (@pxref{Dependencies}).
  
 -@item elisp-comp
 -This program is used to byte-compile Emacs Lisp code.
 -
  @item install-sh
  This is a replacement for the @command{install} program that works on
  platforms where @command{install} is unavailable or unusable.
@@@ -2291,9 -2304,9 +2291,9 @@@ a file and prints some date informatio
  
  @item missing
  This wraps a number of programs that are typically only required by
 -maintainers.  If the program in question doesn't exist,
 -@command{missing} prints an informative warning and attempts to fix
 -things so that the build can continue.
 +maintainers.  If the program in question doesn't exist, or seems to old,
 +@command{missing} will print an informative warning before failing out,
 +to provide the user with more context and information.
  
  @item mkinstalldirs
  This script used to be a wrapper around @samp{mkdir -p}, which is not
@@@ -2587,6 -2600,13 +2587,6 @@@ scripts and data files (like e.g., @fil
  When used with @option{--add-missing}, causes installed files to be
  copied.  The default is to make a symbolic link.
  
 -@item --cygnus
 -@opindex --cygnus
 -Causes the generated @file{Makefile.in}s to follow Cygnus rules, instead
 -of GNU or Gnits rules.  For more information, see @ref{Cygnus}.
 -Note that @emph{this mode of operation is deprecated, and will be removed}
 -in the next major Automake release (1.13).
 -
  @item -f
  @opindex -f
  @itemx --force-missing
@@@ -2693,6 -2713,8 +2693,6 @@@ variables
  The categories output by default are @samp{syntax} and
  @samp{unsupported}.  Additionally, @samp{gnu} and @samp{portability}
  are enabled in @option{--gnu} and @option{--gnits} strictness.
 -On the other hand, the @option{silent-rules} options (@pxref{Options})
 -turns off portability warnings about recursive variable expansions.
  
  @c Checked by extra-portability.sh
  Turning off @samp{portability} will also turn off @samp{extra-portability},
@@@ -2926,6 -2948,7 +2926,6 @@@ Automake will look for various helper s
  @file{config.guess},
  @file{config.sub},
  @file{depcomp},
 -@file{elisp-comp},
  @file{compile},
  @file{install-sh},
  @file{ltmain.sh},
@@@ -2958,8 -2981,8 +2958,8 @@@ macro
  
  @item AC_CONFIG_HEADERS
  Automake will generate rules to rebuild these headers.  Older versions
 -of Automake required the use of @code{AM_CONFIG_HEADER}
 -(@pxref{Macros}); this is no longer the case.
 +of Automake required the use of @code{AM_CONFIG_HEADER}; this is no
 +longer the case, and that macro has indeed been removed.
  
  As with @code{AC_CONFIG_FILES} (@pxref{Requirements}), parts of the
  specification using shell variables will be ignored as far as
@@@ -3601,19 -3624,32 +3601,19 @@@ henceforth be visible to @command{autoc
  numerous macros, it will rapidly become difficult to maintain, and it
  will be almost impossible to share macros between packages.
  
 -@vindex ACLOCAL_AMFLAGS
  The second possibility, which we do recommend, is to write each macro
 -in its own file and gather all of these files in a directory.  This
 -directory is usually called @file{m4/}.  To build @file{aclocal.m4},
 -one should therefore instruct @command{aclocal} to scan @file{m4/}.
 -From the command line, this is done with @samp{aclocal -I m4}.  The
 -top-level @file{Makefile.am} should also be updated to define
 -
 -@example
 -ACLOCAL_AMFLAGS = -I m4
 -@end example
 -
 -@code{ACLOCAL_AMFLAGS} contains options to pass to @command{aclocal}
 -when @file{aclocal.m4} is to be rebuilt by @command{make}.  This line is
 -also used by @command{autoreconf} (@pxref{autoreconf Invocation, ,
 -Using @command{autoreconf} to Update @file{configure} Scripts,
 -autoconf, The Autoconf Manual}) to run @command{aclocal} with suitable
 -options, or by @command{autopoint} (@pxref{autopoint Invocation, ,
 -Invoking the @command{autopoint} Program, gettext, GNU gettext tools})
 -and @command{gettextize} (@pxref{gettextize Invocation, , Invoking the
 -@command{gettextize} Program, gettext, GNU gettext tools}) to locate
 -the place where Gettext's macros should be installed.  So even if you
 -do not really care about the rebuild rules, you should define
 -@code{ACLOCAL_AMFLAGS}.
 -
 -When @samp{aclocal -I m4} is run, it will build an @file{aclocal.m4}
 +in its own file and gather all these files in a directory.  This
 +directory is usually called @file{m4/}.  Then it's enough to update
 +@file{configure.ac} by adding a proper call to @code{AC_CONFIG_MACRO_DIR}:
 +
 +@example
 +AC_CONFIG_MACRO_DIR([m4])
 +@end example
 +
 +@command{aclocal} will then take care of automatically adding @file{m4/}
 +to its search path for m4 files.
 +
 +When @samp{aclocal} is run, it will build an @file{aclocal.m4}
  that @code{m4_include}s any file from @file{m4/} that defines a
  required macro.  Macros not found locally will still be searched in
  system-wide directories, as explained in @ref{Macro Search Path}.
@@@ -3642,14 -3678,19 +3642,14 @@@ this requirement will hinder developmen
  such third-party macros in your local @file{m4/} directory so they get
  distributed.
  
 -Since Automake 1.10, @command{aclocal} offers an option to copy these
 -system-wide third-party macros in your local macro directory, solving
 -the above problem.  Simply use:
 -
 -@example
 -ACLOCAL_AMFLAGS = -I m4 --install
 -@end example
 +Since Automake 1.10, @command{aclocal} offers the option @code{--install}
 +to copy these system-wide third-party macros in your local macro directory,
 +helping to solve the above problem.
  
 -@noindent
  With this setup, system-wide macros will be copied to @file{m4/}
 -the first time you run @command{autoreconf}.  Then the locally
 -installed macros will have precedence over the system-wide installed
 -macros each time @command{aclocal} is run again.
 +the first time you run @command{aclocal}.  Then the locally installed
 +macros will have precedence over the system-wide installed macros
 +each time @command{aclocal} is run again.
  
  One reason why you should keep @option{--install} in the flags even
  after the first run is that when you later edit @file{configure.ac}
@@@ -3730,14 -3771,16 +3730,14 @@@ MyPackage uses an @file{m4/} directory 
  explained in @ref{Local Macros}, and has
  
  @example
 -ACLOCAL_AMFLAGS = -I m4 --install
 +AC_CONFIG_MACRO_DIR([m4])
  @end example
  
  @noindent
 -in its top-level @file{Makefile.am}.
 +in its @file{configure.ac}.
  
  Initially the @file{m4/} directory is empty.  The first time we run
 -@command{autoreconf}, it will fetch the options to pass to
 -@command{aclocal} in @file{Makefile.am}, and run @samp{aclocal -I m4
 ---install}.  @command{aclocal} will notice that
 +@command{aclocal --install}, it will notice that
  
  @itemize @bullet
  @item
@@@ -3755,8 -3798,9 +3755,8 @@@ and @command{aclocal} was given the @op
  copy this file in @file{m4/thirdparty.m4}, and output an
  @file{aclocal.m4} that contains @samp{m4_include([m4/thirdparty.m4])}.
  
 -The next time @samp{aclocal -I m4 --install} is run (either via
 -@command{autoreconf}, by hand, or from the @file{Makefile} rebuild
 -rules) something different happens.  @command{aclocal} notices that
 +The next time @samp{aclocal --install} is run, something different
 +happens.  @command{aclocal} notices that
  
  @itemize @bullet
  @item
@@@ -3782,8 -3826,8 +3782,8 @@@ the system-wide file in case of equal s
  
  Now suppose the system-wide third-party macro is changed.  This can
  happen if the package installing this macro is updated.  Let's suppose
 -the new macro has serial number 2.  The next time @samp{aclocal -I m4
 ---install} is run the situation is the following:
 +the new macro has serial number 2.  The next time @samp{aclocal --install}
 +is run the situation is the following:
  
  @itemize @bullet
  @item
@@@ -3809,16 -3853,16 +3809,16 @@@ macro in @file{m4/thirdparty.m4}, in th
  version.  MyPackage just had its macro updated as a side effect of
  running @command{aclocal}.
  
 -If you are leery of letting @command{aclocal} update your local macro,
 -you can run @samp{aclocal -I m4 --diff} to review the changes
 -@samp{aclocal -I m4 --install} would perform on these macros.
 +If you are leery of letting @command{aclocal} update your local
 +macro, you can run @samp{aclocal --diff} to review the changes
 +@samp{aclocal --install} would perform on these macros.
  
  Finally, note that the @option{--force} option of @command{aclocal} has
  absolutely no effect on the files installed by @option{--install}.  For
  instance, if you have modified your local macros, do not expect
  @option{--install --force} to replace the local macros by their
  system-wide versions.  If you want to do so, simply erase the local
 -macros you want to revert, and run @samp{aclocal -I m4 --install}.
 +macros you want to revert, and run @samp{aclocal --install}.
  
  
  @node Future of aclocal
@@@ -3879,6 -3923,7 +3879,6 @@@ Automake ships with several Autoconf ma
  
  @menu
  * Public Macros::               Macros that you can use.
 -* Obsolete Macros::             Macros that will soon be removed.
  * Private Macros::              Macros that you should not use.
  @end menu
  
  Runs many macros required for proper operation of the generated Makefiles.
  
  @vindex AUTOMAKE_OPTIONS
 -Today, @code{AM_INIT_AUTOMAKE} is called with a single argument: a
 -space-separated list of Automake options that should
 -be applied to every @file{Makefile.am} in the tree.  The effect is as if
 -each option were listed in @code{AUTOMAKE_OPTIONS} (@pxref{Options}).
 +@code{AM_INIT_AUTOMAKE} is called with a single argument: a space-separated
 +list of Automake options that should be applied to every @file{Makefile.am}
 +in the tree.  The effect is as if each option were listed in
 +@code{AUTOMAKE_OPTIONS} (@pxref{Options}).
 +
 +@c FIXME: Remove this "modernization advice" in Automake 1.14 (and adjust
 +@c FIXME: the error message in m4/init.m4:AM_INIT_AUTOMAKE accordingly).
  
  @acindex AC_INIT
 -This macro can also be called in @emph{another, deprecated form} (support
 -for which will be @emph{removed in the next major Automake release (1.13)}):
 +This macro could once (before Automake 1.13) also be called in the
 +@emph{now obsolete and completely unsupported} form
  @code{AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])}.  In this form,
 -there are two required arguments: the package and the version number.
 -This form is obsolete because the @var{package} and @var{version} can
 -be obtained from Autoconf's @code{AC_INIT} macro (which itself has an
 -old and a new form).
 +there were two required arguments: the package and the version number.
  
  @anchor{Modernize AM_INIT_AUTOMAKE invocation}
  If your @file{configure.ac} has:
@@@ -3917,8 -3962,7 +3917,8 @@@ AM_INIT_AUTOMAKE([mumble], [1.5]
  @end example
  
  @noindent
 -you should modernize it as follows:
 +you must modernize it as follows in order to make it work with Automake
 +1.13 or later:
  
  @example
  AC_INIT([mumble], [1.5])
@@@ -4030,8 -4074,7 +4030,8 @@@ the @command{missing} script is appropr
  
  @item AM_SILENT_RULES
  @acindex AM_SILENT_RULES
 -Enable the machinery for less verbose build output (@pxref{Options}).
 +Control the machinery for less verbose build output
 +(@pxref{Automake Silent Rules}).
  
  @item AM_WITH_DMALLOC
  @acindex AM_WITH_DMALLOC
@@@ -4045,6 -4088,67 +4045,6 @@@ define @code{WITH_DMALLOC} and add @opt
  @end table
  
  
 -@node Obsolete Macros
 -@subsection Obsolete Macros
 -@cindex obsolete macros
 -@cindex autoupdate
 -
 -Although using some of the following macros was required in past
 -releases, you should not use any of them in new code.  @emph{All
 -these macros will be removed in the next major Automake version};
 -if you are still using them, running @command{autoupdate} should
 -adjust your @file{configure.ac} automatically (@pxref{autoupdate
 -Invocation, , Using @command{autoupdate} to Modernize
 -@file{configure.ac}, autoconf, The Autoconf Manual}).
 -@emph{Do it NOW!}
 -
 -@table @code
 -
 -@item AM_CONFIG_HEADER
 -@acindex AM_CONFIG_HEADER
 -Automake will generate rules to automatically regenerate the config
 -header.  This obsolete macro is a synonym of @code{AC_CONFIG_HEADERS}
 -today (@pxref{Optional}).
 -
 -@item AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
 -@acindex AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
 -If the use of @code{TIOCGWINSZ} requires @file{<sys/ioctl.h>}, then
 -define @code{GWINSZ_IN_SYS_IOCTL}.  Otherwise @code{TIOCGWINSZ} can be
 -found in @file{<termios.h>}.  This macro is obsolete, you should
 -use Autoconf's @code{AC_HEADER_TIOCGWINSZ} instead.
 -
 -@item AM_PROG_MKDIR_P
 -@acindex AM_PROG_MKDIR_P
 -@cindex @code{mkdir -p}, macro check
 -@vindex MKDIR_P
 -@vindex mkdir_p
 -
 -From Automake 1.8 to 1.9.6 this macro used to define the output
 -variable @code{mkdir_p} to one of @code{mkdir -p}, @code{install-sh
 --d}, or @code{mkinstalldirs}.
 -
 -Nowadays Autoconf provides a similar functionality with
 -@code{AC_PROG_MKDIR_P} (@pxref{Particular Programs, , Particular
 -Program Checks, autoconf, The Autoconf Manual}), however this defines
 -the output variable @code{MKDIR_P} instead.  In case you are still
 -using the @code{AM_PROG_MKDIR_P} macro in your @file{configure.ac},
 -or its provided variable @code{$(mkdir_p)} in your @file{Makefile.am},
 -you are advised to switch ASAP to the more modern Autoconf-provided
 -interface instead; both the macro and the variable @emph{will be
 -removed} in the next major Automake release.
 -
 -@item AM_SYS_POSIX_TERMIOS
 -@acindex AM_SYS_POSIX_TERMIOS
 -@cindex POSIX termios headers
 -@cindex termios POSIX headers
 -Check to see if POSIX termios headers and functions are available on the
 -system.  If so, set the shell variable @code{am_cv_sys_posix_termios} to
 -@samp{yes}.  If not, set the variable to @samp{no}.  This macro is obsolete,
 -you should use Autoconf's @code{AC_SYS_POSIX_TERMIOS} instead.
 -
 -@end table
 -
 -
  @node Private Macros
  @subsection Private Macros
  
@@@ -4179,34 -4283,6 +4179,34 @@@ will be built.  It is customary to arra
  built after everything else since they are meant to test what has
  been constructed.
  
 +In addition to the built-in recursive targets defined by Automake
 +(@code{all}, @code{check}, etc.), the developer can also define his
 +own recursive targets.  That is done by passing the names of such
 +targets as arguments to the m4 macro @code{AM_EXTRA_RECURSIVE_TARGETS}
 +in @file{configure.ac}.  Automake generates rules to handle the
 +recursion for such targets; and the developer can define real actions
 +for them by defining corresponding @code{-local} targets.
 +
 +@example
 +% @kbd{cat configure.ac}
 +AC_INIT([pkg-name], [1.0]
 +AM_INIT_AUTOMAKE
 +AM_EXTRA_RECURSIVE_TARGETS([foo])
 +AC_CONFIG_FILES([Makefile sub/Makefile sub/src/Makefile])
 +AC_OUTPUT
 +% @kbd{cat Makefile.am}
 +SUBDIRS = sub
 +foo-local:
 +        @@echo This will be run by "make foo".
 +% @kbd{cat sub/Makefile.am}
 +SUBDIRS = src
 +% @kbd{cat sub/src/Makefile.am}
 +foo-local:
 +        @@echo This too will be run by a "make foo" issued either in
 +        @@echo the 'sub/src/' directory, the 'sub/' directory, or the
 +        @@echo top-level directory.
 +@end example
 +
  @node Conditional Subdirectories
  @section Conditional Subdirectories
  @cindex Subdirectories, building conditionally
@@@ -5430,8 -5506,9 +5430,8 @@@ The libtool rules also use a @code{LIBT
  not be set in @file{Makefile.am}: this is a user variable (@pxref{Flag
  Variables Ordering}.  It allows users to run @samp{make
  LIBTOOLFLAGS=--silent}, for instance.  Note that the verbosity of
 -@command{libtool} can also be influenced with the Automake
 -@option{silent-rules} option (@pxref{Options}).
 -
 +@command{libtool} can also be influenced by the Automake support
 +for silent rules (@pxref{Automake Silent Rules}).
  
  @node LTLIBOBJS, Libtool Issues, Libtool Flags, A Shared Library
  @subsection @code{LTLIBOBJS} and @code{LTALLOCA}
@@@ -6060,9 -6137,9 +6060,9 @@@ Automake already provides some @option{
  separate variable that is also passed to every compilation that invokes
  the C preprocessor.  In particular it generates @samp{-I.},
  @samp{-I$(srcdir)}, and a @option{-I} pointing to the directory holding
 -@file{config.h} (if you've used @code{AC_CONFIG_HEADERS} or
 -@code{AM_CONFIG_HEADER}).  You can disable the default @option{-I}
 -options using the @option{nostdinc} option.
 +@file{config.h} (if you've used @code{AC_CONFIG_HEADERS}).  You can
 +disable the default @option{-I} options using the @option{nostdinc}
 +option.
  
  When a file to be included is generated during the build and not part
  of a distribution tarball, its location is under @code{$(builddir)},
@@@ -7469,10 -7546,7 +7469,10 @@@ Lisp sources are not distributed by def
  distributed.
  
  Automake will byte-compile all Emacs Lisp source files using the Emacs
 -found by @code{AM_PATH_LISPDIR}, if any was found.
 +found by @code{AM_PATH_LISPDIR}, if any was found.  When performing such
 +byte-compilation, the flags specified in the (developer-reserved)
 +@code{AM_ELCFLAGS} and (user-reserved) @code{ELCFLAGS} make variables
 +will be passed to the Emacs invocation.
  
  Byte-compiled Emacs Lisp files are not portable among all versions of
  Emacs, so it makes sense to turn this off if you expect sites to have
@@@ -8418,7 -8492,7 +8418,7 @@@ dist-hook
          rm -rf `find $(distdir)/doc -type d -name .svn`
  @end example
  
- @c The caveates described here should be documented in 'disthook.test'.
+ @c The caveates described here should be documented in 'disthook.sh'.
  @noindent
  Note that the @code{dist-hook} recipe shouldn't assume that the regular
  files in the distribution directory are writable; this might not be the
@@@ -8770,20 -8844,21 +8770,20 @@@ also data files to be passed to one or 
  different means (the so-called ``log compilers'', @pxref{Parallel Test
  Harness}).
  
 -Test scripts can be executed serially or concurrently.  Automake
 -supports both these kinds of test execution, with the serial test harness
 -being the default (for backward-compatibility reasons only, as its use
 -is nowadays discouraged).  The concurrent test harness relies on the
 -concurrence capabilities (if any) offered by the underlying @command{make}
 +Test scripts can be executed serially or concurrently.  Automake supports
 +both these kinds of test execution, with the parallel test harness being
 +the default.  The concurrent test harness relies on the concurrence
 +capabilities (if any) offered by the underlying @command{make}
  implementation, and can thus only be as good as those are.
  
  By default, only the exit statuses of the test scripts are considered when
  determining the testsuite outcome.  But Automake allows also the use of
  more complex test protocols, either standard (@pxref{Using the TAP test
 -protocol}) or custom (@pxref{Custom Test Drivers}).  Note that you can
 -enable such protocols only when the parallel harness is used: they won't
 -work with the serial test harness.  In the rest of this section we are
 -going to concentrate mostly on protocol-less tests, since we cover
 -test protocols in a later section (again, @pxref{Custom Test Drivers}).
 +protocol}) or custom (@pxref{Custom Test Drivers}).  Note that you can't
 +enable such protocols when the serial harness is used, though.
 +In the rest of this section we are going to concentrate mostly on
 +protocol-less tests, since we cover test protocols in a later section
 +(again, @pxref{Custom Test Drivers}).
  
  @cindex Exit status 77, special interpretation
  @cindex Exit status 99, special interpretation
  @anchor{Simple tests and color-tests}
  @vindex AM_COLOR_TESTS
  @cindex Colorized testsuite output
 -If the Automake option @code{color-tests} is used (@pxref{Options})
 -and standard output is connected to a capable terminal, then the test
 -results and the summary are colored appropriately.  The user can disable
 -colored output by setting the @command{make} variable
 -@samp{AM_COLOR_TESTS=no}, or force colored output even without a connecting
 -terminal with @samp{AM_COLOR_TESTS=always}.  It's also worth noting that
 -some @command{make} implementations, when used in parallel mode, have
 -slightly different semantics (@pxref{Parallel make,,, autoconf,
 -The Autoconf Manual}), which can break the automatic detection of a
 -connection to a capable terminal.  If this is the case, you'll have to
 -resort to the use of @samp{AM_COLOR_TESTS=always} in order to have the
 -testsuite output colorized.
 +If the standard output is connected to a capable terminal, then the test
 +results and the summary are colored appropriately.  The developer and the
 +user can disable colored output by setting the @command{make} variable
 +@samp{AM_COLOR_TESTS=no}; the user can in addition force colored output
 +even without a connecting terminal with @samp{AM_COLOR_TESTS=always}.  
 +It's also worth noting that some @command{make} implementations,
 +when used in parallel mode, have slightly different semantics
 +(@pxref{Parallel make,,, autoconf, The Autoconf Manual}), which can
 +break the automatic detection of a connection to a capable terminal.
 +If this is the case, the user will have to resort to the use of
 +@samp{AM_COLOR_TESTS=always} in order to have the testsuite output
 +colorized.
  
  Test programs that need data files should look for them in @code{srcdir}
  (which is both a make variable and an environment variable made available
@@@ -8929,12 -9004,14 +8929,12 @@@ by the tests, not the tests themselves
  @code{TESTS = $(check_PROGRAMS)} if all your programs are test cases.
  
  @node Serial Test Harness
 -@subsection Serial Test Harness
 +@subsection Older (and obsolescent) serial test harness
  @cindex @option{serial-tests}, Using
  
 -@emph{NOTE:} This harness, while still being the default one, is
 -obsolescent, and kept mostly for backward-compatibility reasons.  The user
 -is advised to use the parallel test harness instead (@pxref{Parallel Test
 -Harness}).  Be warned that future Automake versions might switch to use
 -that more modern and feature-rich harness by default.
 +@emph{This harness is obsolescent}, and kept for backward-compatibility
 +reasons only.  The user is strongly advised to just use the parallel test
 +harness instead (@pxref{Parallel Test Harness}).
  
  The serial test harness is enabled by the Automake option
  @option{serial-tests}. It operates by simply running the tests serially,
@@@ -8969,12 -9046,14 +8969,12 @@@ versions
  
  @node Parallel Test Harness
  @subsection Parallel Test Harness
 -@cindex @option{parallel-tests}, Using
  
 -The parallel (or concurrent) test harness is enabled by the Automake option
 -@option{parallel-tests}.  It features automatic collection of the test
 -scripts output in @file{.log} files, concurrent execution of tests with
 -@code{make -j}, specification of inter-test dependencies, lazy reruns of
 -tests that have not completed in a prior run, and hard errors for exceptional
 -failures.
 +By default, Automake generated a parallel (concurrent) test harness.  It
 +features automatic collection of the test scripts output in @file{.log}
 +files, concurrent execution of tests with @code{make -j}, specification
 +of inter-test dependencies, lazy reruns of tests that have not completed
 +in a prior run, and hard errors for exceptional failures.
  
  This harness is still somewhat experimental and may undergo changes in
  order to satisfy additional portability requirements.
@@@ -9178,7 -9257,7 +9178,7 @@@ parallel @command{make -j@var{N}}, so b
  concurrent execution.
  
  @cindex Unit tests
- @c Keep in sync with 'parallel-tests-extra-programs.test'.
+ @c Keep in sync with 'parallel-tests-extra-programs.sh'.
  The combination of lazy test execution and correct dependencies between
  tests and their sources may be exploited for efficient unit testing
  during development.  To further speed up the edit-compile-test cycle, it
@@@ -9278,9 -9357,9 +9278,9 @@@ definition of generic and extension-spe
  @end itemize
  
  @noindent
 -On the other hand, the exact semantics of how (and if)
 -@option{color-tests}, @code{XFAIL_TESTS}, and hard errors are supported
 -and handled is left to the individual test drivers.
 +On the other hand, the exact semantics of how (and if) testsuite output
 +colorization, @code{XFAIL_TESTS}, and hard errors are supported and
 +handled is left to the individual test drivers.
  
  @c TODO: We should really add a working example in the doc/ directory,
  @c TODO: and reference if from here.
@@@ -9342,10 -9421,11 +9342,10 @@@ with the parallel test harness and its 
  @subsubsection Command-line arguments for test drivers
  
  A custom driver can rely on various command-line options and arguments
 -being passed to it automatically by the Automake's @option{parallel-tests}
 -harness.  It is @emph{mandatory} that it understands all of them (even
 -if the exact interpretation of the associated semantics can legitimately
 -change between a test driver and another, and even be a no-op in some
 -drivers).
 +being passed to it automatically by the Automake-generated test harness.
 +It is @emph{mandatory} that it understands all of them (even if the exact
 +interpretation of the associated semantics can legitimately change
 +between a test driver and another, and even be a no-op in some drivers).
  
  @noindent
  Here is the list of options:
@@@ -9389,9 -9469,9 +9389,9 @@@ for this program
  Note that the exact semantics attached to the @option{--color-tests},
  @option{--expect-failure} and @option{--enable-hard-errors} options are
  left up to the individual test drivers.  Still, having a behaviour
 -compatible or at least similar to that provided by the default
 -@option{parallel-tests} driver is advised, as that would offer a better
 -consistency and a more pleasant user experience.
 +compatible or at least similar to that provided by the default driver
 +is advised, as that would offer a better consistency and a more pleasant
 +user experience.
  
  @node Log files generation and test results recording
  @subsubsection Log files generation and test results recording
@@@ -9433,10 -9513,10 +9433,10 @@@ The only recognized test results are cu
  @code{SKIP}, @code{FAIL}, @code{XPASS} and @code{ERROR}.  These results,
  when declared with @code{:test-result:}, can be optionally followed by
  text holding the name and/or a brief description of the corresponding
 -test; the @option{parallel-tests} harness will ignore such extra text when
 -generating @file{test-suite.log} and preparing the testsuite summary.
 +test; the harness will ignore such extra text when generating
 +@file{test-suite.log} and preparing the testsuite summary.
  
- @c Keep in sync with 'test-metadata-recheck.test'.
+ @c Keep in sync with 'test-metadata-recheck.sh'.
  @item @code{:recheck:}
  @cindex :recheck:
  @cindex reStructuredText field, @code{:recheck:}
@@@ -9445,7 -9525,7 +9445,7 @@@ test script will @emph{not} be run upo
  happens when two or more @code{:recheck:} fields are present in the same
  @file{.trs} file is undefined behaviour.
  
- @c Keep in sync with 'test-metadata-global-log.test'.
+ @c Keep in sync with 'test-metadata-global-log.sh'.
  @item @code{:copy-in-global-log:}
  @cindex :copy-in-global-log:
  @cindex reStructuredText field, @code{:copy-in-global-log:}
@@@ -9457,7 -9537,7 +9457,7 @@@ just a waste of space in normal situati
  successful.  What happens when two or more @code{:copy-in-global-log:}
  fields are present in the same @file{.trs} file is undefined behaviour.
  
- @c Keep in sync with 'test-metadata-global-result.test'.
+ @c Keep in sync with 'test-metadata-global-result.sh'.
  @item @code{:test-global-result:}
  @cindex :test-global-result:
  @cindex reStructuredText field, @code{:test-global-result:}
@@@ -9542,7 -9622,7 +9542,7 @@@ on standard output; a test harness (als
  parse and interpret these results, and properly present them to the user,
  and/or register them for later analysis.  The exact details of how this
  is accomplished can vary among different test harnesses.  The Automake
 -parallel harness will present the results on the console in the usual
 +harness will present the results on the console in the usual
  fashion (@pxref{Testsuite progress on console}), and will use the
  @file{.trs} files (@pxref{Basics of test metadata}) to store the test
  results and related metadata.  Apart from that, it will try to remain
@@@ -9582,7 -9662,7 +9582,7 @@@ supports the following options, whose n
  compatibility with the @command{prove} utility.
  
  @table @option
- @c Keep in sync with 'tap-exit.test' and 'tap-signal.tap'.
+ @c Keep in sync with 'tap-exit.sh' and 'tap-signal.tap'.
  @item --ignore-exit
  Causes the test driver to ignore the exit status of the test scripts;
  by default, the driver will report an error if the script exits with a
@@@ -9626,7 -9706,7 +9626,7 @@@ Here is an example of how the TAP drive
  % @kbd{cat configure.ac}
  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
@@@ -9707,7 -9787,7 +9707,7 @@@ mainstream versions, which you should b
  A @code{Bail out!} directive doesn't stop the whole testsuite, but only
  the test script it occurs in.  This doesn't follow TAP specifications,
  but on the other hand it maximizes compatibility (and code sharing) with
 -the ``hard error'' concept of the default @option{parallel-tests} driver.
 +the ``hard error'' concept of the default testsuite driver.
  @item
  The @code{version} and @code{pragma} directives are not supported.
  @item
@@@ -9831,6 -9911,15 +9831,6 @@@ Automake generates rules to automatical
  If you are using @code{AM_MAINTAINER_MODE} in @file{configure.ac}, then
  these automatic rebuilding rules are only enabled in maintainer mode.
  
 -@vindex ACLOCAL_AMFLAGS
 -Sometimes you need to run @command{aclocal} with an argument like
 -@option{-I} to tell it where to find @file{.m4} files.  Since
 -sometimes @command{make} will automatically run @command{aclocal}, you
 -need a way to specify these arguments.  You can do this by defining
 -@code{ACLOCAL_AMFLAGS}; this holds arguments that are passed verbatim
 -to @command{aclocal}.  This variable is only useful in the top-level
 -@file{Makefile.am}.
 -
  @vindex CONFIG_STATUS_DEPENDENCIES
  @vindex CONFIGURE_DEPENDENCIES
  @cindex @file{version.sh}, example
@@@ -9873,8 -9962,27 +9873,8 @@@ be read as a side effect of running @co
  in the example above.
  
  Speaking of @file{version.sh} scripts, we recommend against them
 -today.  They are mainly used when the version of a package is updated
 -automatically by a script (e.g., in daily builds).  Here is what some
 -old-style @file{configure.ac}s may look like:
 -
 -@example
 -AC_INIT
 -. $srcdir/version.sh
 -AM_INIT_AUTOMAKE([name], $VERSION_NUMBER)
 -@dots{}
 -@end example
 -
 -@noindent
 -Here, @file{version.sh} is a shell fragment that sets
 -@code{VERSION_NUMBER}.  The problem with this example is that
 -@command{automake} cannot track dependencies (listing @file{version.sh}
 -in @command{CONFIG_STATUS_DEPENDENCIES}, and distributing this file is up
 -to the user), and that it uses the obsolete form of @code{AC_INIT} and
 -@code{AM_INIT_AUTOMAKE}.  Upgrading to the new syntax is not
 -straightforward, because shell variables are not allowed in
 -@code{AC_INIT}'s arguments.  We recommend that @file{version.sh} be
 -replaced by an M4 file that is included by @file{configure.ac}:
 +today.  We recommend that @file{version.sh} be replaced by an M4 file
 +that is included by @file{configure.ac}:
  
  @example
  m4_include([version.m4])
@@@ -9888,7 -9996,9 +9888,7 @@@ Here @file{version.m4} could contain so
  @samp{m4_define([VERSION_NUMBER], [1.2])}.  The advantage of this
  second form is that @command{automake} will take care of the
  dependencies when defining the rebuild rule, and will also distribute
 -the file automatically.  An inconvenience is that @command{autoconf}
 -will now be rerun each time the version number is bumped, when only
 -@file{configure} had to be rerun in the previous setup.
 +the file automatically.
  
  
  @node Options
@@@ -9956,12 -10066,15 +9956,12 @@@ then @samp{portability} warnings will b
  @item @option{gnits}
  @itemx @option{gnu}
  @itemx @option{foreign}
 -@itemx @option{cygnus}
  @cindex Option, @option{gnits}
  @cindex Option, @option{gnu}
  @cindex Option, @option{foreign}
 -@cindex Option, @option{cygnus}
  @opindex gnits
  @opindex gnu
  @opindex foreign
 -@opindex cygnus
  
  Set the strictness as appropriate.  The @option{gnits} option also
  implies options @option{readme-alpha} and @option{check-news}.
  Cause @samp{make dist} to fail unless the current version number appears
  in the first few lines of the @file{NEWS} file.
  
 -@item @option{color-tests}
 -@cindex Option, @option{color-tests}
 -@opindex color-tests
 -Cause output of the serial and parallel test harnesses (see @ref{Simple
 -Tests}) and of properly-written custom test drivers (@pxref{Custom Test
 -Drivers}) to be colorized on capable terminals.
 -
  @item @option{dejagnu}
  @cindex Option, @option{dejagnu}
  @opindex dejagnu
@@@ -10089,19 -10209,18 +10089,19 @@@ are ordinarily automatically provided b
  Don't require @file{texinfo.tex}, even if there are texinfo files in
  this directory.
  
 -@item @option{parallel-tests}
 -@cindex Option, @option{parallel-tests}
 -@opindex parallel-tests
 -Enable test suite harness for @code{TESTS} that can run tests in parallel
 -(@pxref{Parallel Test Harness}, for more information).
 -
  @item @option{serial-tests}
  @cindex Option, @option{serial-tests}
  @opindex serial-tests
  Enable the older serial test suite harness for @code{TESTS} (@pxref{Serial
 -Test Harness}, for more information).  This is still the default for the
 -moment.
 +Test Harness}, for more information).
 +
 +@item @option{parallel-tests}
 +@cindex Option, @option{parallel-tests}
 +@opindex parallel-tests
 +Enable test suite harness for @code{TESTS} that can run tests in parallel
 +(@pxref{Parallel Test Harness}, for more information).  This option is
 +only kept for backward-compatibility, since the parallel test harness is
 +the default now.
  
  @item @option{readme-alpha}
  @cindex Option, @option{readme-alpha}
@@@ -10115,6 -10234,23 +10115,6 @@@ non-alpha releases.  The second form i
  @samp{@var{major}.@var{minor}@var{alpha}}, where @var{alpha} is a
  letter; it should be omitted for non-alpha releases.
  
 -@item @option{silent-rules}
 -@cindex Option, @option{silent-rules}
 -@opindex silent-rules
 -Enable less verbose build rules.  This can be used to let build rules
 -output status lines of the form:
 -@example
 -GEN @var{output-file}
 - CC @var{object-file}
 -@end example
 -@noindent
 -instead of printing the command that will be executed to update
 -@var{output-file} or to compile @var{object-file}.  It can also
 -silence @command{libtool} output.
 -
 -For more information about how to use, enable, or disable silent
 -rules, @pxref{Automake silent-rules Option}.
 -
  @item @option{std-options}
  @cindex Options, @option{std-options}
  @cindex @samp{make installcheck}, testing @option{--help} and @option{--version}
@@@ -10596,9 -10732,9 +10596,9 @@@ Libtool Sources})
  @cindex Silent @command{make} rules
  
  @menu
 -* Make verbosity::               Make is verbose by default
 -* Tricks For Silencing Make::    Standard and generic ways to silence make
 -* Automake silent-rules Option:: How Automake can help in silencing make
 +* Make verbosity::              Make is verbose by default
 +* Tricks For Silencing Make::   Standard and generic ways to silence make
 +* Automake Silent Rules::       How Automake can help in silencing make
  @end menu
  
  @node Make verbosity
@@@ -10633,8 -10769,8 +10633,8 @@@ the easy detection of potentially impor
  
  Here we describe some common idioms/tricks to obtain a quieter make
  output, with their relative advantages and drawbacks.  In the next
 -section (@ref{Automake silent-rules Option}) we'll see how Automake
 -can help in this respect.
 +section (@ref{Automake Silent Rules}) we'll see how Automake can help
 +in this respect, providing more elaborate and flexible idioms.
  
  @itemize @bullet
  
@@@ -10686,19 -10822,20 +10686,19 @@@ automatically activated if the @option{
  
  @end itemize
  
 -@node Automake silent-rules Option
 +@node Automake Silent Rules
  @section How Automake can help in silencing make
  
  The tricks and idioms for silencing @command{make} described in the
  previous section can be useful from time to time, but we've seen that
  they all have their serious drawbacks and limitations.  That's why
  automake provides support for a more advanced and flexible way of
 -obtaining quieter output from @command{make}: the @option{silent-rules}
 -mode.
 +obtaining quieter output from @command{make} (for most rules at least).
  
  @c TODO: Maybe describe in brief the precedent set by the build system
  @c of the Linux Kernel, from which Automake took inspiration ... Links?
  
 -To give the gist of what @option{silent-rules} can do, here is a simple
 +To give the gist of what Automake can do in this respect, here is a simple
  comparison between a typical @command{make} output (where silent rules
  are disabled) and one with silent rules enabled:
  
@@@ -10747,7 -10884,7 +10747,7 @@@ func.c:4:3: warning: â€˜i’ used unini
    CCLD   foo
  @end example
  
 -@cindex silent-rules and libtool
 +@cindex silent rules and libtool
  Also, in projects using @command{libtool}, the use of silent rules can
  automatically enable the @command{libtool}'s @option{--silent} option:
  
@@@ -10773,9 -10910,26 +10773,9 @@@ libtool: link: cd .libs && rm -f libx.s
    CCLD   libx.la
  @end example
  
 -Let's now see how the @option{silent-rules} mode interfaces with the
 -package developer and the package user.
 -
 -To enable the use of @option{silent-rules} in his package, a developer
 -needs to do either of the following:
 -
 -@itemize @bullet
 -@item
 -Add the @option{silent-rules} option as argument to @code{AM_INIT_AUTOMAKE}.
 -@item
 -Call the @code{AM_SILENT_RULES} macro from within the @file{configure.ac}
 -file.
 -@end itemize
 -
 -It is not possible to instead specify @option{silent-rules} in a
 -@file{Makefile.am} file.
 -
 -If the developer has done either of the above, then the user of the
 -package may influence the verbosity at @command{configure} run time as
 -well as at @command{make} run time:
 +For Automake-generated @file{Makefile}s, the user may influence the
 +verbosity at @command{configure} run time as well as at @command{make}
 +run time:
  
  @itemize @bullet
  @item
@@@ -10791,16 -10945,17 +10791,16 @@@ time may be overridden: @code{make V=1
  @code{make V=0} less verbose output.
  @end itemize
  
 -@cindex default verbosity for silent-rules
 +@cindex default verbosity for silent rules
  Note that silent rules are @emph{disabled} by default; the user must
  enable them explicitly at either @command{configure} run time or at
  @command{make} run time.  We think that this is a good policy, since
  it provides the casual user with enough information to prepare a good
  bug report in case anything breaks.
  
 -Still, notwithstanding the rationales above, a developer who wants to
 -make silent rules enabled by default in his own package can do so by
 -adding a @samp{yes} argument to the @code{AM_SILENT_RULES} call in
 -@file{configure.ac}.  We advise against this approach, though.
 +Still, notwithstanding the rationales above, a developer who really
 +wants to make silent rules enabled by default in his own package can
 +do so by calling @code{AM_SILENT_RULES([yes])} in @file{configure.ac}.
  
  @c Keep in sync with silent-configsite.sh
  Users who prefer to have silent rules enabled by default can edit their
@@@ -10813,13 -10968,16 +10813,13 @@@ For portability to different @command{m
  are advised to not set the variable @code{V} inside the @file{Makefile.am}
  file, to allow the user to override the value for subdirectories as well.
  
 -The current implementation of this feature normally uses nested
 -variable expansion @samp{$(@var{var1}$(V))}, a @file{Makefile} feature
 -that is not required by POSIX 2008 but is widely supported in
 -practice.  The @option{silent-rules} option thus turns off warnings
 -about recursive variable expansion, which are in turn enabled by
 -@option{-Wportability} (@pxref{automake Invocation}).  On the rare
 -@command{make} implementations that do not support nested variable
 -expansion, whether rules are silent is always determined at configure
 -time, and cannot be overridden at make time.  Future versions of POSIX
 -are likely to require nested variable expansion, so this minor
 +To work at its best, the current implementation of this feature normally
 +uses nested variable expansion @samp{$(@var{var1}$(V))}, a @file{Makefile}
 +feature that is not required by POSIX 2008 but is widely supported in
 +practice.  On the rare @command{make} implementations that do not support
 +nested variable expansion, whether rules are silent is always determined at
 +configure time, and cannot be overridden at make time.  Future versions of
 +POSIX are likely to require nested variable expansion, so this minor
  limitation should go away with time.
  
  @vindex @code{AM_V_GEN}
@@@ -10944,6 -11102,64 +10944,6 @@@ The file @file{THANKS} is required
  @end itemize
  
  
 -@node Cygnus
 -@chapter The effect of @option{--cygnus}
 -
 -@cindex @option{cygnus} strictness
 -
 -@emph{The features described in this section are deprecated; you must
 -not use any of them in new code, and should remove their use from older
 -but still maintained code: they will be withdrawn the next major Automake
 -release (1.13).}
 -
 -Some packages, notably GNU GCC and GNU gdb, used to have a build
 -environment originally written at Cygnus Support (subsequently renamed
 -Cygnus Solutions, and then later purchased by Red Hat).  Packages with
 -this ancestry are sometimes referred to as ``Cygnus'' trees.
 -
 -A Cygnus tree has slightly different rules for how a
 -@file{Makefile.in} is to be constructed.  Passing @option{--cygnus} to
 -@command{automake} will cause any generated @file{Makefile.in} to
 -comply with Cygnus rules.
 -
 -Here are the precise effects of @option{--cygnus}:
 -
 -@itemize @bullet
 -
 -@item
 -The @option{foreign} strictness is implied.
 -
 -@item
 -The options @option{no-installinfo}, @option{no-dependencies} and
 -@option{no-dist} are implied (@pxref{Options}).
 -
 -@item
 -The macro @code{AM_MAINTAINER_MODE} is required.
 -
 -@item
 -Info files are always created in the build directory, and not in the
 -source directory.  Packages that don't use the @option{cygnus} option
 -can emulate this effect by using the @option{no-installinfo} option
 -and listing the generated info files in the @code{CLEANFILES} variable.
 -
 -@item
 -@file{texinfo.tex} is not required if a Texinfo source file is
 -specified.  The assumption is that the file will be supplied, but in a
 -place that Automake cannot find -- it is an artifact of how Cygnus
 -packages are typically bundled.  This effect can be emulated in
 -packages not using the @option{cygnus} option with a proper definition
 -of the @code{TEXINFO_TEX} variable (@pxref{Texinfo}).
 -
 -@item
 -Certain tools will be searched for in the build tree as well as in the
 -user's @env{PATH}.  These tools are @command{runtest}, @command{expect},
 -@command{makeinfo} and @command{texi2dvi}.
 -
 -@item
 -The @code{check} target doesn't depend on @code{all}.
 -@end itemize
 -
 -
  @node Not Enough
  @chapter When Automake Isn't Enough
  
  
  Packages made with Autoconf and Automake ship with some generated
  files like @file{configure} or @file{Makefile.in}.  These files were
 -generated on the developer's host and are distributed so that
 +generated on the developer's machine and are distributed so that
  end-users do not have to install the maintainer tools required to
  rebuild them.  Other generated files like Lex scanners, Yacc parsers,
  or Info documentation, are usually distributed on similar grounds.
  
 -Automake outputs rules in @file{Makefile}s to rebuild these files.  For
 +Automake output rules in @file{Makefile}s to rebuild these files.  For
  instance, @command{make} will run @command{autoconf} to rebuild
  @file{configure} whenever @file{configure.ac} is changed.  This makes
  development safer by ensuring a @file{configure} is never out-of-date
@@@ -11566,41 -11782,10 +11566,41 @@@ If users use @command{cvs update} to up
  inaccurate.  Some rebuild rules will be triggered and attempt to
  run developer tools such as @command{autoconf} or @command{automake}.
  
 -Actually, calls to such tools are all wrapped into a call to the
 -@command{missing} script discussed later (@pxref{maintainer-mode}).
 -@command{missing} will take care of fixing the timestamps when these
 -tools are not installed, so that the build can continue.
 +Calls to such tools are all wrapped into a call to the @command{missing}
 +script discussed later (@pxref{maintainer-mode}), so that the user will
 +see more descriptive warnings about missing or out-of-date tools, and
 +possible suggestions about how to obtain them, rather than just some
 +``command not found'' error, or (worse) some obscure message from some
 +older version of the required tool they happen to have installed.
 +
 +Maintainers interested in keeping their package buildable from a CVS
 +checkout even for those users that lack maintainer-specific tools might
 +want to provide an helper script (or to enhance their existing bootstrap
 +script) to fix the timestamps after a
 +@command{cvs update} or a @command{git checkout}, to prevent spurious
 +rebuilds.  In case of a project committing the Autotools-generated
 +files, as well as the generated @file{.info} files, such script might
 +look something like this:
 +
 +@smallexample
 +#!/bin/sh
 +# fix-timestamp.sh: prevents useless rebuilds after "cvs update"
 +sleep 1
 +# aclocal-generated aclocal.m4 depends on locally-installed
 +# '.m4' macro files, as well as on 'configure.ac'
 +touch aclocal.m4
 +sleep 1
 +# autoconf-generated configure depends on aclocal.m4 and on
 +# configure.ac
 +configure config.h.in
 +# so does autoheader-generated config.h.in
 +configure config.h.in
 +# and all the automake-generated Makefile.in files
 +touch `find . -name Makefile.in -print`
 +# finally, the makeinfo-generated '.info' files depend on the
 +# corresponding '.texi' files
 +touch doc/*.info
 +@end smallexample
  
  @item
  In distributed development, developers are likely to have different
@@@ -11697,20 -11882,20 +11697,20 @@@ tools shouldn't be required during a us
  checked for in @file{configure}.
  
  However, if for some reason a rebuild rule is triggered and involves a
 -missing tool, @command{missing} will notice it and warn the user.
 -Besides the warning, when a tool is missing, @command{missing} will
 -attempt to fix timestamps in a way that allows the build to continue.
 -For instance, @command{missing} will touch @file{configure} if
 -@command{autoconf} is not installed.  When all distributed files are
 -kept under version control, this feature of @command{missing} allows a
 -user @emph{with no maintainer tools} to build a package off its version
 -control repository, bypassing any timestamp inconsistency (implied by
 -e.g.@: @samp{cvs update} or @samp{git clone}).
 +missing tool, @command{missing} will notice it and warn the user, even
 +suggesting how to obtain such a tool (at least in case it is a well-known
 +one, like @command{makeinfo} or @command{bison}).  This is more helpful
 +and user-friendly than just having the rebuild rules spewing out a terse
 +error message like @samp{sh: @var{tool}: command not found}.  Similarly,
 +@command{missing} will warn the user if it detects that a maintainer
 +tool it attempted to use seems too old (be warned that diagnosing this
 +correctly is typically more difficult that detecting missing tools, and
 +requires cooperation from the tool itself, so it won't always work).
  
  If the required tool is installed, @command{missing} will run it and
  won't attempt to continue after failures.  This is correct during
  development: developers love fixing failures.  However, users with
 -wrong versions of maintainer tools may get an error when the rebuild
 +missing or too old maintainer tools may get an error when the rebuild
  rule is spuriously triggered, halting the build.  This failure to let
  the build continue is one of the arguments of the
  @code{AM_MAINTAINER_MODE} advocates.
@@@ -12275,6 -12460,13 +12275,6 @@@ obeys this naming scheme.  The slight d
  @code{MAKEFLAGS} is passed to sub-@command{make}s implicitly by
  @command{make} itself.
  
 -However you should not think that all variables ending with
 -@code{FLAGS} follow this convention.  For instance,
 -@code{DISTCHECK_CONFIGURE_FLAGS} (@pxref{Checking the Distribution}) and
 -@code{ACLOCAL_AMFLAGS} (see @ref{Rebuilding} and @ref{Local Macros}),
 -are two variables that are only useful to the maintainer and have no
 -user counterpart.
 -
  @code{ARFLAGS} (@pxref{A Library}) is usually defined by Automake and
  has neither @code{AM_} nor per-target cousin.
  
@@@ -12873,8 -13065,8 +12873,8 @@@ generated by @command{automake} effecti
  
  @itemize
  @item
 -If less verbose output has been enabled in the package with the
 -@samp{silent-rules} option (@pxref{Options}), you can use
 +If less verbose output has been enabled in the package with the use
 +of silent rules (@pxref{Automake Silent Rules}), you can use
  @code{make V=1} to see the commands being executed.
  @item
  @code{make -n} can help show what would be done without actually doing
@@@ -12991,7 -13183,7 +12991,7 @@@ suite failures, please attach the @file
  @c  LocalWords:  texinfo setfilename settitle setchapternewpage texi direntry
  @c  LocalWords:  dircategory in's aclocal ifinfo titlepage Tromey vskip pt sp
  @c  LocalWords:  filll defcodeindex ov cv op tr syncodeindex fn cp vr ifnottex
 -@c  LocalWords:  dir Automake's ac Dist Gnits gnits cygnus dfn Autoconf's pxref
 +@c  LocalWords:  dir Automake's ac Dist Gnits gnits dfn Autoconf's pxref
  @c  LocalWords:  cindex Autoconf autoconf perl samp cvs dist trindex SUBST foo
  @c  LocalWords:  xs emph FIXME ref vindex pkglibdir pkgincludedir pkgdatadir mt
  @c  LocalWords:  pkg libdir cpio bindir sbindir rmt pax sbin zar zardir acindex
diff --combined lib/am/check.am
@@@ -17,7 -17,7 +17,7 @@@
  am__tty_colors_dummy = \
    mgn= red= grn= lgn= blu= brg= std=; \
    am__color_tests=no
 -if %?COLOR%
 +
  am__tty_colors = { \
    $(am__tty_colors_dummy); \
    if test "X$(AM_COLOR_TESTS)" = Xno; then \
      std='\e[m'; \
    fi; \
  }
 -else !%?COLOR%
 -am__tty_colors = $(am__tty_colors_dummy)
 -endif !%?COLOR%
  
  .PHONY: check-TESTS
  
 -if %?PARALLEL_TESTS%
 +if !%?SERIAL_TESTS%
  
  include inst-vars.am
  
@@@ -218,7 -221,7 +218,7 @@@ $(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRON
  # '$bases'.  This honors runtime overriding of TESTS and TEST_LOGS.  Sadly,
  # we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)",
  # since that might cause problem with VPATH rewrites for suffix-less tests.
- # See also 'test-harness-vpath-rewrite.test' and 'test-trs-basic.test'.
+ # See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'.
  am__set_TESTS_bases = \
    bases='$(TEST_LOGS)'; \
    bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
@@@ -447,7 -450,7 +447,7 @@@ recheck: all %CHECK_DEPS
  ##     we must ensure that any '.log' and '.trs' file referring to such
  ##     test are preserved, so that future "make recheck" invocations
  ##     will still try to re-compile and re-run it (automake bug#11791).
- ## The tricky recusrive make invocation below should cater to such
+ ## The tricky recursive make invocation below should cater to such
  ## requirements.
        $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \
                am__force_recheck=am--force-recheck \
@@@ -460,9 -463,7 +460,9 @@@ AM_RECURSIVE_TARGETS += check rechec
  
  .PHONY: recheck
  
 -else !%?PARALLEL_TESTS%
 +else %?SERIAL_TESTS%
 +
 +## Obsolescent serial testsuite driver.
  
  check-TESTS: $(TESTS)
        @failed=0; all=0; xfail=0; xpass=0; skip=0; \
          test "$$failed" -eq 0; \
        else :; fi
  
 -endif !%?PARALLEL_TESTS%
 +endif %?SERIAL_TESTS%
diff --combined t/acloca22.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Make sure the "deleted header file" issue is fixed w.r.t. aclocal.m4
- # dependencies.  See also related the tests 'remake-deleted-m4-file.test'
- # and 'remake-renamed-m4-macro-and-file.test'.
+ # dependencies.  See also related the tests 'remake-deleted-m4-file.sh'
+ # and 'remake-renamed-m4-macro-and-file.sh'.
  
  . ./defs || exit 1
  
  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
@@@ -49,7 -46,6 +49,7 @@@
  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 --combined t/aclocal5.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test to make sure that aclocal.m4's dependencies are honored in
- # sub-directories.  See also related tests 'remake-subdir*.test'.
+ # sub-directories.  See also related tests 'remake-subdir*.sh'.
  
  . ./defs || exit 1
  
  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 +44,10 @@@ $MAK
  
  # 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 +58,10 @@@ grep GREPME sub/Makefil
  $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 --combined t/check-subst.sh
@@@ -16,8 -16,8 +16,8 @@@
  
  # 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.test'.
+ # See also sister test 'check-subst-prog.sh'.
  
  # For gen-testsuite-part: ==> try-with-serial-tests <==
  . ./defs || exit 1
diff --combined t/color-tests.sh
@@@ -15,7 -15,7 +15,7 @@@
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test Automake TESTS color output, by forcing it.
- # Keep this in sync with the sister test 'color2.test'.
+ # Keep this in sync with the sister test 'color2.sh'.
  
  required='grep-nonprint'
  # For gen-testsuite-part: ==> try-with-serial-tests <==
@@@ -34,6 -34,7 +34,6 @@@ AC_OUTPU
  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 --combined t/color-tests2.sh
@@@ -15,7 -15,7 +15,7 @@@
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test Automake TESTS color output, using the expect(1) program.
- # Keep this in sync with the sister test 'color.test'.
+ # Keep this in sync with the sister test 'color.sh'.
  
  required='grep-nonprint'
  # For gen-testsuite-part: ==> try-with-serial-tests <==
@@@ -58,14 -58,12 +58,14 @@@ rm -f expect-check Makefil
  
  # 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
@@@ -184,18 -182,6 +184,18 @@@ for vpath in false :; d
    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 --combined t/confh7.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test to make sure several config headers are allowed.
- # See also sister "semantic" test 'confh8.test'.
+ # See also sister "semantic" test 'confh8.sh'.
  
  . ./defs || exit 1
  
  cat >> configure.ac << 'END'
 -AM_CONFIG_HEADER([config.h two.h])
 +AC_CONFIG_HEADERS([config.h two.h])
  END
  
  : > Makefile.am
diff --combined t/confh8.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test to make sure several config headers are allowed.
- # See also sister "minimalistic" test 'confh7.test'.
+ # See also sister "minimalistic" test 'confh7.sh'.
  
  . ./defs || exit 1
  
  cat >> configure.ac << 'END'
 -AM_CONFIG_HEADER([one.h two.h])
 +AC_CONFIG_HEADERS([one.h two.h])
  AC_OUTPUT
  END
  
diff --combined t/distcom4.sh
@@@ -16,8 -16,9 +16,8 @@@
  
  # Test to make sure config files are distributed, and only once.
  # This tries to distribute a file from a subdirectory, without
- # Makefile in that directory.  distcom5.test performs the same
+ # 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
  
@@@ -70,5 -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
  
  :
@@@ -19,9 -19,9 +19,9 @@@
  # "UNIX-style" use case.
  # This test uses a "flat" setup for the source tree (i.e., everything in
  # the top-level directory), and forces the use of the old, non-parallel
- # testsuite driver.  The sister test 'java-compile-run-nested.test' do
+ # 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
  # 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.test' 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.
++# 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
diff --combined t/lisp5.sh
@@@ -14,7 -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/>.
  
- # Same as lisp4.test, but using the now-recommended way to install
+ # Same as 'lisp4.sh', but using the now-recommended way to install
  # non-bytecompiled *.el files.
  
  required=emacs
@@@ -31,6 -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 --combined t/list-of-tests.mk
@@@ -84,7 -84,6 +84,7 @@@ t/acloca11.sh 
  t/acloca12.sh \
  t/acloca13.sh \
  t/acloca14.sh \
 +t/acloca14b.sh \
  t/acloca15.sh \
  t/acloca16.sh \
  t/acloca17.sh \
@@@ -93,12 -92,9 +93,12 @@@ t/acloca19.sh 
  t/acloca20.sh \
  t/acloca21.sh \
  t/acloca22.sh \
 +t/acloca22b.sh \
  t/acloca23.sh \
  t/aclocal-acdir.sh \
  t/aclocal-install-absdir.sh \
 +t/aclocal-macrodir.tap \
 +t/aclocal-amflags.sh \
  t/aclocal-print-acdir.sh \
  t/aclocal-path.sh \
  t/aclocal-path-install.sh \
@@@ -109,7 -105,6 +109,7 @@@ t/aclocal-install-fail.sh 
  t/aclocal-install-mkdir.sh \
  t/aclocal-no-install-no-mkdir.sh \
  t/aclocal-verbose-install.sh \
 +t/aclocal-autoconf-version-check.sh \
  t/ac-output-old.tap \
  t/acsilent.sh \
  t/acsubst.sh \
@@@ -124,7 -119,7 +124,7 @@@ t/alpha2.sh 
  t/amhello-cflags.sh \
  t/amhello-cross-compile.sh \
  t/amhello-binpkg.sh \
 -t/aminit-moreargs-deprecation.sh \
 +t/aminit-moreargs-no-more.sh \
  t/amassign.sh \
  t/am-macro-not-found.sh \
  t/amopt.sh \
@@@ -159,6 -154,7 +159,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/autohdrdry.sh \
@@@ -172,7 -168,12 +172,7 @@@ t/auxdir-computed.tap 
  t/auxdir-misplaced.sh \
  t/auxdir-nonexistent.sh \
  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 \
@@@ -215,6 -216,7 +215,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 \
@@@ -225,9 -227,8 +225,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 \
@@@ -334,7 -335,13 +334,7 @@@ t/cxxlibobj.sh 
  t/cxxlink.sh \
  t/cxxnoc.sh \
  t/cxxo.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 \
@@@ -488,6 -495,7 +488,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 \
@@@ -626,13 -634,8 +626,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 \
@@@ -662,6 -665,7 +662,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 \
@@@ -672,22 -676,29 +672,22 @@@ 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 \
 -t/mkdirp-deprecation.sh \
  t/mkinstall.sh \
  t/mkinst2.sh \
  t/mkinst3.sh \
  t/mmode.sh \
  t/mmodely.sh \
 -t/multlib.sh \
  t/no-extra-makefile-code.sh \
  t/no-outdir-option.sh \
  t/nobase.sh \
  t/nobase-libtool.sh \
  t/nobase-python.sh \
  t/nobase-nodist.sh \
 -t/nodef.sh \
  t/nodef2.sh \
  t/nodep.sh \
  t/nodep2.sh \
@@@ -711,6 -722,7 +711,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 \
@@@ -736,6 -748,7 +736,6 @@@ t/parallel-am2.sh 
  t/parallel-am3.sh \
  t/serial-tests.sh \
  t/parallel-tests.sh \
 -t/parallel-tests2.sh \
  t/parallel-tests3.sh \
  t/parallel-tests5.sh \
  t/parallel-tests6.sh \
@@@ -874,31 -887,18 +874,27 @@@ t/py-compile-usage.sh 
  t/python.sh \
  t/python2.sh \
  t/python3.sh \
- t/python4.sh \
- t/python5.sh \
- t/python5b.sh \
- t/python6.sh \
- t/python7.sh \
- t/python8.sh \
- t/python9.sh \
  t/python10.sh \
  t/python11.sh \
  t/python12.sh \
+ t/python-am-path-iftrue.sh \
+ t/python-missing.sh \
+ t/python-too-old.sh \
  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.sh \
  t/remake1a.sh \
@@@ -922,7 -922,6 +918,7 @@@ t/remake11.sh 
  t/remake12.sh \
  t/remake-all-1.sh \
  t/remake-all-2.sh \
 +t/remake-recurs-user.sh \
  t/remake-subdir-from-subdir.sh \
  t/remake-subdir-gnu.sh \
  t/remake-subdir.sh \
@@@ -942,8 -941,6 +938,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/pr8365-remake-timing.sh \
  t/req.sh \
  t/reqd.sh \
@@@ -970,12 -967,15 +966,12 @@@ 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-lex.sh \
@@@ -1165,6 -1165,8 +1161,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,6 -1186,7 +1180,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 \
@@@ -1212,11 -1215,11 +1208,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 \
@@@ -14,8 -14,8 +14,8 @@@
  # 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.test'.
+ # See also sister test 'parallel-tests-dry-run-2.sh'.
  
  . ./defs || exit 1
  
@@@ -14,8 -14,8 +14,8 @@@
  # 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.test'.
+ # See also sister test 'parallel-tests-dry-run-1.sh'.
  
  . ./defs || exit 1
  
@@@ -15,7 -15,7 +15,7 @@@
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test for valid prefix/primary combinations.
- # See also test 'primary-prefix-invalid-couples.test'.
+ # See also test 'primary-prefix-invalid-couples.sh'.
  
  . ./defs || exit 1
  
@@@ -41,6 -41,7 +41,6 @@@ EN
  echo '@setfilename foo' > foo.texi
  : > texinfo.tex
  : > py-compile
 -: > elisp-comp
  : > ar-lib
  
  # Setup Makefile.am.
diff --combined t/remake10c.sh
@@@ -16,7 -16,7 +16,7 @@@
  
  # Test remake rules for m4 files included (also recursively) by
  # aclocal.m4.
- # Keep in sync with sister tests 'remake10a.test' and 'remake10b.test'.
+ # Keep in sync with sister tests 'remake10a.sh' and 'remake10b.sh'.
  
  . ./defs || exit 1
  
@@@ -31,13 -31,13 +31,13 @@@ els
  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.
@@@ -50,7 -50,7 +50,7 @@@ EN
  mkdir m4
  echo 'AC_DEFUN([my_fingerprint], [BadBadBad])' > m4/foo.m4
  
 -$ACLOCAL -I m4
 +$ACLOCAL
  $AUTOCONF
  $AUTOMAKE
  
diff --combined t/remake8a.sh
@@@ -18,7 -18,7 +18,7 @@@
  # This testcase checks dependency of generated Makefile from Makefile.am,
  # configure.ac, acinclude.m4, aclocal.m4, and extra m4 files considered
  # by aclocal.
- # Keep this in sync with sister test 'remake8b.test', which performs the
+ # Keep this in sync with sister test 'remake8b.sh', which performs the
  # same checks for a VPATH build.
  
  . ./defs || exit 1
@@@ -43,7 -43,7 +43,7 @@@ $ACLOCA
  $AUTOCONF
  $AUTOMAKE
  
- srcdir='.' # To make syncing with remake8b.test easier.
+ srcdir='.' # To make syncing with remake8b.sh easier.
  
  $srcdir/configure
  
@@@ -110,29 -110,29 +110,29 @@@ $MAKE distchec
  
  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 --combined t/remake8b.sh
@@@ -18,7 -18,7 +18,7 @@@
  # This testcase checks dependency of generated Makefile from Makefile.am,
  # configure.ac, acinclude.m4, aclocal.m4, and extra m4 files considered
  # by aclocal.
- # Keep this in sync with sister test 'remake8a.test', which performs the
+ # Keep this in sync with sister test 'remake8a.sh', which performs the
  # same checks for a in-tree build.
  
  . ./defs || exit 1
@@@ -45,7 -45,7 +45,7 @@@ $AUTOMAK
  
  mkdir build
  cd build
- srcdir='..' # To make syncing with remake8a.test easier.
+ srcdir='..' # To make syncing with remake8a.sh easier.
  
  $srcdir/configure
  
@@@ -112,29 -112,29 +112,29 @@@ $MAKE distchec
  
  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 --combined t/silent-many-gcc.sh
  # 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*.test, but it serves as
+ # 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.test', which should work with generic compilers.
+ # 'silent-many-generic.sh', which should work with generic compilers.
  
  required='gcc g++ gfortran lex yacc'
  . ./defs || exit 1
@@@ -95,6 -95,7 +95,6 @@@ do_and_check_verbose_build (
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AM_PROG_CC_C_O
  AC_PROG_CXX
  AC_PROG_F77
@@@ -204,7 -205,7 +204,7 @@@ $FGREP 'fo2-foo6.c' Makefile.i
  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.test'.
+ # with sister test 'silent-many-generic.sh'.
  for config_args in \
    "$depmodes"
  do
diff --combined t/silent-many-generic.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Check silent-rules mode, with many languages at once.
- # This test partly overlaps with other silent*.test, but it serves as
+ # 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.test', which requires the GNU compilers
+ # 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'
@@@ -96,6 -96,7 +96,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 --combined t/silent-yacc.sh
@@@ -15,7 -15,7 +15,7 @@@
  # 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.test'.
+ # Keep this in sync with sister test 'silent-yacc-gcc.sh'.
  
  required='cc yacc'
  . ./defs || exit 1
@@@ -23,6 -23,7 +23,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AM_PROG_CC_C_O
  AC_PROG_YACC
  AC_CONFIG_FILES([sub/Makefile])
diff --combined t/silent.sh
@@@ -16,7 -16,7 +16,7 @@@
  
  # Check silent-rules mode, without libtool, standard depmode case.
  
- # Please keep this file in sync with silent2.test.
+ # Please keep this file in sync with 'silent2.sh'.
  
  required=cc
  . ./defs || exit 1
@@@ -24,6 -24,7 +24,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_CONFIG_FILES([sub/Makefile])
  AC_PROG_CC
  AM_PROG_CC_C_O
diff --combined t/silent2.sh
@@@ -17,7 -17,7 +17,7 @@@
  # 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.test.
+ # Please keep this file in sync with 'silent.sh'.
  
  required=gcc
  . ./defs || exit 1
@@@ -25,6 -25,7 +25,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_CONFIG_FILES([sub/Makefile])
  AC_PROG_CC
  AM_PROG_CC_C_O
diff --combined t/silent3.sh
@@@ -16,7 -16,7 +16,7 @@@
  
  # Check silent-rules mode, with libtool, standard depmode case.
  
- # Please keep this file in sync with silent4.test and silent9.test.
+ # Please keep this file in sync with 'silent4.sh' and 'silent9.sh'.
  
  required='cc libtoolize'
  . ./defs || exit 1
@@@ -24,6 -24,7 +24,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_CONFIG_FILES([sub/Makefile])
  AC_PROG_CC
  AM_PROG_AR
diff --combined t/silent4.sh
@@@ -17,7 -17,7 +17,7 @@@
  # 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.test and silent9.test.
+ # Please keep this file in sync with 'silent3.sh' and 'silent9.sh'.
  
  required="libtoolize gcc"
  . ./defs || exit 1
@@@ -25,6 -25,7 +25,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_CONFIG_FILES([sub/Makefile])
  AC_PROG_CC
  AM_PROG_AR
diff --combined t/silent9.sh
@@@ -16,7 -16,7 +16,7 @@@
  
  # Check silent-rules mode, with libtool, nodep case.
  
- # Please keep this file in sync with silent3.test and silent4.test.
+ # Please keep this file in sync with 'silent3.sh' and 'silent4.sh'.
  
  required='cc libtoolize'
  . ./defs || exit 1
@@@ -24,6 -24,7 +24,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_CONFIG_FILES([sub/Makefile])
  AC_PROG_CC
  AM_PROG_CC_C_O
diff --combined t/silentcxx-gcc.sh
@@@ -16,7 -16,7 +16,7 @@@
  
  # Check silent-rules mode for C++.
  # This test requires the GNU C++ compiler; keep it in sync with sister
- # test 'silentcxx.test', which should work with generic compilers.
+ # test 'silentcxx.sh', which should work with generic compilers.
  
  required=g++
  . ./defs || exit 1
@@@ -24,6 -24,7 +24,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_PROG_CXX
  AC_CONFIG_FILES([sub/Makefile])
  AC_OUTPUT
@@@ -68,7 -69,7 +68,7 @@@ $FGREP am_cv_CXX_dependencies_compiler_
  
  # Force gcc ("fast") depmode.
  # This apparently useless "for" loop is here to simplify the syncing
- # with sister test 'silentcxx.test'.
+ # with sister test 'silentcxx.sh'.
  for config_args in \
    am_cv_CXX_dependencies_compiler_type=gcc
  do
diff --combined t/silentcxx.sh
@@@ -16,7 -16,7 +16,7 @@@
  
  # Check silent-rules mode for C++.
  # This test should work with generic C++ compilers; keep it in sync with
- # sister test 'silentcxx-gcc.test', which requires the GNU C++ compiler
+ # sister test 'silentcxx-gcc.sh', which requires the GNU C++ compiler
  # and forces the use of gcc depmode.
  
  required=c++
@@@ -25,6 -25,7 +25,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_PROG_CXX
  AC_CONFIG_FILES([sub/Makefile])
  AC_OUTPUT
diff --combined t/silentf77.sh
@@@ -15,7 -15,7 +15,7 @@@
  # 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.test.
+ # Keep this ins sync with the sister test 'silentf90.sh'.
  
  required=fortran77
  . ./defs || exit 1
@@@ -23,6 -23,7 +23,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_PROG_F77
  AC_CONFIG_FILES([sub/Makefile])
  AC_OUTPUT
diff --combined t/silentf90.sh
@@@ -15,7 -15,7 +15,7 @@@
  # 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.test.
+ # Keep this ins sync with the sister test 'silentf77.sh'.
  
  required=fortran
  . ./defs || exit 1
@@@ -23,6 -23,7 +23,6 @@@
  mkdir sub
  
  cat >>configure.ac <<'EOF'
 -AM_SILENT_RULES
  AC_PROG_FC
  AC_CONFIG_FILES([sub/Makefile])
  AC_OUTPUT
diff --combined t/subdir-add2-pr46.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test to make sure that adding a new directory works, even from
- # subdirectories.  The sister test 'subdir5.test' makes sure it works
- # when make is run from the top-level directory.
+ # subdirectories.  The sister test 'subdir-add-pr46.sh' makes sure
+ # it works when make is run from the top-level directory.
  # PR automake/46
  
  . ./defs || exit 1
  
  cat >> configure.ac << 'END'
 +AC_CONFIG_MACRO_DIR([m4])
  m4_include([confiles.m4])
  MORE_DEFS
  AC_OUTPUT
@@@ -32,6 -31,7 +32,6 @@@ echo 'AC_CONFIG_FILES([sub/Makefile])' 
  
  cat > Makefile.am << 'END'
  SUBDIRS = sub
 -ACLOCAL_AMFLAGS = -I m4
  END
  
  mkdir sub
@@@ -41,7 -41,7 +41,7 @@@
  mkdir m4
  echo 'AC_DEFUN([MORE_DEFS], [])' > m4/moredefs.m4
  
 -$ACLOCAL -I m4
 +$ACLOCAL
  $AUTOCONF
  $AUTOMAKE
  ./configure
@@@ -49,10 -49,10 +49,10 @@@ $MAK
  
  # Now add new directories.
  
- # The first step users typically do when adding a new subdir is
- # editing configure.ac.  That is already tested by subdir5.test,
- # though, so here we try to just edit a file that is included by
- # configure.ac, without touching configure.ac itself.
+ # The first step users typically do when adding a new subdir is editing
+ # configure.ac.  That is already tested by 'subdir-add-pr46.sh' though,
+ # so here we try to just edit a file that is included by configure.ac,
+ # without touching configure.ac itself.
  
  mkdir sub/maude
  cat > sub/maude/Makefile.am << 'END'
@@@ -66,10 -66,10 +66,10 @@@ echo 'SUBDIRS = maude' >> sub/Makefile.
  mkdir maude
  : > maude/Makefile.am
  
- # Update confiles.m4 *after* updating sub/Makefile.am; subdir5.test do
- # it in the other way: it updates configure.ac before Makefile.am.
- # We sleep here because modified configure dependencies must be newer
- # than config.status.
+ # Update confiles.m4 *after* updating sub/Makefile.am; the sister test
+ # 'subdir-add-pr46.sh' does it the in other way: it updates configure.ac
+ # before Makefile.am.  We sleep here because modified configure
+ # dependencies must be newer than config.status.
  $sleep
  echo 'AC_CONFIG_FILES([maude/Makefile sub/maude/Makefile])' >> confiles.m4
  
diff --combined t/txinfo23.sh
  
  # Check that info files are built in builddir when needed.
  # Test with subdir Texinfo.
- # (Similar to txinfo13.test, plus DISTCLEANFILES).
- # (See also txinfo24.test and txinfo25.test).
+ # (Similar to txinfo13.sh, plus DISTCLEANFILES).
+ # (See also txinfo24.sh and txinfo25.sh).
  
 -required='makeinfo tex texi2dvi-o'
 +required='makeinfo tex texi2dvi'
  . ./defs || exit 1
  
  cat >> configure.ac << 'END'
diff --combined t/txinfo24.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Check that info files are built in builddir when needed.
- # (Similar to txinfo16.test, plus CLEANFILES).
- # (See also txinfo23.test and txinfo25.test).
+ # (Similar to txinfo16.sh, plus CLEANFILES).
+ # (See also txinfo23.sh and txinfo25.sh).
  
 -required='makeinfo tex texi2dvi-o'
 +required='makeinfo tex texi2dvi'
  . ./defs || exit 1
  
  cat >> configure.ac << 'END'
diff --combined t/txinfo25.sh
  # Check that info files are built in builddir and in srcdir can safely
  # co-exist.  This setup is obtained by having two info files, only one
  # of which being cleaned.
- # (Similar to txinfo16.test, plus CLEANFILES).
- # (See also txinfo23.test and txinfo24.test).
+ # (Similar to txinfo16.sh, plus CLEANFILES).
+ # (See also txinfo23.sh and txinfo24.sh).
  
 -required='makeinfo tex texi2dvi-o'
 +required='makeinfo tex texi2dvi'
  . ./defs || exit 1
  
  cat >> configure.ac << 'END'
diff --combined t/txinfo28.sh
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Check that info files are built in builddir when needed.
- # Similar to txinfo24.test, but obfuscating filenames with variable
+ # Similar to txinfo24.sh, but obfuscating filenames with variable
  # references.
  # Report from Ralf Corsepius.
  
 -required='makeinfo tex texi2dvi-o'
 +required='makeinfo tex texi2dvi'
  . ./defs || exit 1
  
  # This setting, when honored by GNU ls, used to cause an infinite loop
diff --combined t/txinfo33.sh
@@@ -15,9 -15,9 +15,9 @@@
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # DVIS, PDFS, PSS, HTMLS should not be cleaned upon 'mostlyclean'.
- # Similar to txinfo25.test.
+ # Similar to txinfo25.sh.
  
 -required='makeinfo tex texi2dvi-o dvips'
 +required='makeinfo tex texi2dvi dvips'
  . ./defs || exit 1
  
  mkdir sub
diff --combined t/vtexi4.sh
  # Check that the version.texi file is automatically created and distributed
  # if @included into a texi source.  Also check that is correctly defined
  # @values definitions it is advertised to.
- # See also the related test 'vtexi3.test', which does similar checks, but
+ # See also the related test 'vtexi3.sh', which does similar checks, but
  # for more vers*.texi files, and does not require makeinfo, tex and
  # texi2dvi.
  
 -required='makeinfo tex texi2dvi-o grep-nonprint'
 +required='makeinfo tex texi2dvi grep-nonprint'
  . ./defs || exit 1
  
  test $(LC_ALL=C date '+%u') -gt 0 && test $(LC_ALL=C date '+%u') -lt 8 \