-New in 1.11.0a:
+New in 1.11a:
-* WARNING: Future backward-incompatibilities!
+* Obsolete features removed:
+
+ - Support for automatic de-ANSI-fication has been removed.
+
+ - Support for ".log -> .html" conversion and the check-html and
+ recheck-html targets has been removed from Automake core (but
+ remains available in the 'contrib/' directory of the Automake
+ distribution).
- - The support for ".log -> .html" conversion and the check-html and
- recheck-html targets will be removed in the next major Automake
- release (1.12).
+ - The support for the "obscure" multilib feature has been deprecated,
+ and will be moved out of the automake core in the next major Automake
+ release (1.12).
+
+ - The deprecated `lzma' compression format for distribution archives
+ has been removed, in favor of `xz' and `lzip'.
+
+ - The obsolete AM_WITH_REGEX macro has been removed.
+
+ - The deprecated options `--output-dir', `--Werror' and `--Wno-error'
+ have been removed.
+
+* New targets:
+
+ - New `cscope' target to build a cscope database for the source tree.
+
+* Changes to Automake-generated testsuite harnesses:
+
+ - Test scripts that exit with status 99 to signal an "hard error" (e.g.,
+ and unexpected or internal error, or a failure to set up the test case
+ scenario) have their outcome reported as an 'ERROR' now. Previous
+ versions of automake reported such an outcome as a 'FAIL' (the only
+ difference with normal failures being that hard errors were counted
+ as failures even when the test originating them was listed in
+ XFAIL_TESTS).
+
+ - The testsuite summary displayed by the parallel-test harness has a
+ completely new format, that always list the numbers of passed, failed,
+ xfailed, xpassed, skipped and errored tests, even when these numbers
+ are zero (but using smart coloring when the color-tests option is in
+ effect).
+
+ - The default testsuite driver offered by the 'parallel-tests' option is
+ now implemented (partly at least) with the help of automake-provided
+ auxiliary scripts (e.g., `test-driver'), instead of relying entirely
+ on code in the generated Makefile.in.
+ This has two noteworthy implications. The first one is that projects
+ using the `parallel-tests' option should now either run automake with
+ the `--add-missing' option, or manually copy the `test-driver' script
+ into their tree. The second, and more important, implication is that
+ now, when the `parallel-tests' option is in use, TESTS_ENVIRONMENT can
+ not be used anymore to define a test runner, and the command specified
+ in LOG_COMPILER (and <ext>_LOG_COMPILER) must be a *real* executable
+ program or script. For example, this is still a valid usage (albeit
+ a little contorted):
+
+ TESTS_ENVIRONMENT = \
+ if test -n '$(STRICT_TESTS)'; then \
+ maybe_errexit='-e'; \
+ else \
+ maybe_errexit=''; \
+ fi;
+ LOG_COMPILER = $(SHELL) $$maybe_errexit
+
+ while this is not anymore:
+
+ TESTS_ENVIRONMENT = \
+ $(SHELL) `test -n '$(STRICT_TESTS_CHECKING)' && echo ' -e'`
+
+ neither is this:
+
+ TESTS_ENVIRONMENT = \
+ run_with_perl_or_shell () \
+ { \
+ if grep -q '^#!.*perl' $$1; then
+ $(PERL) $$1; \
+ else \
+ $(SHELL) $$1; \
+ fi; \
+ }
+ LOG_COMPILER = run_with_per_or_shell
+
+ - The package authors can now use customary testsuite drivers within
+ the framework provided by the 'parallel-tests' testsuite harness.
+ Consistently with the existing syntax, this can be done by defining
+ special makefile variables `LOG_DRIVER' and `<ext>_LOG_DRIVER'.
+
+ - A new developer-reserved variable `AM_TESTS_FD_REDIRECT' can be used
+ to redirect/define file descriptors used by the test scripts.
+
+ - The parallel-tests harness generates now, in addition the `.log' files
+ holding the output produced by the test scripts, a new set of `.trs'
+ files, holding "metadata" derived by the execution of the test scripts;
+ among such metadata are the outcomes of the test cases run by a script.
+
+ - Initial and still experimental support for the TAP test protocol is
+ now provided.
- - The `lzma' compression format for distribution archives has been
- deprecated in favor of `xz' and `lzip', and will be removed in the
- next major Automake release (1.12).
+* Miscellaneous changes:
- - The Automake support for automatic de-ANSI-fication will be removed in
- the next major Automake release (1.12).
+ - The `dist' and `dist-all' targets now can run compressors in parallel.
- - The `--acdir' option of aclocal is deprecated, and will probably be
- removed in the next major Automake release (1.12).
+ - Automake can now generate silenced rules for texinfo outputs.
- - The exact order in which the directories in the aclocal macro
- search path are looked up is probably going to be changed in the
- next Automake release (1.12).
+ - Some auxiliary files that are automatically distributed by Automake
+ (e.g., `install-sh', or the `depcomp' script for packages compiling
+ C sources) might now be listed in the DIST_COMMON variable in many
+ Makefile.in files, rather than in the top-level one.
- - The obsolescent AM_WITH_REGEX macro has been deprecated (since the
- GNU rx library has been decommissioned), and will be removed in the
- next major Automake release (1.12).
+ - Messages of types warning or error from `automake' and `aclocal'
+ are now prefixed with the respective type, and presence of -Werror
+ is noted.
-* Changes to aclocal:
+ - Automake's early configure-time sanity check now tries to avoid
+ sleeping for a second, which slowed down cached configure runs
+ noticeably. In that case, it will check back at the end of the
+ configure script to ensure that at least one second has passed, to
+ avoid time stamp issues with makefile rules rerunning autotools
+ programs.
- - The `--acdir' option is deprecated. Now you should use the new options
- `--automake-acdir' and `--system-acdir' instead.
+ - For programs and libraries, automake now detect EXTRA_foo_DEPENDENCIES
+ and adds them to the normal list of dependencies, but without
+ overwriting the foo_DEPENDENCIES variable, which is normally computed
+ by automake.
- - The `ACLOCAL_PATH' environment variable is now interpreted as a
- colon-separated list of additional directories to search after the
- automake internal acdir (by default ${prefix}/share/aclocal-APIVERSION)
- and before the system acdir (by default ${prefix}/share/aclocal).
+ - C source and header files derived from non-distributed Yacc sources
+ are now removed by "make clean", not only by "make maintainer-clean".
+
+ - The warnings in the category `extra-portability' are now enabled by
+ `-Wall'. In previous versions, one has to use `-Wextra-portability'
+ to enable them.
+
+Bugs fixed in 1.11a:
+
+ - Various minor bugfixes.
+
+* Bugs introduced by 1.11:
+
+ - The AM_COND_IF macro also works if the shell expression for the
+ conditional is no longer valid for the condition.
+
+* Long-standing bugs:
+
+ - Automake's own build system finally have a real "installcheck" target.
+
+ - Files listed with the AC_REQUIRE_AUX_FILE macro in configure.ac are
+ now automatically distributed also if the directory of the auxiliary
+ files coincides with the top-level directory.
+
+ - Automake now detects the presence of the `-d' flag in the various
+ `*YFLAGS' variables even when their definitions involve indirections
+ through other variables, such as in:
+ foo_opts = -d
+ AM_YFLAGS = $(foo_opts)
+
+ - Automake now complains if a `*YFLAGS' variable has any conditional
+ content, not only a conditional definition.
+
+ - Explicit enabling and/or disabling of Automake warning categories
+ through the `-W...' options now always takes precedence over the
+ implicit warning level implied by Automake strictness (foreign, gnu
+ or gnits), regardless of the order in which such strictness and
+ warning flags appear. For example, a setting like:
+ AUTOMAKE_OPTIONS = -Wall --foreign
+ will cause the warnings in category `portability' to be enabled, even
+ if those warnings are by default disabled in `foreign' strictness.
+
+\f
+New in 1.11.2a:
+
+* WARNING: Future backward-incompatibilities!
+
+ - The obsolescent AM_WITH_REGEX macro has been deprecated, since the
+ GNU rx library has been decommissioned.
+
+ - The `lzma' compression format for distribution archives has been
+ deprecated in favor of `xz' and `lzip'.
+
+ - The `--acdir' option of aclocal is deprecated, and will probably be
+ removed in the next major Automake release (1.12). [FIXME]
+
+ - The exact order in which the directories in the aclocal macro
+ search path are looked up is probably going to be changed in the
+ next Automake release (1.12). [FIXME]
* Miscellaneous changes:
Support for test suites
-* Simple Tests:: Listing programs and scripts in @code{TESTS}
-* Simple Tests using parallel-tests:: More powerful test driver
-* DejaGnu Tests:: Interfacing with the external testing framework
+* Generalities about Testing:: Generic concepts and terminology about testing
+* Simple Tests:: Listing test scripts in @code{TESTS}
+* Custom Test Drivers:: Writing and using custom test drivers
+* Using the TAP test protocol:: Integrating test scripts that use the TAP protocol
+* DejaGnu Tests:: Interfacing with the @command{dejagnu} testing framework
* Install Tests:: Running tests on installed packages
+Simple Tests
+
+* Scripts-based Testsuites:: Automake-specific concepts and terminology
+* Serial Test Harness:: Older (and obsolescent) serial test harness
+* Parallel Test Harness:: Generic concurrent test harness
+
+Using the TAP test protocol
+
+* Introduction to TAP::
+* Use TAP with the Automake test harness::
+* Incompatibilities with other TAP parsers and drivers::
+* Links and external resources on TAP::
+
+Custom Test Drivers
+
+* Overview of Custom Test Drivers Support::
+* Declaring Custom Test Drivers::
+* API for Custom Test Drivers::
+
+API for Custom Test Drivers
+
+* Command-line arguments for test drivers::
+* Log files generation and test results recording::
+* Testsuite progress output::
+
+Changing Automake's Behavior
+
+* Options generalities:: Semantics of Automake option
+* List of Automake options:: A comprehensive list of Automake options
+
Miscellaneous Rules
-* Tags:: Interfacing to etags and mkid
+* Tags:: Interfacing to cscope, etags and mkid
* Suffixes:: Handling new file extensions
- * Multilibs:: Support for multilibs.
+ * Multilibs:: Support for multilibs (deprecated, soon to be removed).
Conditionals
@item symlink-tree
This program duplicates a tree of directories, using symbolic links
instead of copying files. Such an operation is performed when building
- multilibs (@pxref{Multilibs}). This file is maintained in the GCC
- tree at @url{http://gcc.gnu.org/svn.html}.
+ multilibs (@pxref{Multilibs}). Since the Automake multilib support has
+ been @emph{deprecated} and targeted for removal, this file is going to
+ be @emph{removed from the Automake core} in the next major release.
+ The master copy of this file is maintained in the GCC tree at
+ @url{http://gcc.gnu.org/svn.html}.
+@item test-driver
+This implements the default test driver offered by the parallel
+testsuite harness.
+
@item texinfo.tex
Not a program, this file is required for @samp{make dvi}, @samp{make
ps} and @samp{make pdf} to work when Texinfo sources are in the
There are a few rules and variables that didn't fit anywhere else.
@menu
-* Tags:: Interfacing to etags and mkid
-* Suffixes:: Handling new file extensions
+* Tags:: Interfacing to cscope, etags and mkid
+* Suffixes:: Handling new file extensions
- * Multilibs:: Support for multilibs.
+ * Multilibs:: Support for multilibs (deprecated, soon to be removed).
@end menu
## -*- Autoconf -*-
- # Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2011
-# Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2012
--# Free Software Foundation, Inc.
++# Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2011,
++# 2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# ---------------------------------------------------
# Add --enable-multilib to configure.
AC_DEFUN([AM_ENABLE_MULTILIB],
+ [m4_warn([obsolete], [$0 will be removed from Automake core soon.
+ Files implementing the "multilib" feature are (and will remain) available
+ to the 'contrib/' directory in the Automake distribution.])]dnl
[# Default to --enable-multilib
-AC_ARG_ENABLE(multilib,
-[ --enable-multilib build many library versions (default)],
+AC_ARG_ENABLE([multilib],
+[AS_HELP_STRING(
+ [--enable-multilib],
+ [build many library versions (default)])],
[case "$enableval" in
yes) multilib=yes ;;
no) multilib=no ;;