* Makefile.am (fetch): Fetch and sync it.
* lib/Makefile.am (EXTRA_DIST): Distribute it.
- 2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
-
- docs: "aclocal --install -I /abs/dir" actually copies files
-
- This change is for automake bug#8407.
-
- In the past, there had been some debate and confusion about
- whether "aclocal --install" should copy third-party .m4 files
- in the first directory passed to the `-I' option even when
- such directory was given as an absolute path, or whether it
- was better to do so only for directories specified with a
- relative path.
-
- The rationale for this latter behaviour was that, before the
- existence of the `ACLOCAL_PATH' variable, the only way (a poor
- way, I might add) for a common user to extend the search path
- of a system-wide installation of aclocal was to export something
- like ACLOCAL="aclocal -I /my/extra/macros" in the environment.
- Today, the correct way to proceed is undoubtedly through the
- use of ACLOCAL_PATH, so we can settle the question once and for
- all, and start verifying the correct behaviour of `-I' with a
- new test.
-
- * tests/aclocal-install-absdir.test: New test.
- * tests/Makefile.am (TESTS): Add it.
- * doc/automake.texi (aclocal Options): Be more explicit about
- this part of `--install' semantics.
-
- 2011-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
-
- docs: fix node names for automake and aclocal invocations
-
- With the older node names, an "info automake" command issued
- from the command line would have opened the node about the
- invocation of the automake program, rather than the Top node
- of the automake documentation. To invoke the Top node, one
- had to issue the command "info Automake" instead (note the
- different capitalization). This was suboptimal, and certainly
- confusing.
-
- With this change, "info automake" will open the Top node of the
- automake documentation; to access the nodes about the invocation
- of the automake and aclocal program, one has now to issue "info
- automake-invocation" and "info aclocal-invocation" respectively.
-
- This change fixes automake bug#8071.
-
- See also commits `v2.61a-22-ge9215d1' and `v2.61a-72-g8c07b48' in
- the autoconf git repository, which tackled a similar issue.
-
- * doc/automake.texi (@direntry): Rename nodes `aclocal' and
- `automake' to `aclocal-invocation' and `automake-invocation'
- respectively.
- * NEWS: Update.
-
+2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ regex: remove obsolete macro AM_WITH_REGEX
+ Today, practically nobody uses the GNU rx library, which, according
+ to its own website <http://www.gnu.org/software/rx/rx.html>, has
+ been "decommissioned". Consequently, the automake-provided macro
+ AM_WITH_REGEX is not used nor required anymore.
+ * m4/regex.m4: Delete.
+ * m4/Makefile.am (dist_automake_ac_DATA): Do not list it anymore.
+ * doc/automake.texi (Obsolete Macros): Remove description, and in
+ fact any mention, of `AM_WITH_REGEX'.
+ * tests/regex.test: Delete.
+ * tests/help-regex.test: Likewise.
+ * tests/regex-obsolete.test: Likewise.
+ * tests/list-of-tests.mk: Do not list them anymore.
+ * NEWS: Update.
+ See also commits `v1.11-587-g5f335be' and `v1.11-433-g37b0aee',
+ where that macro had been deprecated.
+
+2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ cosmetics: be more consistent in copyright notices in tests
+ * tests/cond39.test: Update the heading copyright notice, to be
+ consistent with the formulation used in the other files.
+ * tests/cond40.test: Likewise.
+ * tests/cond41.test: Likewise.
+ * tests/cond42.test: Likewise.
+ * tests/cond43.test: Likewise.
+ * tests/conflnk4.test: Likewise.
+ * tests/extra8.test: Likewise.
+ * tests/extra9.test: Likewise.
+ * tests/suffix13.test: Likewise.
+ * tests/vala.test: Likewise.
+ * tests/vala1.test: Likewise.
+ * tests/vala2.test: Likewise.
+ * tests/vala3.test: Likewise.
+ * tests/vala4.test: Likewise.
+ * tests/vala5.test: Likewise.
+ * lib/Automake/tests/Condition.pl: Likewise.
+ * lib/Automake/tests/Condition-t.pl: Likewise.
+ * lib/Automake/tests/DisjConditions.pl: Likewise.
+ * lib/Automake/tests/DisjConditions-t.pl: Likewise.
+ * lib/Automake/tests/Version.pl: Likewise.
+ * lib/Automake/tests/Wrap.pl: Likewise.
+ * lib/Automake/tests/Cond2.pl: Add copyright notice.
+ * lib/Automake/tests/Cond3.pl: Likewise.
+ * lib/Automake/tests/DisjCon2.pl: Likewise.
+ * lib/Automake/tests/DisjCon3.pl: Likewise.
+ * lib/Automake/tests/Version2.pl: Likewise.
+ * lib/Automake/tests/Version3.pl: Likewise.
+
+2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tap/awk: "Bail out!" recognized also after leading whitespace
+ Newer versions of TAP::Harness (e.g., 3.23 on Perl 5.14.1)
+ recognize a "Bail out!" directive also when it is prepended by
+ leading whitespace; this was not the case for older TAP:Harness
+ versions, (e.g., for version 3.17 on Perl 5.12.4), and for our
+ TAP driver implemented in awk.
+ * lib/tap-driver.sh: Handle the "Bail out!" directive also when
+ it is preceded by leading whitespace.
+ * tests/tap-spurious.test: Remove the tests checking that a
+ "Bail out!" string coming right after leading whitespace does
+ not trigger a bailout action.
+ * tests/tap-bailout-leading-space.test: New test.
+ * tests/list-of-tests.mk: Add it.
+ Problem reported by Jim Meyering in automake bug#10374.
+
+2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: fix spurious failure of cond29.test
+ * tests/cond29.test: Limit the amount of virtual memory available
+ to the automake process to ~ 150 MB, rather than only ~ 20 MB, to
+ account for higher (but still acceptable) memory usages on some
+ systems (in this case, a Fedora 16 distro on ppc64). To be
+ sure not to reduce coverage, increase the number of potential
+ combinations of automake conditionals from 2**22 = 4194304 to
+ 2**24 = 16777216.
+ We have actually verified that the new version of the test case
+ catches the Automake 1.7 it is intended to check against, using
+ the Automake 1.7.9 tarball downloaded from:
+ <http://ftp.gnu.org/gnu/automake/automake-1.7.9.tar.gz>
+ Reported by Jim Meyering in automake bug#10374.
+
+ 2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ docs: "aclocal --install -I /abs/dir" actually copies files
+
+ This change is for automake bug#8407.
+
+ In the past, there had been some debate and confusion about
+ whether "aclocal --install" should copy third-party .m4 files
+ in the first directory passed to the `-I' option even when
+ such directory was given as an absolute path, or whether it
+ was better to do so only for directories specified with a
+ relative path.
+
+ The rationale for this latter behaviour was that, before the
+ existence of the `ACLOCAL_PATH' variable, the only way (a poor
+ way, I might add) for a common user to extend the search path
+ of a system-wide installation of aclocal was to export something
+ like ACLOCAL="aclocal -I /my/extra/macros" in the environment.
+ Today, the correct way to proceed is undoubtedly through the
+ use of ACLOCAL_PATH, so we can settle the question once and for
+ all, and start verifying the correct behaviour of `-I' with a
+ new test.
+
+ * tests/aclocal-install-absdir.test: New test.
+ * tests/Makefile.am (TESTS): Add it.
+ * doc/automake.texi (aclocal Options): Be more explicit about
+ this part of `--install' semantics.
+
+ 2011-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ docs: fix node names for automake and aclocal invocations
+
+ With the older node names, an "info automake" command issued
+ from the command line would have opened the node about the
+ invocation of the automake program, rather than the Top node
+ of the automake documentation. To invoke the Top node, one
+ had to issue the command "info Automake" instead (note the
+ different capitalization). This was suboptimal, and certainly
+ confusing.
+
+ With this change, "info automake" will open the Top node of the
+ automake documentation; to access the nodes about the invocation
+ of the automake and aclocal program, one has now to issue "info
+ automake-invocation" and "info aclocal-invocation" respectively.
+
+ This change fixes automake bug#8071.
+
+ See also commits `v2.61a-22-ge9215d1' and `v2.61a-72-g8c07b48' in
+ the autoconf git repository, which tackled a similar issue.
+
+ * doc/automake.texi (@direntry): Rename nodes `aclocal' and
+ `automake' to `aclocal-invocation' and `automake-invocation'
+ respectively.
+ * NEWS: Update.
+
+ 2011-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ tests: tweak tests on silent-rules for makes without nested vars
+ * tests/silent-nested-vars.test: Define $MAKE to `./mymake' in
+ the environment, so that it will be automatically picked up by
+ configure. Related tweaks and simplifications.
+ Remove the checks verifying that silent rules are respected also
+ when the 'subdir-objects' option is set, the checks testing the
+ old syntax for user-defined silent rules, and the tests using
+ the default $MAKE programs: they are redundant w.r.t. other test
+ cases. Related simplifications.
+ Remove the temporary files used in a sanity check as soon as they
+ are not needed anymore.
+ Do not capture also the standard error of configure: we only want
+ to grep its standard output.
+ Consistently use `stdout' for the name of files where to save the
+ standard output captured from make and configure, for consistency
+ with other tests.
+ Make grepping of configure output and of the generated Makefile
+ stricter.
+ Improve and tweak the `mymake' script a little.
+ * tests/silent6.test: Make grepping of make stdout slightly
+ stricter. After having configured with silent rules disabled,
+ try to force the use silent rules with `make V=1'.
+
+ 2011-12-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ silent-rules: fallback for makes without nested vars
+
+ This fixes two problems reported for Automake (Bug#9928, Bug#10237)
+ and is in response to a bug report for building coreutils on HP
+ NonStop OS (Bug#10234). The problem is that HP NonStop 'make'
+ treats a line like "AM_V_CC = $(am__v_CC_$(V))" as one that
+ expands a macro with the funny name am__v_CC_$(V instead of the
+ desired name am__v_CC_1 or am__v_CC_0, and since the funny macro
+ is not defined the line is equivalent to "AM_V_CC = )"; this
+ inserts a stray ")" when $(AM_V_CC) is used, which eventually
+ causes 'make' to fail.
+
+ The basic idea is that instead of generating Makefile.in lines like
+ "AM_V_CC = $(am__v_CC_$(V))", we generate
+ "AM_V_CC = $(am__v_CC_@AM_V@)". We then AC_SUBST $(V) for @AM_V@
+ in the usual case where `make' supports nested variables,
+ and substitute 1 (or 0) otherwise. Similarly for usages like
+ $(am__v_CC_$(AM_DEFAULT_VERBOSITY)).
+
+ With this change, make implementations that doesn't grasp nested
+ variable expansions will still be able to run Makefiles generated
+ using the silent-rules option. They won't allow the user to
+ override the make verbosity at runtime through redefinition of
+ $(V) (as in "make V=0"); but this is still an improvement over not
+ being able to work at all.
+
+ * NEWS: Document this.
+ * automake.in (define_verbose_var): When defining the variables,
+ use @AM_V@ rather than $(V), and use @AM_DEFAULT_V@ rather than
+ $(AM_DEFAULT_VERBOSITY).
+ * doc/automake.texi (Automake silent-rules Option): Explain new system.
+ * m4/silent.m4 (AM_SILENT_RULES): Check whether `make' supports
+ nested variables, and substitute AM_V and AM_DEFAULT_V accordingly.
+ * tests/silent-nested-vars.test: New test.
+ * tests/Makefile.am (TESTS): Add it.
++>>>>>>> maint
+
2011-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
gitignore: use only one .gitignore file, in the top-level directory
-New in 1.11.0a:
+New in 1.11a:
-* WARNING: Future backward-incompatibilities!
+* Changes to automake:
+
+ - automake now generates silenced rules for texinfo outputs.
- - The Automake support for automatic de-ANSI-fication will be removed in
- the next major Automake release (1.12).
-
- - The `--acdir' option of aclocal is deprecated, and will probably be
- removed in the next major Automake release (1.12).
-
- - 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).
+ - 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).
+
+ - The deprecated options `--output-dir', `--Werror' and `--Wno-error'
+ have been removed.
- - 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).
+ - The obsolete AM_WITH_REGEX macro has been removed.
* Changes to aclocal:
automake internal acdir (by default ${prefix}/share/aclocal-APIVERSION)
and before the system acdir (by default ${prefix}/share/aclocal).
-* Miscellaneous changes:
+ - 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).
+
+* 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.
+
+* Changes related to distribution tarballs:
+
+ - The `dist' and `dist-all' targets now can run compressors in parallel.
+ - "make dist" can now create lzip-compressed tarballs.
+
- In the Automake info documentation, the Top node and the nodes about
the invocation of the automake and aclocal programs have been renamed;
now, calling "info automake" will open the Top node, while calling
## -*- Autoconf -*-
- # Copyright (C) 2009, 2010 Free Software Foundation, Inc.
-# Copyright (C) 2009, 2011 Free Software Foundation, Inc.
++# Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Enable less verbose build rules; with the default set to DEFAULT
# (`yes' being less verbose, `no' or empty being verbose).
AC_DEFUN([AM_SILENT_RULES],
-[AC_ARG_ENABLE([silent-rules],
-[ --enable-silent-rules less verbose build output (undo: `make V=1')
- --disable-silent-rules verbose build output (undo: `make V=0')])
-case $enable_silent_rules in
-yes) AM_DEFAULT_VERBOSITY=0;;
-no) AM_DEFAULT_VERBOSITY=1;;
-*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
+[AC_ARG_ENABLE([silent-rules], [dnl
+AS_HELP_STRING(
+ [--enable-silent-rules],
+ [less verbose build output (undo: `make V=1')])
+AS_HELP_STRING(
+ [--disable-silent-rules],
+ [verbose build output (undo: `make V=0')])dnl
+])
+case $enable_silent_rules in @%:@ (((
+ yes) AM_DEFAULT_VERBOSITY=0;;
+ no) AM_DEFAULT_VERBOSITY=1;;
+ *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
esac
+ dnl
+ dnl A few `make' implementations (e.g., NonStop OS and NextStep)
+ dnl do not support nested variable expansions.
+ dnl See automake bug#9928 and bug#10237.
+ am_make=${MAKE-make}
+ AC_CACHE_CHECK([whether $am_make supports nested variables],
+ [am_cv_make_support_nested_variables],
+ [if AS_ECHO([['TRUE=$(BAR$(V))
+ BAR0=false
+ BAR1=true
+ V=1
+ am__doit:
+ @$(TRUE)
+ .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
+ am_cv_make_support_nested_variables=yes
+ else
+ am_cv_make_support_nested_variables=no
+ fi])
+ if test $am_cv_make_support_nested_variables = yes; then
+ dnl Using `$V' instead of `$(V)' breaks IRIX make.
+ AM_V='$(V)'
+ AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+ else
+ AM_V=$AM_DEFAULT_VERBOSITY
+ AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+ fi
+ AC_SUBST([AM_V])dnl
+ AM_SUBST_NOTMAKE([AM_V])dnl
+ AC_SUBST([AM_DEFAULT_V])dnl
+ AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
AM_BACKSLASH='\'
AC_SUBST([AM_BACKSLASH])dnl