-New in 1.12.2:
+New in 1.13:
-* WARNING: Future backward-incompatibilities!
+* Version requirements:
- - Future versions of Automake will likely drop support for the
- long-deprecated 'configure.in' name for the Autoconf input file.
- You are advised to use the recommended name 'configure.ac' instead.
+ - Autoconf 2.65 or greater is required.
- - Autoconf 2.65 or later will be required by the next major Automake
- version (1.13). Until now, Automake has required Autoconf version
- 2.62 or later.
+ - The rules to build PDF and DVI output from Texinfo input now
+ requires Texinfo 4.9 or later.
- - Starting from the next major Automake version (1.13), the rules to
- build pdf, ps and dvi output from Texinfo input will use the '--tidy'
- option by default. Since such an option was introduced in Texinfo
- 4.9, this means that Makefiles generated by future Automake versions
- will require at least that version of Texinfo.
+* Obsolete features removed:
- - Starting from the next major Automake version (1.13), the parallel
- testsuite harness (previously only enabled by the 'parallel-tests'
- option) will become the default one; the older serial testsuite
- harness will still be available through the use of the 'serial-tests'
- option.
+ - Use of the long-deprecated two- and three-arguments invocation forms
+ of the AM_INIT_AUTOMAKE is not supported anymore.
+
+ - Support for the "Cygnus-style" trees (once enabled by the 'cygnus'
+ option) has been removed. See discussion about automake bug#11034
+ for more background.
- - The following long-obsolete m4 macros will be removed in the
- next major Automake version (1.13):
+ - The automake-provided $(mkdir_p) make variable, @mkdir_p@ configure
+ time substitution and AM_PROG_MKDIR m4 macro have been removed. They
+ had been obsolete since automake 1.10, and actively deprecated since
+ Automake 1.12.1.
+
+ - The deprecated aclocal option '--acdir' has been removed. You
+ should use the options '--automake-acdir' and '--system-acdir'
+ instead (which have been introduced in Automake 1.11.2).
+
+ - The following long-obsolete m4 macros have been removed:
AM_PROG_CC_STDC: superseded by AC_PROG_CC since October 2002
fp_PROG_CC_STDC: broken alias for AM_PROG_CC_STDC
of the now-removed automatic de-ANSI-fication
support of Automake)
- - All the "old alias" macros in 'm4/obsolete.m4' will be removed in
- the next major Automake version (1.13).
+ - All the "old alias" macros in 'm4/obsolete.m4' have been removed.
+
+* Changes to Automake-generated testsuite harnesses:
+
+ - The parallel testsuite harness (previously only enabled by the
+ 'parallel-tests' option) is the default one; the older serial
+ testsuite harness will still be available through the use of the
+ 'serial-tests' option (introduced in Automake 1.12).
+
+* Silent rules support:
+
+ - Support for silent rules is now always active in Automake-generated
+ Makefiles. So, although the verbose output is still the default,
+ the user can now always use "./configure --enable-silent-rules" or
+ "make V=0" to enable quieter output in the package he's building.
+
+ - The 'silent-rules' option has now become a no-op, preserved for
+ backward-compatibility only. In particular, its use does not disable
+ the warnings in the 'portability-recursive' category anymore.
+
+* Texinfo Support:
+
+ - The rules to build PDF and DVI files from Texinfo input now use the
+ ' --build-dir' option, to keep the auxiliary files used by texi2dvi
+ and texi2pdf around without cluttering the build directory, and to
+ make it possible to run the "dvi" and "pdf" recipes in parallel.
+
+* Automatic remake rules and 'missing' script:
+
+ - The 'missing' script does not try anymore to update the timestamp
+ of out-of-date files that require a maintainer-specific tool to be
+ remade, in case the user lacks such a tool (or has a too-old version
+ of it). It just give a useful warning, and in some cases also a tip
+ about how to obtain such a tool.
+
+ - The missing script has thus become useless as a (poor) way to work
+ around the sketched-timestamps issues that can happen for projects
+ that keep generated files committed in their VCS repository. Such
+ projects are now encouraged to write a custom "fix-timestamps.sh"
+ script to avoid such issues; a simple example is provided in the
+ "CVS and generated files" chapter of the automake manual.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+New in 1.12.2:
+
+* WARNING: Future backward-incompatibilities!
+
+ - Future versions of Automake will likely drop support for the
+ long-deprecated 'configure.in' name for the Autoconf input file.
+ You are advised to use the recommended name 'configure.ac' instead.
+
+ - Starting from the next major Automake version (1.13), the rules to
+ build pdf, ps and dvi output from Texinfo input will use the '--tidy'
+ option by default. Since such an option was introduced in Texinfo
+ 4.9, this means that Makefiles generated by future Automake versions
+ will require at least that version of Texinfo.
+
+ - Starting from the next major Automake version (1.13), the parallel
+ testsuite harness (previously only enabled by the 'parallel-tests'
+ option) will become the default one; the older serial testsuite
+ harness will still be available through the use of the 'serial-tests'
+ option.
- Support for the two- and three-arguments invocation forms of the
AM_INIT_AUTOMAKE macro will be deprecated in the next minor version
of Automake (1.12.1) and removed in the next major version (1.13).
- - The '--acdir' option of aclocal is deprecated, and will probably
- be removed in the next major Automake release (1.13). You should
- use the options '--automake-acdir' and '--system-acdir' instead
- (which have been introduced in Automake 1.11.2).
-
- 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.13).
to a shell conditional that can be used in recipes to know whether
make is being run in silent or verbose mode.
+ Bugs fixed in 1.12.2:
+
+ * Long-standing bugs:
+
+ - The "recheck" targets behaves better in the face of build failures
+ related to previously failed tests. For example, if a test is a
+ compiled program that must be rerun by "make recheck", and its
+ compilation fails, it will still be rerun by further "make recheck"
+ invocations. See automake bug#11791.
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New in 1.12.1:
.PHONY: check-TESTS
-if %?PARALLEL_TESTS%
+if !%?SERIAL_TESTS%
include inst-vars.am
## cannot use '$?' to compute the set of lazily rerun tests, lest
## we rely on .PHONY to work portably.
@test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
- @$(am__set_TESTS_bases); \
+ @set +e; $(am__set_TESTS_bases); \
if test $@ = recheck; then \
## If running a "make recheck", we must only consider tests that had an
## unexpected outcome (FAIL or XPASS) in the earlier run.
## be problematic. In this particular case, trailing white space is known
## to have caused segmentation faults on Solaris 10 XPG4 make:
log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \
- ## Under "make recheck", remove the .log and .trs files associated
- ## with the files to recheck, so that those will be rerun by the
- ## "make test-suite.log" recursive invocation below. But use a proper
- ## hack to avoid extra files removal when running under "make -n".
+ ## Under "make recheck", move the '.log' and '.trs' files associated
+ ## with the tests to be re-run out of the way, so that those tests will
+ ## be re-run by the "make test-suite.log" recursive invocation below.
+ ## Two tricky requirements:
+ ## - we must avoid extra files removal when running under "make -n";
+ ## - in case the test is a compiled program whose compilation fails,
+ ## 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 extra contortions below cater to such requirements.
+ am_backupdir=.am-recheck; \
if test $@ != recheck || $(am__make_dryrun); then :; else \
- test -z "$$log_list" || rm -f $$log_list; \
- test -z "$$trs_list" || rm -f $$trs_list; \
+ if test -n "$$trs_list$$log_list"; then \
+ { test ! -d $$am_backupdir || rm -rf $$am_backupdir; } \
+ && $(MKDIR_P) $$am_backupdir || exit 1; \
+ test -z "$$log_list" \
+ || mv -f $$log_list $$am_backupdir 2>/dev/null; \
+ test -z "$$trs_list" \
+ || mv -f $$trs_list $$am_backupdir 2>/dev/null; \
+ fi; \
+ fi; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \
+ st=$$?; \
+ if test $@ != recheck || $(am__make_dryrun) || test ! -d $$am_backupdir; then :; else \
+ for f in $$log_list $$trs_list; do \
+ test -f $$f || mv $$am_backupdir/$$f . || exit 1; \
+ done; \
+ rm -rf $$am_backupdir || exit 1; \
fi; \
- $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"
+ ## Be sure to exit with the proper exit status. The use of "exit" below
+ ## is required to work around a FreeBSD make bug (present only when
+ ## running in concurrent mode). See automake bug#9245:
+ ## <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9245>
+ ## and FreeBSD PR bin/159730:
+ ## <http://www.freebsd.org/cgi/query-pr.cgi?pr=159730>.
+ exit $$st;
## Recheck must depend on $(check_SCRIPTS), $(check_PROGRAMS), etc.
## It must also depend on the 'all' target. See automake bug#11252.
.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%
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 \
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 \
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 \
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 \
t/check-concurrency-bug9245.sh \
t/checkall.sh \
t/clean.sh \
-t/clean2.sh \
t/colneq.sh \
t/colneq2.sh \
t/colneq3.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 \
t/man.sh \
t/man2.sh \
t/man3.sh \
-t/man4.sh \
t/man5.sh \
t/man6.sh \
t/man7.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/mkdirp-deprecation.sh \
t/mkinstall.sh \
t/mkinst2.sh \
t/mkinst3.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 \
t/objcxx-deps.sh \
t/objc-megademo.sh \
t/objext-pr10128.sh \
-t/obsolete.sh \
t/oldvars.sh \
t/order.sh \
t/output.sh \
t/parallel-tests9.sh \
t/parallel-tests10.sh \
t/parallel-tests-recheck-depends-on-all.sh \
+ t/parallel-tests-recheck-pr11791.sh \
t/parallel-tests-exeext.sh \
t/parallel-tests-suffix.sh \
t/parallel-tests-suffix-prog.sh \
t/remake-deleted-am-subdir.sh \
t/remake-deleted-am.sh \
t/remake-renamed-am.sh \
+t/remake-aclocal-version-mismatch.sh \
t/pr8365-remake-timing.sh \
t/req.sh \
t/reqd.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 \
t/txinfo2.sh \
t/txinfo3.sh \
t/txinfo4.sh \
-t/txinfo5.sh \
-t/txinfo5b.sh \
t/txinfo6.sh \
t/txinfo7.sh \
t/txinfo8.sh \
t/txinfo27.sh \
t/txinfo28.sh \
t/txinfo29.sh \
-t/txinfo30.sh \
t/txinfo31.sh \
t/txinfo32.sh \
t/txinfo33.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 \