2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: drop unnecessary requirement in 'subpkg.test'
* tests/subpkg.test ($required): Drop "bison", it is not required
anymore since commit `v1.11-502-g7e5ae80'.
2011-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
gitlog-to-changelog: new auxiliary script, synced from gnulib
We have plans to stop maintaining a version-controlled ChangeLog
file in the Automake repository, and instead begin to generate it
automatically from the git log messages. To do so, we will use
the `gitlog-to-changelog' script from gnulib.
* lib/gitlog-to-changelog: New, synced from gnulib.
* 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-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.
2011-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
gitignore: use only one .gitignore file, in the top-level directory
* doc/.gitignore, doc/amhello/.gitignore, lib/Automake/.gitignore,
lib/Automake/tests/.gitignore, tests/.gitignore: Deleted, their
contents merged into ...
* .gitignore: ... this top-level file. Since we are at it, improve
it by anchoring files where it makes sense.
2011-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: one more fixlet for gettext macros requirement
* tests/gettext-macros.test (configure.in): Add calls to
AC_INIT and AC_PROG_CC, to avoid a spurious failure in the
later aclocal invocation.
Luckily, this wart wasn't causing any spurious SKIP or FAIL,
but only the redundant addition to the `-Wno-syntax' option
to some aclocal invocations in the gettext tests.
2011-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix handling of gettext macros requirement
The code introduced in the earlier change `v1.11-581-gb7d67d5'
and aimed at automatically fetching all the .m4 files provided by
gettext has proven inadequate, since it hasn't managed to truly
and always get *all* the required .m4 files. For example, it has
failed to fetch the file `intldir.m4' (present in gettext 0.18.1,
and where the macro `AM_GNU_GETTEXT_INTL_SUBDIR' is defined),
which in turn has caused spurious SKIPs of at least the test
`gettext3.test'.
The reason for this debacle is that autopoint looks at the version
specified in AM_GNU_GETTEXT_VERSION to decide which version of the
gettext infrastructure to bring in; since we were unconditionally
specifying the older 0.10.35 version, the newer `.m4' files weren't
brought in.
* tests/gettext-macros.test: In AM_GNU_GETTEXT_VERSION, instead
of unconditionally specifying the older 0.10.35 version, specify
the version of the available `gettextize' or `autopoint' program,
dynamically extracted with the help of ...
(extract_program_version):... this new function, and saved ...
($autopoint_version): ... in this new variable.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix failure due to debugging code forgotten into a test
* tests/missing-tar.test: Don't ever call the `missing' script
with `sh -x'; this was used for debugging, but an instance of
it slipped into the committed test case. Bug revealed by a
failure on a Solaris 10 system with GNU tar installed as `gtar'.
2011-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: avoid spurious failure of libtool and gettext tests
On Solaris 10 (and presumably earlier), /bin/sh trips up on
here-documents that contains a command substitution *and* are
fed to a shell function:
# All as expected.
$ cat <<END
`pwd`
END
/home/stefano
$ echo status = $?
status = 0
# An apparently innocuous function ...
$ kitty () { cat; }
# ... but hilarity ensues!
$ kitty <<END
`pwd`
END
/tmp/sh137723: cannot open
$ echo status = $?
status = 1
We need to work around this misbehaviour in a couple of our
tests (whose failures where causing cascading failures in a
lot of other tests).
* tests/gettext-macros.test: Avoid the use of command substitution
in a here-document passed to the `indent' function, by using the
`echo' builtin instead.
* tests/libtool-macros.test: Likewise.
See also:
<http://lists.gnu.org/archive/html/bug-autoconf/2011-12/msg00001.html>
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
hacking: distribute it, and mention it in the ChangeLog
Not distributing the HACKING file might make it more difficult,
for some random curious user, to get informed about or interested
in the Automake development process, or to send us patches.
* Makefile.am (EXTRA_DIST): Add HACKING.
* HACKING: It's OK to distribute this file, and to mention it in
the ChangeLog.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
regex: deprecate the obsolete macro AM_WITH_REGEX
This is a backport of commit v1.11-433-g37b0aee.
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. Deprecate it, so
that it will be possible to safely remove it in the next major
automake version.
* m4/regex.m4 (AM_WITH_REGEX): Give a warning of the class
`obsolete' when this macro is used.
* doc/automake.texi (Public Macros): Move description of
`AM_WITH_REGEX' from here ...
(Obsolete Macros): ... to here, and declare it as obsolete
and "to be removed in a future version".
* tests/regex-obsolete.test: New test.
* tests/Makefile.am (TESTS): Add it.
* NEWS: Update.
See also:
<http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00131.html>
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
maint: distribute .xz tarballs, not .bz2 ones
Many GNU packages are moving towards xz-compressed tarballs, so
let's follow suit, by dropping the creation and distribution of
a bzip2-compressed tarball and switching to xz instead.
For compatibility and safeness, we will continue to create and
distribute a gzip-compressed tarball as well.
* configure.ac (AM_INIT_AUTOMAKE): Drop `dist-bzip2', add
`dist-xz'.
* NEWS: Update
Suggested by Jim Meyering.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
include: avoid "deleted .am file" problem
* automake.in (handle_configure): When processing `configure.am',
also expand `HAVE-MAKEFILE-IN-DEPS' to a boolean telling whether
`MAKEFILE-IN-DEPS' is empty or not.
* lib/am/configure.am [?HAVE-MAKEFILE-IN-DEPS?]
(%MAKEFILE-IN-DEPS%): New target without dependencies, to
avoid the "deleted .am file" problem. Emit this only when
`?HAVE-MAKEFILE-IN-DEPS?' is true, to avoid generating an
"empty" dependency declaration.
* tests/deleted-am.test: Make grepping of error message stricter.
* tests/dist-missing-am.test: Likewise.
* tests/remake-deleted-am.test: New test.
* tests/remake-deleted-am-2.test: Likewise.
* tests/remake-deleted-am-subdir.test: Likewise.
* tests/remake-renamed-am.test: Likewise.
* tests/makefile-deps.test: Likewise.
* tests/Makefile.am (TESTS): Add the new tests.
* NEWS: Update.
Fixes automake bug#9768.
Report by Peter Johansson.
See also commit `Release-1-10-40-gd0ebf71', which fixed a similar
problem for .m4 files included by configure.ac.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
maint: better use of autoconf 2.68 features
* configure.ac: Now that Automake requires autoconf 2.68 for its
own bootstrapping and build system, we can assume that PACKAGE_URL
gets automatically AC_SUBT'd.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
cosmetics: use proper m4 quoting in configure.ac
* configure.ac (AC_CONFIG_SRCDIR): Use proper m4 quoting
for its arguments.
(AC_CONFIG_AUX_DIR): Likewise.
(AC_PROG_PATH): Likewise.
2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: better handling of gettext and libtool requirements
This change fixes automake bug#9807.
Before this change, the automake testsuite only looked for the
`.m4' files containing libtool and gettext macros definitions in
the directory `${prefix}/share/aclocal' (and in the directories
specified by the `dirlist' file in there, if any), where ${prefix}
was the configure-time automake installation prefix (defaulting
to `/usr/local').
This approach had various shortcomings and disadvantages. Let's
briefly describe the three major ones.
First, on most GNU/Linux systems, a libtool or gettext installed
from distro-provided packages (e.g., by dpkg on Debian/Ubuntu, or
by rmp on RedHat/Fedora) would have `/usr', not `/usr/local', as
its ${prefix}; so, trying to run the automake testsuite with a
simple "./configure && make && make check" would have failed to
execute the libtool and gettext tests on most GNU/Linux distros.
It's true that it was quite easy to work around this issue, by
creating a proper `/usr/local/share/aclocal/dirlist' file with
an entry pointing to `/usr/share/aclocal' (a workaround in fact
used by most automake developers); but the typical user wasn't
aware of the necessity of this trick, so the libtool and gettext
tests was usually skipped on testsuite runs "in the wild", thus
needlessly reducing coverage.
Second, the older testsuite behaviour made more difficult for
the developers to run the testsuite with non-default libtool or
gettext. For example, assume the developer is working on a system
that has a default libtool version 1.5 installed in the /usr/local
hierarchy; to improve coverage, the developer installs also a more
modern libtool version, say 2.4, in its home directory, let's say
in ~/libtool-2.4; he then tries to run the automake testsuite with
this more modern libtool by doing an (apparently) simple:
$ PATH=$HOME/libtool-2.4:$PATH make check
But the automake testsuite would still look for libtool macros in
/usr/local/share/aclocal, not in ~/libtool-2.4/share/aclocal, so
the wrong version of the macros would be picked up, and the tests
would either fail spuriously or (which would be worse) pass without
truly covering the libtool version the developers was thinking to
be testing with.
Worse again, the automake testsuite would *unconditionally* look
for libtool macros in /usr/local/share/aclocal, so even something
like:
$ export ACLOCAL_PATH=$HOME/libtool-2.4/share/aclocal
$ PATH=$HOME/libtool-2.4:$PATH make check
wouldn't work.
Third and last, during a "make distcheck", automake is configured
with a ${prefix} pointing to a proper subdirectory of the build
directory (usually `pwd`/_inst), which gets created on-the-fly;
in this case, with the old approach, the automake testsuite never
found the libtool and gettext macro files, ans so the libtool and
gettext tests was *always* skipped in a "make distcheck".
* tests/libtool-macros.test: New helper test, looking (with the
help of the `libtoolize' script) for libtool macro files required
by most libtool tests, and making them easily accessible.
* tests/gettext-macros.test: New helper test, looking (with the
help of the `libtoolize' script) for libtool macro files required
by most libtool tests, and making them easily accessible.
* tests/defs.in: Update to make it rely on the results and setups
of `libtool-macros.test' and `gettext-macros.test'.
* tests/Makefile.am: Declare dependency of all the logs of libtool
tests from `libtool-macros.log', and all the logs of gettext tests
from `gettext-macros.log'.
(TESTS): Add the new tests.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
fix: typos and grammaros in comments of the new test
* tests/get-sysconf.test: Fix few typos, grammaros and botched
wording. Reported by Eric Blake.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: report useful system information in 'test-suite.log'
It has already happened various times that a user has run the
automake testsuite, experienced a failure, read the messages
telling him "See tests/test-suite.log" and "Please report to
bug-automake@gnu.org", and done exactly that -- sending us only
the contents of `tests/test-suite.log', which are usually not
enough to start debugging the reported failure. So we have to
ask him for more details, and usually also for the `config.log'
file generated by configure. It's time to fix this recurring
feedback inefficiency. We do so by creating a dummy test case
that takes care of copying the contents of `config.log', plus
other useful system information, in the final `test-suite.log'.
* tests/get-sysconf.test: New test, gathering system information
and then always terminating with a SKIP, so that its output gets
copied in `test-suite.log'.
* tests/Makefile.am (TESTS): Add it.
2011-12-07 Reuben Thomas <rrt@sc3d.org> (tiny change)
python: remove relics for Python 1.5 support
* m4/python.m4: The comments in here claim to support only
Python >= 2.0, yet this file still has specific support for
Python 1.5. Just remove it, python 1.5 is 12 years old now,
and practically defunct.
* NEWS: Update.
See also commit `Release-1-10-205-gd5bec12', "Support for
Python 3.0, drop support for pre-2.0."
2011-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
configure: remove extraneous 'eval's from AM_RUN_LOG invocations
* configure.ac: Remove extra 'eval's from AM_RUN_LOG invocations;
for example, instead of "AM_RUN_LOG([eval $PERL --version])",
simply use "AM_RUN_LOG([$PERL --version])"
2011-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
configure: report TeX version in config.log
* configure.ac: If possible, report the version of the selected
TeX program; this should render the logs more informative.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
maint: snapshots from `maint' are still development snapshots
The maintenance-oriented development line in the `maint' branch,
while being usually pretty stable and 99% backward-compatible,
is not always right off production-quality; but until now, the
Automake package version declared in configure.ac hid this fact,
since it appeared to be the version of a stable release (e.g.,
11.1). Fix this.
* configure.ac (AC_INIT): Bump version to "1.11.0a".
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
configure: print proper message for test releases
* configure.ac: If the current release is detected to be a test
release or a development snapshot, print a proper warning for
the user.
* README-alpha: Delete, it's obsolete now (and in fact this file
hasn't been touched in eleven years, since release 1.4b or so).
* HACKING (Release procedure): Don't say to update README-alpha.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
devel: help in comparing Makefile.in from different commits
Now that the generated Makefile.in, configure and aclocal.m4 files
are no longer committed in Automake's git repository, a simple
"git diff" or "git log" no longer shows if and how a change in
Automake results in changes to the Makefile.in files and/or
configure script of its own build system. Still, the ability to
peek so easily at such differences has proved itself quite useful
in the past, often revealing inconsistencies and blunders, and
sometimes even bugs; so it would be a pity to lose that altogether.
With this change, we add a new maintainer recipe that re-introduces
much of that capability, by generating and comparing on the fly the
Makefile.in, configure and aclocal.m4 derived from two arbitrary
commits of the Automake repository.
* Makefile.am (autodiffs, compare-autodiffs): New phony targets.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
repo: don't commit generated files in the git repository anymore
It has been quite some time since autoconf and libtool have stopped
committing the generated autotools files in their git repositories,
with no significant ill effects we're aware of. It's true that the
autoconf bootstrap process has now the minor annoyance that a
pre-installed autoconf is required to complete it; but luckily
automake will not have a similar annoyance, since our bootstrap
script take care, through some hoops, to use the very automake and
aclocal versions from the current git checkout to generate the
required aclocal.m4 and Makefile.in files. In fact, this has been
a necessity also in the past, because automake has been known to
use in its own build system new development features that hadn't
been present in any previously released automake distribution.
* .gitignore: Ignore configure, aclocal.m4, and all the
Makefile.in files.
* configure.ac (AC_PREREQ): New macro call, to require the
latest autoconf (2.68 for the moment).
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
missing: don't try to re-run tar with a munged command line
* lib/missing: If the default `tar' program fails with the given
arguments, and GNU tar is not available, don't try to re-run the
default `tar' with a munged command line (e.g., ditching possibly
unportable options), as that could be subtly alter the intended
semantics (and maybe even create a somewhat corrupted tarball).
Also, it's worth noting that the main purpose of the `missing'
script is to allow a non-developer to build the package in the
face of slightly-skewed timestamps, not to provide wrappers for
all the maintainer tools -- so we don't have to try too hard
when `missing' is just called to wrap `tar'.
* tests/missing-tar.test: New test.
* tests/Makefile.am (TESTS): Add it.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
missing: inform the user if GNU tar is called
* lib/missing: If the code trying to run GNU tar is reached, it
means that the previous attempt to run the default tar program
has failed, very likely producing some error message. At this
point, just running GNU tar without further comments might be
confusing.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
missing: if GNU tar exists but fails when called, give up
* lib/missing: If the code trying to run GNU tar is reached,
don't continue if the invoked GNU tar program fails, as there
is little point in doing so (and can even be confusing and
counter-productive).
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
missing: miscellaneous fixlets
* lib/missing: Some shells, such as Solaris or FreeBSD /bin/sh,
warn about missing programs before performing redirections.
Therefore, where we have to silently check whether a program
exists, perform redirections on a subshell.
Remove redundant uses of double-quotes in variable definitions.
Delete an extra blank line.
2011-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
maint: remove executable bit from automake.in
* automake.in: This file is not meant to be executed, only to
be preprocessed to create the `automake' script; so don't leave
it executable.
2011-12-20 Peter Rosin <peda@lysator.liu.se>
tests: fix spurious failure on systems lacking unistd.h
This is for automake bug#10324.
* tests/silent-lex-generic.test (foo.l): Add a dummy #define of
YY_NO_UNISTD_H, so that the generated foo.c file won't require
unistd.h to be present (it is not present when compiling with,
e.g., MSVC 9).
2011-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: hack to support autoconf-wrapper programs
* tests/defs.in ($AUTOCONF): Add a dummy `-B' option to the
autoconf invocation, so that, when the Debian autoconf wrapper
is involved, it will correctly dispatch an autoconf >= 2.50
instead of defaulting to autoconf 2.13.
($AUTOHEADER, $AUTORECONF): Likewise, but for autoheader and
autoreconf respectively.
Reported by Bruno Haible:
<http://lists.gnu.org/archive/html/automake/2011-12/msg00039.html>
2011-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix a minor spurious failure with FreeBSD make
* tests/remake-am-pr10111.test: Avoid using `#' comments in
makefile recipes, as these have been confusing FreeBSD make.
The failure was masked by the fact that this test is currently
expected to fail.
Suggested by a report from Bruno Haible.
2011-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: make two test scripts executable
* tests/remake-am-pr10111.test: Make executable.
* tests/remake-m4-pr10111.test: Likewise.
2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
readme: reference webpages for automake mailing lists
* README: Rationalize and reorganize the (brief) description of
the automake mailing lists. In particular, instead of suggesting
the reader to write to the `-request' addresses to subscribe to
mailing lists, point him to the relevant webpages, where he can
also subscribe via a web form.
2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
readme: update advice about testsuite execution
* README: Now that the automake testsuite uses the parallel-tests
driver, there is no need for the user to capture the stdout of
"make check" to determine which tests have failed: a detailed log
is automatically saved into the `tests/test-suite.log' file.
Since we are at it, improve the wording by dropping an extra
"please".
2011-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
readme: don't reference the old homepage at sources.redhat.com
* README: Don't reference the old homepage at sources.redhat.com,
which is no longer active; reference the homepage on www.gnu.org
instead. See also automake bug#10157 and bug#10248.
* tests/README: Likewise, and remove related extra-pedantic advice
about copyright papers for test cases (we'll ask for those papers
explicitly when we think they are warranted).
2011-12-12 Stefano Lattarini <stefano.lattarini@gmail.com>
hacking: some more fixlets
* HACKING (Release Procedure): Place the list of pre-release
bootstrap-and-test commands on a line of its own, so it's easy to
select and then paste it into a terminal window.
Fix the explanation of "make git-release", as, since the previous
change, "make git-release" would simply run "make dist" rather
than "make distcheck".
Suggestion from Jim Meyering.
2011-12-12 Peter Rosin <peda@lysator.liu.se>
* NEWS: Fix typo in 'make dist-bzip2' description.
2011-12-10 Stefano Lattarini <stefano.lattarini@gmail.com>
release: don't run "make distcheck" automatically
* Makefile.am (git-dist): The developers should test extensively
before finally creating the release tarball; so don't run "make
distcheck" on their behalf here; instead ...
* HACKING (Release procedure): ... state here that "make check"
and "make distcheck" should be run before calling "make git-dist".
2011-12-09 Jim Meyering <meyering@redhat.com>
Stefano Lattarini <stefano.lattarini@gmail.com>
dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
Before the present change, automake-generated `dist-xz' rule used
a hard-coded `xz -9'. That was a problem because on this front,
xz differs from gzip and bzip2. While the latter two don't incur
any run-time decompression penalty for using a higher compression
level, specifying -9 with xz imposes a potentially fatal virtual
memory requirement on any client that wants to decompress your
tar.xz file.
People have complained that a tarball compressed with -9 cannot
be uncompressed in a low-memory environment (wrt-based embedded).
Hence, instead of defaulting to -9, which is useful only for very
large tarballs, it defaults to -e (equivalent to -6e). This
limits the default memory requirements imposed on decompressors,
yet still gives very good compression ratios.
* lib/am/distdir.am (dist-xz): Do not hard-code xz's -9: that made
it impossible to override. Actually don't default to -9, either,
since that induced inordinately large virtual memory usage when
merely decompressing. Instead, use its XZ_OPT envvar, defaulting
to -e if not defined. Suggested by Lasse Collin.
(dist, dist-all) [?XZ?]: Likewise
(dist-bzip2): Similarly, do not hard-code -9, but do continue to
use -9 by default. Honor the BZIP2 envvar.
(dist, dist-all) [?BZIP2?]: Likewise
* NEWS: Update.
* doc/automake.texi (The Types of Distributions): Describe the
newly enabled environment variables.
2011-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
* NEWS: Fix typos, grammaros and suboptimal wording.
Reported by Jim Meyering.
2011-12-07 Stefano Lattarini <stefano.lattarini@gmail.com>
maint: sync auxiliary files from upstream
* lib/texinfo.tex: Synced from upstream, by "make fetch".
* lib/config.guess: Likewise.
* lib/config.sub: Likewise.
2011-12-04 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failures due to missing 'yywrap()' function
The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
the "lex library" expected to provide a `yywrap' function (function
which is required to link most lex-generated programs). On the
contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
fail, configure declares that no lex library is needed, and simply
proceeds with the configuration process -- only for the build to
possibly fail later, at make time.
This behaviour is intended; the Autoconf manual reads:
``You are encouraged to use Flex in your sources, since it is
both more pleasant to use than plain Lex and the C source it
produces is portable. In order to ensure portability, however,
you must either provide a function `yywrap' or, if you don't use
it (e.g., your scanner has no `#include'-like feature), simply
include a `%noyywrap' statement in the scanner's source.''
This AC_PROG_LEX behaviour is causing some spurious failures of
the Automake testsuite in environments which lack a proper library
providing `yywrap' (this happens for example on Fedora-based
systems). The proper workaround is to simply provide a fall-back
implementation of `yywrap' in our lexers.
See also partially-overlapping commit `v1.11-871-geb147a1' (from
the 'testsuite-work' branch), which was motivated by similar
spurious failures experienced when cross-compiling.
From a report by Jim Meyering:
<http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
* tests/cond35.test: Provide a dummy `yywrap' function.
* tests/lex3.test: Likewise.
* tests/silent-lex-generic.test: Likewise.
* tests/silent-lex-gcc.test: Likewise.
* tests/silent-many-generic.test: Likewise.
* tests/silent-many-gcc.test: Likewise.
2011-12-04 Paul Eggert <eggert@cs.ucla.edu>
depcomp: spelling fix
* lib/depcomp (-h): Fix misspelling in usage diagnostic.
2011-11-28 Peter Rosin <peda@lysator.liu.se>
tests: fix 'distcheck-override-infodir.test' on Cygwin
* tests/distcheck-override-infodir.test (Makefile.am): Do not add
any `/' between $(DESTDIR) and the following paths. Otherwise,
when $(DESTDIR) is empty, the recipes will try to access files
with a leading double slash, which have an implementation-defined
interpretation (e.g., for Cygwin, they mean UNC paths).
2011-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
cosmetics: typofix in comments
* tests/remake-am-pr10111.test (Makefile.am): Fix typo in comments.
* THANKS: Update.
Reported by Krzysztof Żelechowski.
2011-11-22 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: undistributed '.am' and '.m4' files are diagnosed
The stub rules emitted to work around the "deleted header problem"
for `.m4' files (included by autoconf in e.g., configure.ac) and
for `.am' files (included by automake in e.g., Makefile.am) should
not prevent "make" from correctly complaining when such a required
file is missing from a distribution tarball.
* tests/dist-missing-am.test: New test.
* tests/dist-missing-m4.test: Likewise.
* tests/dist-missing-included-m4.test: Likewise.
* tests/Makefile.am (TESTS): Add them.
Suggestion by Ralf Wildenhues.
2011-11-22 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: required but missing '.am' and '.m4' files are diagnosed
The stub rules emitted to work around the "deleted header problem"
for `.m4' files (included by autoconf in e.g., configure.ac) and
for `.am' files (included by automake in e.g., Makefile.am) should
not prevent the remake rules from correctly erroring out when a
still-required file is missing.
* tests/deleted-am.test: New test.
* tests/deleted-m4.test: Likewise.
* tests/Makefile.am (TESTS): Add them.
2011-11-22 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: expose automake bug#10111 in the testsuite
* tests/remake-am-pr10111.test: New test, xfailing.
* tests/remake-m4-pr10111.test: Likewise.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
2011-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
texinfo: work around Solaris 10 xpg4 shell bug in install rules
* lib/am/texinfos.am (install-html-am): Use an extra variable
indirection to work around a bug in Solaris 10 /usr/xpg4/bin/sh.
Bug revealed by a failure of `txinfo21.test'. See also:
<http://lists.gnu.org/archive/html/bug-autoconf/2011-11/msg00005.html>
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10026#23>
2011-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
configure: report perl version in config.log
* configure.ac: Report the version of the selected perl interpreter
in config.log; this should render the logs more informative.
2011-11-13 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure with older install-info
* tests/install-info-dir.test (foo.texi): Also add proper
`@settitle', `@dircategory' and `@direntry' directive, otherwise
older versions of `install-info' (e.g., 4.8) will fail to create
the `dir' index file in ${infodir}.
Problem revealed by a failure on NetBSD 5.1.
2011-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: fix spurious failure in 'color2.test'
* tests/color2.test: Avoid creative quoting to avoid a spurious
failure of the `sc_tests_Exit_not_exit' maintainer check.
2011-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious error in 'uninstall-fail.test' on Solaris
* tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
a line number before the `:' in the error messages issued by shell
builtins. Account for that in our grepping of make output.
2011-11-12 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix typo in 'uninstall-fail.test'
* tests/uninstall-fail.test: Always use `$rm_f_is_silent_on_error'
instead of the bogus `$rm_f_is_silent_on_failure'.
2011-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: avoid a spurious failure of 'ltinit.test' MinGW
* tests/ltinit.test: Be laxer in grepping configure output, to
avoid spurious failures on systems which lack POSIX dynamic
linking (e.g., MinGW), or when cross-compiling for such systems.
See also commit `v1.11-855-ge9e5d4a'.
Report and suggestion from Peter Rosin.
2011-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: testsuite is now safe to run with dmake in parallel mode
* tests/defs.in: Unset variables DMAKE_CHILD, DMAKE_DEF_PRINTED
and DMAKE_MAX_JOBS, which are exported by Solaris dmake when run
in parallel mode, and which might confuse make processes spawned
by our testsuite.
2011-11-08 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failures w.r.t. parallel make and colorization
* tests/color2.test: Skip the test if the $MAKE program fails to
consider the standard output as a tty when spawned by `expect'.
This is required for make implementations, like FreeBSD make and
Solaris dmake, that redirect the output of recipes to temporary
files or pipes when run in parallel mode. Since we are at it,
simplify the detection of a working `expect' program, and throw
in other minor simplifications.
2011-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure in 'distcheck-override-infodir.test'
* tests/distcheck-override-infodir.test ($required): Add
'install-info'.
2011-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: avoid another failure of 'uninstall-fail.test' on Solaris
* tests/uninstall-fail.test: On Solaris 10, if `/bin/rm' is run
with the `-f' option, it doesn't print any error message when
failing to remove a file (due to e.g., "Permission denied").
Yikes. Cater to this incompatibility, by relaxing the test when
a faulty `rm' is detected.
2011-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: various minor tweakings, mostly related to AM_PROG_AR
* tests/alloca2.test: Ensure we don't experience a spurious failure
due to a missing `AM_PROG_AR' macro or a missing `ar-lib' auxiliary
script.
* tests/libtool4.test: Likewise.
* tests/ldadd.test: Likewise. Since we are at it, make grepping of
automake stderr stricter.
* tests/reqd2.test: Likewise.
* tests/pr211.test: Ensure automake fails also with `-Wnone', since
the error we are testing for is an hard error, not a mere warning.
* tests/syntax.test: Likewise, and ensure we don't fail to other
errors by removing use of `lib_LTLIBRARIES' in Makefile.am. Since
we are at it, make grepping of automake stderr stricter.
2011-11-05 Stefano Lattarini <stefano.lattarini@gmail.com>
ar-lib: fix configure output for "unrecognized archiver interface"
* m4/ar-lib.m4: Ensure that, even when an error is hit while trying
to determine the archiver interface kind, the "checking archiver
interface" message from configure is properly terminated before
an error message is printed, to avoid slightly garbled output.
* tests/ar4.test: Enhance.
* tests/ar5.test: Likewise.
2011-11-04 Stefano Lattarini <stefano.lattarini@gmail.com>
warnings: fix buglets for portability warnings
* lib/Automake/ChannelDefs.pm (switch_warning): Ensure the
correct implications and inter-dependencies between warnings
in the categories `portability', `extra-portability' and
`recursive-portability' are respected. Also add detailed
explicative comments, and references to the relevant tests.
* tests/dollarvar2.test: Update and extend. Also, remove
some unnecessary uses of `--force' option in automake calls.
* tests/extra-portability3.test: New test.
* tests/Makefile.am (TESTS): Add it.
2011-11-04 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: extend tests on 'extra-portability' warning category
* tests/extra-portability.test: Redefine `$AUTOMAKE' to ensure we
have complete control over the automake options. Extend by using
also a setup where no `portability' warning is present (only an
`extra-portability' warning is). Other minor extensions. Remove
some redundant, verbose comments about the expected diagnostic.
2011-11-03 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: various minor tweakings, mostly related to AM_PROG_AR
* tests/alloca.test: Adjust to new portability requirements due
to the new AM_PROG_AR macro.
* tests/discover.test: Likewise.
* tests/libobj3.test: Likewise.
* tests/pluseq7.test: Likewise. Also, make grepping of automake
expected error message stricter.
* tests/stdlib.test: Likewise, and extend the test a bit.
* tests/parse.test (configure.in): Remove redundant call to
AC_PROG_RANLIB.
* tests/library2.test: Adjust to new portability requirements
due to the new AM_PROG_AR macro. Also ...
(configure.in): ... add call to AC_PROG_CC, to ensure automake
really fails for the expected reason.
2011-11-03 Zack Weinberg <zackw@panix.com> (tiny change)
Stefano Lattarini <stefano.lattarini@gmail.com>
maint-mode: fix botched configure messages
This change fixes automake bug#9890.
* m4/maintainer.m4 (AM_MAINTAINER_MODE): Fix the "checking ..."
configure message related to the enabling/disabling of maintainer
mode.
* tests/help-maintainer.test: Renamed ...
* tests/maintmode-configure-msg.test: ... to this, and extended
to cover the fixed bug. Also, since we are at it, make grepping
of configure help screens stricter, and throw in some few other
changes to reduce code duplication and enhance readability.
* tests/Makefile.am (TESTS): Update.
* THANKS: Update with Zack's new e-mail address.
Report and initial patch by Zack Weinberg, test cases added by
Stefano Lattarini.
2011-10-23 Stefano Lattarini <stefano.lattarini@gmail.com>
info: allow user to inhibit creation/update of '${infodir}/dir'
With this change, we allow the user to request the install-info
rules not to update the `${infodir}/dir' file, by setting the
environment variable `AM_UPDATE_INFO_DIR' to the value "no".
This is especially useful to distro packagers, and is a definite
improvement over our previous hack of looking whether the
`install-info' program was the Debian or GNU version -- hack
which had been silently broken with recent versions of debian
install-info BTW (probably since dpkg 1.15.4, 2009-09-06).
This change fixes automake bug#9773. See also Debian Bug#543992.
* lib/am/texinfos.am: Don't look anymore at the output of
`install-info --version' to decide whether to use it to update
the `${infodir}/dir' or not; instead, honour the environment
variable `AM_UPDATE_INFO_DIR'.
* tests/install-info-dir.test: New test.
* tests/Makefile.am (TESTS): Add it.
* tests/defs: Also unset `AM_UPDATE_INFO_DIR', to avoid unwanted
interferences from the environment.
* doc/automake.texi (Texinfo): Update.
* NEWS: Likewise.
* THANKS: Likewise.
Report by Jonathan Nieder.
2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
deps: partially revert commit `v1.11-512-geeee551'
This change partly reverts commit "Create subdirs for generated
sources even when not dep tracking", of 2011-04-02.
That commit had caused the bugs #8485 and #8526. Since we are
nearing the bug-fixing automake release 1.11.2, the safest policy
at the moment is to just revert the problematic hunks: an older,
known bug is better than a regression.
* automake.in (handle_single_transform): Don't add a dirstamp
dependency, even when $object is derived and lands in a subdir.
* tests/Makefile.am (XFAIL_TESTS): Add lex-subobj-nodep.test,
remove yacc-dist-nobuild-subdir.test.
2011-10-25 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: few improvements to some `ar-lib' related tests
* tests/ar-lib5a.test (Makefile.am): Also check that the target
library has truly been created.
(ar-lib): Use the real `ar-lib' script (mildly patched) rather
than a dummy one, to ensure better "real-life coverage". Fix
botched shebang line.
* tests/ar-lib5b.test: Extend the PATH variable to make the dummy
`lib' script accessible, instead of explicitly calling it by its
relative/absolute path.
(ar-lib): Fix botched shebang line.
(bin/lib): Likewise. Also, add explicative comments, and make
slightly stricter.
2011-10-24 Peter Rosin <peda@lysator.liu.se>
Merge branch 'maint' into msvc
* tests/subpkg-yacc.test: Adjust to new portability requirements due
to the new AM_PROG_AR macro.
2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
dejagnu: allow the package developer to extend site.exp
Fixes automake bug#7873.
* lib/am/dejagnu.am (site.exp): Depend from the files listed in
$(EXTRA_DEJAGNU_SITE_CONFIG), if any. Append their contents to
the generated site.exp (still preserving user edits).
* doc/automake.texi (Dejagnu Tests): Update.
* tests/dejagnu-siteexp-append.test: New test.
* tests/dejagnu-siteexp-extend.test: Likewise.
* tests/dejagnu-siteexp-useredit.test: Likewise.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
Suggestion by Rainer Orth.
2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
dejagnu: ensure 'srcdir' is defined as a relative directory
This change fixes automake bug#7833.
* lib/am/dejagnu.am (check-DEJAGNU): Prefer using plain $(srcdir)
over calculating and using the absolute path of $(srcdir).
* tests/dejagnu-relative-srcdir.test: New test.
* tests/dejagnu-absolute-builddir.test: Likewise.
* tests/Makefile.am (TESTS): Update.
Report by Ian Lance Taylor. Suggestions by Ralf Wildenhues.
2010-12-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix testsuite failure of check12.test without DejaGNU.
* tests/check12.test: Require runtest.
2010-12-10 Stefano Lattarini <stefano.lattarini@gmail.com>
Extend and improve tests on DejaGnu support.
* tests/dejagnu.test: Do not create useless dummy test script.
Add trailing `:' command. In heading comments, add reference
to ...
* tests/check12.test: ... this new "semantic" test, covering
concurrent use of dejagnu tests, simple tests and `check-local'
target.
* tests/dejagnu2.test: Make test more reliable, by avoid weak
grepping of make output. Prefer `cat' over `echo' to append
to configure.in. Quote literal dots in grep regexps. Prefer
`grep -c ...' over `grep ... | wc -l'. Make grepping of
automake stderr slightly stricter. Add trailing `:' command.
* tests/dejagnu3.test: Prefer `cat' over `echo' to append to
configure.in. Check stderr of expected-to-fail "make" call.
Remove extra blank lines from Makefile.am.
* tests/dejagnu4.test: Prefer `cat' over `echo' to append to
configure.in. Prefer `mv -f' over plain `mv' when the target
file already exists. Avoid extra mkdir calls by creating more
directories at once. Better use of blank lines. Check that
the `*.log' and `*.sum' files are created by runtest also when
"make check" fails.
* tests/dejagnu7.test: Prefer `cat' over `echo' to append to
configure.in. Better use of blank lines. Add a trailing `:'
command.
* tests/dejagnu6.test: Likewise, and give the dejagnu test a
more descriptive name.
* tests/dejagnu5.test: Likewise. Also, simply define package
name to `$me' rather than using a non-obvious sed script to
extract it from `AC_INIT', and write the Makefile.am with only
one command.
* tests/Makefile.am (TESTS): Updated.
2011-10-21 Peter Rosin <peda@lysator.liu.se>
* THANKS: Fix whitespace issue.
2011-10-18 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure with FreeBSD make and Yacc in VPATH
* tests/subpkg.test: Some cosmetic adjustments. Move the tests
checking that $(YLWRAP) is defined and installed properly when
ylwrap is in a default auxdir found in a parent package ...
* tests/subpkg-yacc.test: ... into this new test, which carefully
avoids to trigger the known bug#7884 (combo FreeBSD make plus Yacc
plus VPATH build).
* tests/Makefile.am (TESTS): Update.
2011-10-18 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: avoid spurious failure in 'parallel-tests3.test'
This fixes automake bug#8788.
* tests/parallel-tests3.test: To ensure that the serial run of
the dummy testsuite is still ongoing when the parallel run has
terminated, use `kill -0', not a bare `kill'. This will prevent
a testsuite crash on NetBSD 5.1, and a testsuite hang on FreeBSD
8.2. Also, since we are at it, try harder to avoid possible
hangs of the script in other unusual situations.
2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failures with "chatty" make implementations
* tests/distcheck-missing-m4.test: On failure, some make
implementations (such as Solaris make) print the whole failed
recipe on standard output. This was causing a spurious failure
in the checks grepping the output from make. Work around this.
* tests/distcheck-outdated-m4.test: Likewise.
2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure on fast machines
* tests/aclocal-path-precedence.test: Also remove the `configure'
script between different test runs, to ensure it is always remade
by autoconf. Add proper explicative comments.
2011-10-20 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: avoid spurious failure of 'uninstall-fail.test' on Solaris
* tests/uninstall-fail.test: All the Solaris 10 shells (/bin/sh,
/bin/ksh, and /usr/xpg4/bin/sh), upon failing to chdir to a
directory with the `cd' builtin, print a message like:
"sh: /root: permission denied"
which doesn't report the `cd' builtin anywhere. Relax the grepping
of the error message accordingly.
2011-10-19 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: avoid spurious failure of 'uninstall-fail.test' on Cygwin
* tests/uninstall-fail.test: Be sure to really skip this test
on systems that allows files to be removed from unwritable
directories. Motivated by a spurious failure on Cygwin 1.5.
2011-10-17 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure with autoconf 2.62
* tests/aclocal-path-precedence.test: Rewrite configure.in,
rather than appending to it, to avoid spurious failures (at
least with autoconf 2.62) due to repeated calls to AC_INIT.
Also, add package name and version arguments to AC_INIT, to
avoid spurious errors from automake.
2011-10-16 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: avoid using colon character inside arguments of @pxref
Fixes automake bug#9753
* doc/automake.texi (VPATH Builds): Avoid using colon character
`:' inside arguments of @pxref, as this can cause problems in
the generated `.info' files, and such an usage will be explicitly
forbidden by future texinfo documentation.
* THANKS: Update.
Reported by Дилян Палаузов.
2011-10-07 Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: warn on conditional TEST_EXTENSIONS definition
Before this change, automake would have still bailed out, but
with a confusing error message (about an invalid redefinition
of TEST_EXTENSIONS).
* automake.in (handle_tests): Warn explicitly if TEST_EXTENSIONS
has conditional contents.
* tests/test-extensions-con.test: New test.
* tests/Makefile.am (TESTS): Add it.
* NEWS: Update.
2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: don't allow @substitutions@ in TEST_EXTENSIONS
Even after the last commit `v1.11-476-g90bea64', the checks
performed by automake on entries in $(TEST_EXTENSIONS) tried to
allow for @substitited@ stuff. This however ends up allowing
quite brittle setups, which, most importantly, are of no real
practical usefulness anyway. So it's better to just disallow
@substitutions@ in TEST_EXTENSIONS altogether, offering a clear
error message, instead of risking weird bugs and unexpected
behaviors in the generated Makefile.in.
* automake.in ($TEST_EXTENSION_PATTERN): Turned from a regular
expression ...
(is_valid_test_extension): ... into this subroutine. Don't allow
generic @substitutions@ anymore (possibly making an exception for
`@EXEEXT@' under the proper circumstances).
* tests/test-extensions.test: Adjust and extend.
2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure in 'insthook.test'
* tests/insthook.test (Makefile.am): Add a proper `uninstall-hook'
target to remove the symlink created by the `install-exec-hook'
target; this prevents "make distcheck" from failing spuriously.
Since we are at it, delete an extra blank line, and add a trailing
`:' command.
2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: fix spurious failure
* lib/am/distdir.am: Use `$(infodir)', not `${infodir}', to avoid
complaints from the `sc_no_brace_variable_expansions' maintainer
check.
2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
fix: make a test script executable
* tests/nobase-nodist.test: Make executable.
2011-10-06 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: expose automake bug#9651
* tests/dist-auxfile.test: New test, xfailing.
* tests/dist-auxfile-2.test: Likewise.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Add them.
2011-10-01 Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: automake error our on invalid TEST_EXTENSIONS
This change fixes automake bug#9400.
* automake.in (handle_tests): Bail out if a suffix specified in
TEST_EXTENSIONS would produce an invalid `xxx_LOG_COMPILER'
variable or an invalid suffix rule. Before this change, automake
would have issued a confusing error messages (about invalid or
non-POSIX variables being defined), and in some situations would
have even produced a broken `Makefile.in' file.
($TEST_EXTENSION_PATTERN): New helper variable.
* doc/automake.texi (Simple Tests using parallel-tests): Document
the limitations on TEST_EXTENSIONS explicitly.
* NEWS: Update.
* tests/test-extensions.test: New test.
* tests/Makefile.am (TESTS): Update.
2011-09-28 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: don't suggest installing `.m4' files in hard-coded location
This change fixes automake bug#7988.
* doc/automake.texi (aclocal Options): State that the use of
the `--print-ac-dir' option to determine the directory where
third-party packages can install their `.m4' files is discouraged
now.
(Extending aclocal): Suggest telling the user about ACLOCAL_PATH.
* THANKS: Update.
Report by Peter Johansson.
2011-09-26 Stefano Lattarini <stefano.lattarini@gmail.com>
distuninstallcheck: fail also when only one file is left installed
This change fixes automake bug#9579.
* lib/am/distdir.am (distuninstallcheck): Be stricter in ignoring
a potential `dir' file created by install-info and left installed.
Also, be more careful about "this can't happen" kind of errors.
(am__distuninstallcheck_listfiles): New internal helper macro.
* tests/distcheck-pr9579.test: New test.
* tests/distcheck-override-infodir.test: Likewise.
* tests/Makefile.am (TESTS): Add them.
* NEWS, THANKS: Update.
Report by Nick Bowler.
2011-09-28 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: fix usage of `cd' instead of `$(am__cd)'
* lib/am/inst-vars.am (am__uninstall_files_from_dir): Use
`$(am__cd)', not plain `cd'.
2011-09-24 Stefano Lattarini <stefano.lattarini@gmail.com>
uninstall: "make uninstall" before "make install" works
This change fixes automake bug#9578.
* lib/am/inst-vars.am (am__uninstall_files_from_dir): New internal
macro, that defines a shell code fragment to uninstall files from
a given directory.
* lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use it, to reduce code
duplication and improve consistency and correctness.
* lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise.
* lib/am/lisp.am (uninstall-%DIR%LISP): Likewise.
* lib/am/mans.am (uninstall-man%SECTION%): Likewise.
* lib/am/python.am (uninstall-%DIR%LIBRARIES): Likewise.
* lib/am/scripts.am (uninstall-%DIR%SCRIPTS): Likewise.
* tests/uninstall-pr9578.test: New test.
* tests/uninstall-fail.test: New test.
* tests/Makefile.am (TESTS): Add them.
* NEWS, THANKS: Update.
Report by Nick Bowler.
2011-09-22 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix tests on aclocal search path precedences
* tests/aclocal-path-precedence.test: Call `$ACLOCAL' with the
proper overridden system acdir.
2011-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
* NEWS: Fix typo.
2011-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: document planned precedence changes in aclocal search path
* doc/automake.texi (Macro Search Path): Explicitly state that the
lookup order for extra directories of `.m4' files will be changed
in the next major release.
* NEWS: Likewise.
2011-09-19 Paolo Bonzini <bonzini@gnu.org>
Stefano Lattarini <stefano.lattarini@gmail.com>
aclocal: handle ACLOCAL_PATH environment variable
* aclocal.in (parse_ACLOCAL_PATH): New function, parse ACLOCAL_PATH
as a colon-separated list of directories to be included in the
search path.
* doc/automake.texi (Macro Search Path): Document new behavior and
the precedence rules for various elements of the search path.
* tests/aclocal-path.test: New test.
* tests/aclocal-path-install.test: Likewise.
* tests/aclocal-path-install-serial.test: Likewise.
* tests/aclocal-path-precedence.test: Likewise.
* tests/aclocal-path-nonexistent.test: Likewise.
* tests/Makefile.am (TESTS): Add them.
* NEWS: Update.
* tests/distcheck-missing-m4.test: Extend by also checking
interactions with ACLOCAL_PATH.
* tests/distcheck-outdated-m4.test: Likewise, and fix a couple
of botched comments since we are at it.
2011-09-19 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure in 'primary-prefix-valid-couples.test'
* tests/primary-prefix-valid-couples.test: After commit
v1.11-464-gc9dfc36, `java_JAVA' is not a valid prefix/primary
combination by default anymore: one has to explicitly define
$(javadir) to make it so. So just drop `java_JAVA' from our
Makefile.am Also, since we are at it, ...
(configure.in): ... remove AM_PROG_GCJ from here, as it's not
really required.
2011-09-19 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: deprecate JAVA primary
* doc/automake.texi (Java): Deprecate the JAVA primary, stating
that it will become obsolete in automake 1.12 and probably removed
altogether in automake 1.13. Reflect this in the section title,
by appending the string "(deprecated feature)".
(@menu, @detailmenu): Update.
(Java Support with gcj): The cross-referenced support for bytecode
compilation with the JAVA primary is rudimentary and deprecated.
State that explicitly.
2011-09-19 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: clearer distinction between `.java' with javac and with gcj
* doc/automake.texi (Java support): Rename this node ...
(Java support with gcj): ... to this, and change its title from
"Compiling Java sources" to "Compiling Java sources using gcj".
(@detailmenu, @menu, @cindex): Update and make more precise.
(Java): Change the title of this node from simply "Java" to
"Java bytecode compilation".
(@detailmenu, @menu, @cindex): Update and make more precise.
2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
java: complain if java_JAVA is used but $(javadir) is undefined
Fixes automake bug#8461.
* automake.in (handle_java): Remove inappropriate "java" argument
from the calls to `&am_install_var' and `&am_primary_prefixes'.
* tests/instdir-java.test (Makefile.am): Define `$(javadir)'.
* tests/javadir-undefined.test: New test.
* tests/Makefile.am (TESTS): Add it.
* NEWS: Update.
2011-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
cosmetics: fix various typos and grammaros
* NEWS: Fix typos.
* tests/py-compile-basic.test: Likewise.
* tests/py-compile-basedir.test: Fix botched wording in comments.
* tests/py-compile-option-terminate.test: Fix typo and incomplete
comment.
Suggestions by Peter Rosin.
2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: test interactions of `nobase_' and `nodist_'
* tests/nobase-nodist.test: New test.
* tests/Makefile.am (TESTS): Add it.
2011-09-18 Stefano Lattarini <stefano.lattarini@gmail.com>
java: fix various blunders in test 'java-mix.test'
* tests/java-mix.test: Add missing call to `set -e'. Fix inverted
semantics (`.java' files are expected *not* to be distributed by
default, not the other way round). Fix various typos in the name
of the `.java' files. Correct other minor blunders. Improve some
comments.
2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
java: allow both JAVA and nobase_JAVA in the same Makefile.am
* automake.in (handle_java): Also strip `nobase_' from the given
prefix, when needed.
* tests/java-clean.test: Update and extend.
* tests/java-compile-install.test: Likewise.
* tests/java-no-duplicate.test: Likewise.
* tests/java-sources.test: Likewise.
* tests/java-noinst.test: Likewise.
* tests/java-mix-dist-nodist.test: Renamed to ...
* tests/java-mix.test: ... this, and extended.
* tests/java-nobase.test: New test, still xfailing due to
unrelated issues.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
2011-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
java: allow both dist_JAVA and nodist_JAVA in the same Makefile.am
Fixes automake bug#8434.
* automake.in (handle_java): Strip `dist_' and `nodist_' from
the given prefix. Define a new internal Makefile variable
`am__java_sources'. Related adjustments.
* lib/am/java.am (JAVAC, JAVAROOT, CLASSPATH_ENV): Define only the
first time this am file is processed.
(class%DIR%.stamp): Stamp file renamed ...
(class%NDIR%.stamp): ... to this, so that the `dist_' and `nodist_'
prefixes are stripped from the name of the stampfile. Adjust
declaration of dependencies by using the new automake-generated
internal variable `$(am__java_sources)'. In the rule, use `$@'
as the name of the target, rather than hard-coding it.
* tests/java.test: Update and extend.
* tests/java-no-duplicate.test: New test.
* tests/java-mix-dist-nodist.test: Likewise.
* tests/java-compile-and-install.test: Likewise.
* tests/java-clean.test: Likewise.
* tests/java-sources.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure on fast machines
* tests/aclocal-acdir.test: Avoid spurious failures due to caching
issues, by cleaning the autom4te cache between all the aclocal
invocations, and by always calling autoconf with the `--force'
flag.
2011-09-09 Stefano Lattarini <stefano.lattarini@gmail.com>
aclocal: better URL reference in error message
* aclocal.in (scan_file): In the error message about underquoted
definitions, reference the automake page at `www.gnu.org', not
at `sources.redhat.com'.
2011-09-09 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: distcheck-hook to catch missing/outdated *.m4 files
Related to automake bug#9037.
* tests/distcheck-missing-m4.test: New test.
* tests/distcheck-outdated-m4.test: Likewise.
* tests/distcheck-hook-m4.am: New data file, used by the new
tests.
* tests/Makefile.am (distcheck-m4-missing.log,
distcheck-m4-outdated.log): Depend on it.
(EXTRA_DIST): Distribute it.
(TESTS): Add the new tests.
2011-09-06 Stefano Lattarini <stefano.lattarini@gmail.com>
aclocal: more granularity in acdir overriding
Before this change, using the `--acdir' option caused aclocal to
redefine both the directory of automake-provided m4 macros and the
directory of third-party system-wide m4 macros. With this change,
we deprecate the `--acdir' aclocal option, and introduce two new
options `--automake-acdir' and `--system-acdir', to allow for more
granularity.
* aclocal.in (@automake_includes, @system_includes,
@user_includes): Fix and extend comments.
(usage): Update.
(handle_acdir_option): New function.
(parse_arguments): Recognize new options `--system-acdir' and
`automake-acdir', and handle `--acdir' using the new function
above. Simplify logic by assuming that the directory of
third-party system-wide m4 files always exists.
* tests/aclocal.in: Update to use the new options, instead of
the deprecated. `--acdir'.
* m4/dirlist: Move ...
* m4/acdir/dirlist: ... here.
* m4/Makefile.am (EXTRA_DIST): Update.
(m4datadir): Rename ...
(automake_acdir): ... to this. Accordingly, ...
(dist_m4data_DATA): ... rename this ...
(dist_automake_ac_DATA): ... to this.
(system_acdir): New, directory.
(dist_system_ac_DATA): New, defined to an empty value; this will
ensure that the $(system_acdir) directory will be created by
"make install".
* tests/aclocal.test: Remove check about the `--print-ac-dir'
option of aclocal, it has been moved into ...
* tests/aclocal-print-acdir.test: ... this new test, and quite
extended.
* tests/aclocal-acdir.test: New test.
* tests/Makefile.am (TESTS): Add the new tests.
* NEWS, bootstrap: Update.
* doc/automake.texi (aclocal Options, Macro Search Path): Update.
2011-10-21 Peter Rosin <peda@lysator.liu.se>
warnings: new 'extra-portability' category, for AM_PROG_AR
* lib/Automake/ChannelDefs.pm: Register new extra-portability
warning channel.
(switch_warning): Turn off extra-portability if portability is
turned off, and turn on portability if extra-portability is
turned on.
(set_strictness): Silence extra-portability for --gnits, --gnu
and --foreign.
* tests/extra-portability2.test: New test, checking that the
extra-portability channel is silenced by --gnits, --gnu and
--foreign.
* doc/automake.texi (Invoking Automake): Document the new warning
category and its interaction with the portability category.
* tests/extra-portability.test: New test, checking the interaction
between the portability and extra-portability warning categories.
* automake.in (handle_libraries, handle_ltlibraries): Move the
AM_PROG_AR warnings to the new extra-portability channel.
* tests/ar2.test: Adjust to the new warning channel.
* tests/pr300-lib.test: Likewise.
* tests/pr300-ltlib.test: Likewise.
* tests/pr307.test: Likewise.
* tests/pr401.test: Likewise.
* tests/pr401b.test: Likewise.
* tests/pr401c.test: Likewise.
* tests/pr72.test: Likewise.
* NEWS: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-10-21 Peter Rosin <peda@lysator.liu.se>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini <stefano.lattarini@gmail.com>
Add new 'AM_PROG_AR' macro, triggering the 'ar-lib' script.
* m4/ar-lib.m4: New macro AM_PROG_AR, which locates an
archiver and triggers the auxiliary 'ar-lib' script if needed.
* m4/Makefile.am (dist_m4data_DATA): Update.
* automake.in ($seen_ar): New variable.
(scan_autoconf_traces): Set it.
(handle_libraries, handle_ltlibraries): Require AM_PROG_AR for
portability.
* doc/automake.texi (Public Macros): Mention the new
'AM_PROG_AR' macro.
(Subpackages): Add AM_PROG_AR to the example.
(A Library): Adjust recommendations for AR given the new
AM_PROG_AR macro.
* All relevant tests: Adjust to new portability requirements due
to the new AM_PROG_AR macro.
* tests/ar-lib2.test: New test, checking that AM_PROG_AR triggers
install of ar-lib.
* tests/ar-lib3.test: New test, checking that lib_LIBRARIES
requires AM_PROG_AR.
* tests/ar-lib4.test: New test, checking that lib_LTLIBRARIES
requires AM_PROG_AR.
* tests/ar-lib5a.test: New test, checking that AM_PROG_AR triggers
use of ar-lib when the archiver is Microsoft lib.
* tests/ar-lib5b.test: New test, checking that AM_PROG_AR triggers
use of ar-lib when the archiver is a faked lib.
* tests/ar-lib6a.test: New test, checking the ordering of
AM_PROG_AR and LT_INIT.
* tests/ar-lib6b.test: New test, checking the ordering of
AM_PROG_AR and AC_PROG_LIBTOOL.
* tests/ar-lib7.test: New test, checking that automake warns
if ar-lib is missing.
* tests/ar3.test: New test, checking that AR and ARFLAGS may
be overridden by the user even if AM_PROG_AR is used.
* tests/ar4.test: New test, checking that AM_PROG_AR bails out
if it cannot determine the archiver interface.
* tests/ar5.test: New test, checking that AM_PROG_AR runs its
optional argument if it cannot determine the archiver interface.
* tests/defs.in: New required entry 'lib'.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
2011-09-05 Peter Rosin <peda@lysator.liu.se>
* tests/amhello-binpkg.test: Add missing $EXEEXT usage.
2011-09-04 Stefano Lattarini <stefano.lattarini@gmail.com>
fix: list test 'vala-vpath.test' in XFAIL_TESTS
* tests/Makefile.am (XFAIL_TESTS): Update.
2011-09-02 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: simplify wrapper for aclocal
* tests/aclocal.in: Remove use of $ACLOCAL_TESTSUITE_FLAGS and
extra `-I' flags; they are not really required, since the file
`m4/amversion.m4' is generated in the srcdir anyway.
* tests/acloca10.test: Remove use of $ACLOCAL_TESTSUITE_FLAGS.
* tests/acloca18.test: Likewise.
* tests/defs.in: Don't nullify $ACLOCAL_TESTSUITE_FLAGS, and do
not export it.
2011-09-02 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: vala support failing for VPATH from-scratch builds
* tests/vala-vpath.test: New test, xfailing.
* tests/Makefile.am (TESTS): Update.
* THANKS: Update.
From a report by Zbigniew Jędrzejewski-Szmek.
Related to automake bug#8753.
2011-09-01 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: report few more automake parsing limitations
Partly motivated by automake bug#8360.
* doc/automake.texi (General Operation): Report few more automake
limitations w.r.t. parsing of unusual makefile constructs. Related
minor reorderings.
* tests/doc-parsing-buglets-colneq-subst.test: New test.
* tests/doc-parsing-buglets-tabs.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-08-25 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: list "forgotten" test script in TESTS
* tests/Makefile.am (TESTS): Also list ...
* tests/java-empty-classpath.test: ... this test. Since we are
at it, remove trailing whitespace from a couple of lines.
2011-08-25 Eric Blake <eblake@redhat.com>
ylwrap: fix unusual indentation whitespace
* lib/ylwrap: Convert tabs to spaces.
Reported by Karl Berry.
2011-08-17 Stefano Lattarini <stefano.lattarini@gmail.com>
* THANKS (Daniel Richard G.): Update e-mail address.
2011-08-16 Daniel Richard G. <skunk@iskunk.org> (tiny change)
Stefano Lattarini <stefano.lattarini@gmail.com>
java: avoid compilation errors when CLASSPATH is empty
* lib/am/java.am (CLASSPATH_ENV): When redefining `$CLASSPATH',
do not append an empty component in case the previous value of
CLASSPATH is empty or unset.
* tests/java-empty-classpath.test: New test.
* tests/Makefile.am (TESTS): Update.
Fixes automake bug#9306.
2011-08-16 Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: no more spurious successes for FreeBSD make
Work around a bug of FreeBSD make bug that was causing the
automake-generated "check" target to complete with success
even if some tests failed; this happened only when FreeBSD
make was run in concurrent mode (as in, e.g., "make -j2
check"). The bug is not present in NetBSD make.
This change fixes automake bug#9245:
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9245>
See also FreeBSD PR bin/159730:
<http://www.freebsd.org/cgi/query-pr.cgi?pr=159730>
* lib/am/check.am [%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Use a
more "safe" (and apparently redundant) idiom to exit with error,
so that the non-zero exit status is picked up also by FreeBSD
make when it's running in concurrent mode.
* NEWS: Update.
* tests/check-concurrency-bug9245.test: New test.
* tests/Makefile.am (TESTS): Update.
2011-08-11 Stefano Lattarini <stefano.lattarini@gmail.com>
hacking: we now require autoconf 2.68
* HACKING ("Working in git"): Use autoconf and autom4te 2.68,
not 2.67, in the examples.
2011-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: more environment cleanup
* tests/defs.in: Also unset variables AM_COLOR_TESTS and
AM_TESTS_ENVIRONMENT.
2011-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure with Solaris make
* tests/distcheck-configure-flags-am.test: Avoid using `+=' too
liberally with AM_DISTCHECK_CONFIGURE_FLAGS, since the line breaks
so introduced, in conjunction with single quotes, might confuse
Solaris make.
2011-08-03 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: fix maintainer-check failures, both real and spurious
* tests/amhello-binpkg.test: Use "$MAKE", not bare "make".
* Makefile.am (sc_perl_local): Also allow perl special variable
`$~' to be localized. And be slightly laxer in the regexp, to
allow for usages like "local $_ = $foo;".
(sc_tests_overriding_macros_on_cmdline): Also allow for command
line overriding of the `DISABLE_HARD_ERRORS' make variable. Try
to avoid false positives for usages like "$MAKE || st=$?".
2011-08-03 Bruno Haible <bruno@clisp.org>
docs: how to use '-I' option in AM_CPPFLAGS for best VPATH support
* doc/automake.texi (Program Variables): Recommend -I options to
both the build directory and the source directory when needed.
2011-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: relax a test on amhello examples to cater to Solaris tar
* tests/amhello-binpkg.test: When the tar implementation in use
is not GNU tar, relax the tests on tar output, to avoid spurious
failures. For example, "tar cvf ..." with GNU tar can output
lines like "./usr/bin/hello" on the standard output, while with
Solaris tar it can output lines like "a ./usr/bin/hello 8K" on
standard output, and with Heirloom tar it can output lines like
"a ./usr/bin/hello 15 tape blocks" on standard error.
2011-07-15 Benoit Sigoure <tsunanet@gmail.com>
docs: add references between the 2 sections on java support
* doc/automake.texi (Java Support, Java): Add cross-references.
2011-07-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Sync auxiliary files from upstream.
* INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub,
lib/texinfo.tex: Sync from upstream.
2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix weakness in 'tests-environment-backcompat.test'
* tests/tests-environment-backcompat.test: Do not override the
content of xfailing test `baz.test' with a "weaker" version that
fails unconditionally: the test must fail only when the 'strict'
pragma is in use, in order not to reduce coverage.
2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
docs, tests: synchronize examples on silent-rules from config.site
* doc/automake.texi (Automake silent-rules Option): Reference test
'silent-configsite.test' in comments.
2011-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: portability fixes in tests on amhello examples
* tests/amhello-binpkg.test: Don't use "tar xzf too.tag.gz" to
extract a gzip-compressed tarball, that's unportable to some
tar implementations; use the "gzip -dc fo.tar.gz | tar xf -"
idiom instead.
* tests/amhello-cflags.test: Likewise.
* tests/amhello-cross-compile.test: Likewise.
Suggestion from Ralf Wildenhues.
2011-07-04 Stefano Lattarini <stefano.lattarini@gmail.com>
remake: add test ensuring that slower remakes don't hang
* tests/remake-subdir-long-time.test: New test.
* tests/Makefile.am (TESTS): Update.
Suggestion by Ralf Wildenhues.
2011-07-04 Stefano Lattarini <stefano.lattarini@gmail.com>
remake: fix outdated comment in configure.am
* lib/am/configure.am: Fix comment falsified by changes in
commit `v1.11-366-gbee9871'.
Suggestion by Ralf Wildenhues.
2011-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
docs, tests: synchronize examples from docs to tests
* tests/README (Writing test cases): Give suggestions on how to
keep test cases and examples in the documentation synchronized.
* doc/automake.texi: Improve or fix existing testcase-referencing
comments, and add many new ones.
* HACKING (Administrivia): Suggest to test complex examples and
idioms from the manual.
* tests/specflg8.test: Improve synchronization with the example
in the manual.
* tests/output11.test:Likewise.
* tests/txinfo21.test:Likewise.
* tests/interp.test: Likewise. Since we are at it, and enable
the `errexit' shell flag, do related changes, and add trailing
`:'command.
* tests/amhello-cflags.test: New test.
* tests/amhello-cross-compile.test: Likewise.
* tests/amhello-binpkg.test: Likewise.
* tests/tests-environment-backcompat.test: Likewise.
* tests/parallel-tests-log-compiler-example.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: avoid a footnote, some related rewordings and improvements
* doc/automake.texi (Dist): Reword the part about automatically
distributed files to avoid a footnote. Since we are at it, extend
a bit, and add an example and a reference to a relevant test case.
2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: minor cosmetic fixes
* doc/automake.texi: Break few overly long lines, throughout the
file.
("Simple Tests"): Move @vindex for XFAIL_TESTS to the correct
position, i.e., before and not after the paragraph where it is
introduced.
("Options" @item ansi2knr): Use @pxref instead of @xref. This
fixes a texinfo warning.
("Other things Automake recognizes" @item AM_C_PROTOTYPES): Use
@pxref instead of @ref.
2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
help: improve text about automatically-distributed files
This change fixes automake bug#7819.
* automake.in (usage): Distinguish between files that are always
automatically distributed when found, and those which are only
"under certain conditions".
* doc/automake.texi (Basics of Distribution): Update accordingly.
* tests/autodist-subdir.test: Update.
* tests/autodist-no-duplicate.test: Likewise.
* tests/autodist.test: Likewise.
(configure.in): Remove useless call to AM_MAINTAINER_MODE.
2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
refactor: split 'usage' subroutine in automake
This change is related to automake bug#7819.
* automake.in (print_autodist_files): New subroutine,
extracted from ...
(usage): ... this, which now uses it.
* tests/autodist-no-duplicate.test: New test.
* tests/Makefile.am (TESTS): Update.
2011-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix bug in 'autodist.test'
* tests/autodist.test: Avoid spurious failure due to no
`defs-static' file being found in the parent directory.
2011-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: extend 'sc_tests_plain_*' checks
* Makefile.am (sc_tests_plain_autom4te): New check.
(sc_tests_plain_autoreconf): Likewise.
(sc_tests_plain_autoheader): Likewise.
(syntax_check_rules): Update.
2011-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: avoid few spurious failures
* Makefile.am (sc_tests_plain_aclocal, sc_tests_plain_perl,
sc_tests_plain_autoconf, sc_tests_plain_automake,
sc_tests_plain_autoupate): Be stricter in matching an erroneous
literal command, i.e., `aclocal', `automake', `perl', etc.
2011-06-20 Bert Wesarg <bert.wesarg@googlemail.com> (tiny change)
check: don't use multi-line coloring for the report
"less -R" can't handle multi-line coloring as it is done for the
check reports of the serial and parallel testsuite, because of
performance reasons. Thus, color each line of the check report
by its own.
* lib/am/check.am (am__text_box): Accept colors for lines, and
color each line by its own.
[%?PARALLEL_TESTS%] $(TEST_SUITE_LOG): Let am__text_box handle
the line coloring.
[!%?PARALLEL_TESTS%] $(check-TESTS): Color each report line by
its own.
* THANKS: Update.
2011-06-18 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: AM_DISTCHECK_CONFIGURE_FLAGS is for corner cases
* doc/automake.texi (Checking the Distribution): Explain that the
developers should take care of making their code buildable without
requiring any special configure options, so that in general
AM_DISTCHECK_CONFIGURE_FLAGS shouldn't be used. Give an example
of where its use is legitimate.
Suggestions from Ralf Wildenhues and Eric Blake.
2011-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
ansi2knr: deprecate, it will go away in the next major release
* doc/automake.texi: Loudly and repeatedly state that the old
de-ANSI-fication features are now deprecated and will be removed
in the next major Automake release. Other related adjustments.
* lib/Automake/Options.pm (_process_option_list ): Give a warning
in the `obsolete' category when the `ansi2knr' option is used.
* m4/protos.m4 (AM_C_PROTOTYPES): Deprecate this macro: a warning
in the `obsolete' category will be emitted it if is used.
* tests/ansi2knr-deprecation.test: New test.
* tests/Makefile.am (TESTS): Update.
* tests/ansi.test: Adjust, by calling autoconf and/or automake
with the `-Wno-obsolete' flag.
* tests/ansi10.test: Likewise.
* tests/ansi2.test: Likewise.
* tests/ansi3.test: Likewise.
* tests/ansi3b.test: Likewise.
* tests/ansi4.test: Likewise.
* tests/ansi5.test: Likewise.
* tests/ansi6.test: Likewise.
* tests/ansi7.test: Likewise.
* tests/ansi8.test: Likewise.
* tests/ansi9.test: Likewise.
* tests/cxxansi.test: Likewise.
* tests/libobj8.test: Likewise.
* NEWS: Update about the future planned backward-incompatibility
due to the removal of de-ANSI-fication feature.
2011-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: primary/prefix combination "pkglib_PROGRAMS" is now invalid
* doc/automake.texi (Program Sources): pkglib_PROGRAMS is not a
valid combination anymore, so don't document it. Inconsistency
introduced in commit `v1.11-373-g9ca6326'.
2011-06-19 Jim Meyering <meyering@redhat.com>
docs: replace obsolete @vindex entry with a useful one
* doc/automake.texi (Program Sources): Do not index obsolete
pkglib_PROGRAMS here. Do index pkglibexec_PROGRAMS.
2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: optimize tests on primary/prefix mismatch for speed
* tests/primary-prefix-invalid-couples.test: Partial rewrite, in
order to use just a single automake invocation rather than one
invocation for each invalid primary/prefix couple. This improves
the test script execution time by an order of magnitude.
Since we are at it, throw in some other improvements to avoid
unrelated automake warnings and failures that could potentially
cause false positives w.r.t. the automake exit status.
2011-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
news: update w.r.t. introduction of AM_DISTCHECK_CONFIGURE_FLAGS
* NEWS (Miscellaneous changes): Update.
2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: DISTCHECK_CONFIGURE_FLAGS can be defined on make cmdline
* Makefile.am (sc_tests_overriding_macros_on_cmdline): It's now
acceptable that the test scripts override DISTCHECK_CONFIGURE_FLAGS
on the make command line. Update comments accordingly. Since we
are at it, make the relevant grepping rules slightly tighter.
2011-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS
* doc/automake.texi (Checking the Distribution): Suggest to use
AM_DISTCHECK_CONFIGURE_FLAGS, not DISTCHECK_CONFIGURE_FLAGS, to
define (in the top-level Makefile.am) extra flags to be passed
to configure at "make distcheck" time; DISTCHECK_CONFIGURE_FLAGS
should be reserved for the user. Add proper `@vindex' directive.
Document that AM_DISTCHECK_CONFIGURE_FLAGS is not honoured in a
subpackage Makefile.am, but the flags in it are passed down to
the configure script of the subpackage.
* lib/am/distdir.am (distcheck): Also pass the flags in
$(AM_DISTCHECK_CONFIGURE_FLAGS) to the configure invocation.
Update comments.
* tests/defs.in.test (AM_DISTCHECK_CONFIGURE_FLAGS,
DISTCHECK_CONFIGURE_FLAGS): Unset in case they are exported in
the environment, they might improperly influence our testsuite.
* tests/distcheck-configure-flags.test: New test.
* tests/distcheck-configure-flags-am.test: Likewise.
* tests/distcheck-configure-flags-subpkg.test: Likewise.
* distcheck-hook.test: Likewise.
* distcheck-hook2.test: Likewise.
* tests/Makefile.am (TESTS): Update.
Closes automake bug#8784.
2010-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: better documentation for silent make rules
* doc/automake.texi (Options): Detailed description of the
automake option `silent-rules' moved from here ...
(Silent Make): ... into this new chapter, expanded, improved,
and subdivided into ...
(Make verbosity, Tricks For Silencing Make,
Automake silent-rules Option): ... these new sections.
(@menu, @detailmenu): Update.
* tests/silent-configsite.test: New test, checking that the
user can control default mode of silent-rules from config.site,
as is documented in the manual.
* tests/Makefile.am (TESTS): Updated.
2011-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
Warnings about primary/prefix mismatch fixed and extended.
* automake.in (%standard_prefix): Add `doc' and `locale'.
Rename `pkgdatadir' to `pkgdata'. Similarly for`pkglibdir',
`pkgincludedir' and `pkglibexecdir'.
(handle_programs): List `pkglibexec', not `pkglib', among the
prefixes valid for the `PROGRAMS' primary.
(handle_data): List also `doc' among the prefixes valid for
the `DATA' primary. This is required by automake's own build
system.
* tests/dirforbid.test: Test removed, superseded by ...
* tests/primary-prefix-invalid-couples.test: ... this new test.
* tests/primary-prefix-valid-couples.test: New test.
* tests/primary-prefix-couples-documented-valid.test: Likewise.
* tests/primary-prefix-couples-force-valid.test: Likewise.
* tests/java3.test: Adjusted, and extended a bit.
* tests/Makefile.am (TESTS): Updated.
* NEWS: Updated.
From a report by Eric Blake.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: new function 'fatal_', for hard errors
Before this patch, the only way offered by tests/defs to
properly signal a hard error was the `framework_failure_'
function. But the error message issued by that function,
as its name would suggest, refers to a set-up failure in the
testsuite, while hard errors can obviously also be due to
other reasons. The best way to fix this inconsistency is to
introduce a new function with a more general error message.
Inspired by a recent similar change to Gnulib's tests/init.sh.
* tests/defs.in (fatal_): New function.
* tests/README (Section "Writing test cases" subsection "Do"):
Suggest the use of `fatal_', not of `framework_failure_', for
generic hard errors. The latter should be reserved for "real"
set-up failures.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
py-compile: '--' and non-option arguments terminate the option list
* lib/py-compile: Any non-option argument, or the special `--'
argument, now explicitly terminates the list of options.
* tests/py-compile-option-terminate.test: New test.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
py-compile: complain on unrecognized options
* lib/py-compile: Complain on unrecognized options. Don't be too
lax in matching `--help' and `--version' options.
* tests/py-compile-usage.test: Extend accordingly.
* NEWS: Update.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
py-compile: normalize error and help messages
* lib/py-compile: Now error messages do not begin with a capital
letter, nor end with a period, as per GNU standards. Prepend the
error messages with the name of the script, not with its path.
When an invalid usage is recognized, always display the customary
message "Try `py-compile --help' ..." on a line of its own.
($me): New variable, containing the name of the
program, i.e., `py-compile'. Use it throughout.
(usage_error): New function, used to display error messages about
invalid usage.
* tests/py-compile-usage.test: Extend and tighten accordingly.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
python tests: add "unit tests" on py-compile
* tests/py-compile-basic.test: New test.
* tests/py-compile-basic2.test: New test.
* tests/py-compile-basedir.test: Likewise.
* tests/py-compile-destdir.test: Likewise.
* tests/py-compile-env.test: Likewise.
* tests/py-compile-usage.test: Likewise.
* tests/Makefile.am (TESTS): Update.
Tested with python 2.0.1, 2.4.6, 2.6.6, 2.7.1, and 3.1.3.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
py-compile: the '--destdir' option now accepts a blank argument
* lib/py-compile (Option parsing): Do not count an empty argument
to `--destdir' or `--basedir' as a missing argument.
* lib/python.am: Simplify accordingly, passing the `--destdir'
option to py-compile unconditionally, even if `$(DESTDIR)' is
empty.
* NEWS: Update.
2011-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
python: run the 'py-compile' script with $(SHELL)
* lib/python.am (install-%DIR%PYTHON): Run each instance of
py-compile using $(SHELL). Since we are at it, break overly
long lines.
(am__py_compile): New variable, to reduce code duplication.
2011-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
maintcheck: fix some failures, extend some checks
* Makefile.am (sc_diff_automake_in_automake): Update, as we
now expect 9 lines, not 8, to be changed from `automake.in'
to `automake'.
(sc_diff_aclocal_in_aclocal): New maintainer check, similar to
the above, and checking that only 10 lines are changed from
`aclocal.in' to `aclocal'.
(syntax_check_rules): Update.
(sc_tests_Exit_not_exit): Exempt self tests `self-check-*.test'
from this check, as they can legitimately use the bare `exit'
builtin in various places.
* doc/automake.texi (Python): Remove stray `@' from the end of
a line. Typo introduced in commit `v1.11-312-g5bf7af6'.
* tests/depcomp8a.test: Pass DISTCHECK_CONFIGURE_FLAGS to make
from the environment rather than from the command line, to
pacify the `sc_tests_overriding_macros_on_cmdline' maintainer
check.
* tests/depcomp8b.test: Likewise.
2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
remake: behave better with non-GNU make in subdirectories
Currently, with every decent make program, it is possible to
rebuild out-of-date autotools-generated files with a simple
"make Makefile" -- but for this to work reliably with non-GNU
make implementations, the command must be issued from the
top-level directory. This patch removes such limitation.
* lib/am/configure.am (am--refresh): Depend on `%MAKEFILE%'.
* tests/defs.in (using_gmake): New function, backported from the
`master' branch (and simplified).
* tests/remake-subdir.test: New test.
* tests/remake-subdir2.test: Likewise.
* tests/remake-subdir-gnu.test: Likewise.
* tests/remake-subdir-from-subdir.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
automake, aclocal: honour configure-time AUTOCONF and AUTOM4TE
Currently, the Automake's own configure script allow definition
of AUTOCONF and AUTOM4TE, expected to point respectively to an
autoconf and autom4te programs. But while these definitions are
honoured in the Automake's build systems and test suite, they
were *not* honoured in the generated `automake' and `aclocal'
scripts. This behaviour, apart from being wrong in that it does
not allow the user enough freedom in choosing his tools, also
caused inconsistencies in the test suite, brining to spurious
failures.
Problem reported by Graham Reitz on the automake list; see thread:
<http://lists.gnu.org/archive/html/automake/2011-05/msg00022.html>
* automake.in ($traces): Use `@am_AUTOCONF', not simply `autoconf'.
* aclocal.in ($traces): Use `@am_AUTOM4TE', not simply `autom4te'.
* Makefile.am (do_subst): Substitute also `@am_AUTOCONF' and
`@am_AUTOM4TE'.
* NEWS: Update.
* THANKS: Update.
2011-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
Our build system allows the user to override AUTOCONF and AUTOHEADER
at configure time, and honours these overrides in our testsuite.
But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
This change fixes that inconsistency.
* configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
AC_SUBSTitutions. Update comments.
* tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
* doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
2011-05-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini <stefano.lattarini@gmail.com>
tests/README: fix example about `make -e' usage
* tests/README (Section "Writing test cases" subsection "Do"): When
some variable is never initialized in the Makefile, `-e' is not
necessary in order to override it. DESTDIR is such a variable: we
ensure that we do not ever initialize it. And as such, it is quite
portable to use:
$ make DESTDIR=/foo/bar install
and in fact, quite widely used.
So our example about when `make -e' is required, which references
the `DESTDIR' variable, is poorly chosen, if not downright wrong.
Rewrite it to use `prefix' as the overridden variable instead.
2011-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: stricter checks on DISABLE_HARD_ERRORS support
* tests/parallel-tests-harderror.test: New test, doing more
in-depth checks on DISABLE_HARD_ERRORS.
* tests/parallel-tests.test: Remove tests on DISABLE_HARD_ERRORS,
now redundant.
* tests/Makefile.am (TESTS): Update.
2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
testsuite: avoid re-running few tests with 'parallel-tests' option
Some tests in our testsuite use the 'simple-tests' driver only
marginally, or simply as a mean to conveniently check unrelated
invariants. It makes little sense to force these tests to also
run with the 'parallel-tests' Automake option active, as doing so
offers no real gain in coverage, while often causing a measurable
overhead in execution time (for an already too-slow testsuite).
* tests/pr401.test (parallel_tests): Define to "no", to prevent
the generation of a sibling test script using the 'parallel-tests'
driver.
* tests/pr401b.test: Likewise.
* tests/pr401c.test: Likewise.
2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
testsuite: allow tests to avoid the use of 'parallel-tests' option
* tests/gen-parallel-tests: Do not generate "siblings" for tests
that explicitly define the `parallel_tests', whether to "yes" or
to any other value. Extend heading comments to give a rationale
for this behaviour.
* tests/README: Update.
2011-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
tests/README: update obsoleted advice
* tests/README (Section "Writing test cases" subsection "Do"):
Do not suggest to use the `*-p.test' pattern for the names of
hand-written tests which use the `parallel-tests' Automake option.
Not only is this not respected by the existing tests, but it is
more likely to cause conflicts with auto-generated tests.
So, suggest to *avoid* using the `*-p.test' pattern in names
of hand-written tests instead.
(Section "Writing test cases" subsection "Do not"): When
suggesting not to override Makefile variables using command
line arguments, do not use the badly outdated variables `U'
and 'ANSI2KNR' in the example; instead, use the more common
and typical `DESTDIR'.
2011-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: rename requirement 'non-cross' -> 'native'
* tests/defs.in (non-cross): Rename requirement ...
(native): ... to this, which is clearer and fits the
existing lingo better.
Suggestion by Ralf Wildenhues.
2011-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
testsuite: be more cross-compile friendly
* tests/defs.in (cross_compiling): New subroutine.
(am__tool_prefix): New internal variable.
(gcc, g++, gcj): Force the use of the correct "tool prefix"
when cross compiling.
(gfortran, g77, non-cross): New requirements.
2011-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
check: document and test $(TEST_SUITE_LOG) overriding
* doc/automake.texi (Simple Tests using parallel-tests): Explain
how and why TEST_SUITE_LOG can be overridden at runtime.
* tests/parallel-tests-log-override-1.test: New test, check that
the newly documented idiom and similar usages are truly supported.
* tests/parallel-tests-log-override-2.test: Likewise.
* tests/parallel-tests-log-override-recheck.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure of txinfo21.test on FreeBSD
* tests/txinfo21.test: Use the `is_newest' subroutine instead of
the `ls -t' hack to to determine whether a file has been updated.
This is required because at least FreeBSD `ls' do not sort files
with the same timestamp in alphabetical order when using the `-t'
option.
2011-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
tests defs: allow requirements for compilers (mostly dummy)
Most of the new requirements that are now accepted in `$required'
as consequence of this patch are still dummy. They are planned
to be implemented only in master (or in some derived branch), but
having them here (even just as no-op) will allow for an easier
integration/backporting of potential new testcases.
* tests/defs.in (cc, c++, fortran, fortran77): New requirements,
still dummy.
(flex): New requirement, picking LEX for configure.
(lex): New requirement, alias for `flex'. A more appropriate
implementation, looking for a generic `lex' program, will follow
in the future.
(yacc): New requirement, alias for `bison'. A more appropriate
implementation, looking for a generic `yacc' program, will follow
in the future.
2011-04-24 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failure in a test on TESTS (VPATH-related)
* tests/check-tests-in-builddir.test: When not using the
parallel-tests option, do not check that VPATH components are
not present in the displayed test name, since the simple-tests
driver do not try to strip them.
2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
test: self check subroutines for skipping/failing of tests
* tests/self-check-report.test: New test.
* tests/Makefile.am (TESTS): Update.
2011-04-23 Jim Meyering <meyering@redhat.com>
Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: new subroutines for test skipping/failing
* tests/defs.in (Exit): Move definition of this function earlier.
(warn_, skip_, fail_, framework_failure_): New functions, inspired
to the homonyms in gnulib's tests/init.sh.
($stderr_fileno_): New global variable, used by the new functions
above.
* tests/README: Updated.
From a suggestion by Ralf Wildenhues.
2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix typo (copy & paste blunder) in heading comment
* tests/maintclean-vpath.test: Correctly refer to the sister test
as `maintclean.test', not as `maintclean-vpath.test'.
2011-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: remove redundant test `mclean.test'
* tests/mclean.test: Remove, it's a weak grepping test completely
superseded by the much more complete `maintclean.test'.
* tests/Makefile.am (TESTS): Update.
2011-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
testsuite: more environment sanitization
* tests/defs.in: Sanity check: abort if any of `parallel_tests'
or `required' is in the environment.
($sed_unindent_prog): Initialize to empty, to avoid interferences
from the environment.
* tests/self-check-me-in-env.test: Renamed to ...
* tests/self-check-env-sanitize.test: ... this, and extended.
* tests/Makefile.am (TESTS): Update.
(TESTS_ENVIRONMENT): Unset variables `parallel_tests' and
`required'. Adjust comments.
2011-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: don't allow `$me' to be overridden from the environment
* tests/defs.in: Sanity check: abort if $me is in the environment.
* tests/self-check-me-in-env.test: New test.
* tests/Makefile.am (TESTS_ENVIRONMENT): Unset variable `me'.
(TESTS): Update.
Suggestion by Ralf Wildenhues.
2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: allow overriding of `$me'
* tests/defs.in ($me): Allow overriding by the including test
script. Add some explicative comments.
2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
depcomp tests: don't reject slower dependency extractors
* tests/depcomp8b.test: Add the `--enable-dependency-tracking'
option to `configure' invocations, so that slower dependency
extractors are not rejected.
* tests/depcomp8a.test: Likewise. Also ...
(foo.c): ... since we are at it, fix spacing to be consistent
with GNU coding standards.
2011-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
m4: add missing serial numbers to a few files
Related to automake bug#8483.
* m4/amversion.in: Add serial number.
* m4/auxdir.m4: Likewise.
* m4/gcj.m4: Likewise.
* m4/install-sh.m4: Likewise.
* m4/mkdirp.m4: Likewise.
* m4/python.m4: Likewise.
* m4/runlog.m4: Likewise.
* m4/strip.m4: Likewise.
* m4/upc.m4: Likewise.
2011-04-16 Jim Meyering <meyering@redhat.com>
depcomp: correct invalid sed invocation
* lib/depcomp: Insert missing -e before '/:$/d'.
Otherwise, that use of sed would treat '/:$/d' as a file name.
2011-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
maintainer check: quote literal `$' in Makefile rule
* Makefile.am (sc_tests_PATH_SEPARATOR): Escape literal `$'
character in double-quoted string. Fix a bug in which the rule
emitted an erroneously empty substring in its error message.
2011-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: test for automake bug#8485 (known regression)
* tests/yacc-dist-nobuild-subdir.test: New test.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Update.
2011-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: define default $distdir (help reducing duplication)
* tests/defs.in ($distdir): New variable, might be used in
testcases checking distribution-related features.
* tests/pr9.test: Use it.
* tests/subdir9.test: Likewise.
* tests/vtexi3.test: Add comment explaining why we redefine
$distdir in this test.
2011-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
depcomp: fix bugs in tests and in the depcomp script
* lib/depcomp (gcc): Remove duplicated `-e' from sed invocation.
* tests/depcomp10.test: Make it executable. Fix a blunder that
has left part of an intended comment not prefixed by `#', thus
causing shell syntax errors. In this same comment, break a
too-long reported error message on multiple lines, for clarity.
Add reference to the relevant bug report. Add a comment which
explains why the test result 'skipped' if the first "make" call
fails. Add other useful comments.
* tests/depcomp9.test: Slightly improve comments.
2011-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix hp depmode for VPATH builds with GNU make.
* lib/depcomp: Be sure to remove VPATH-prefixed object from
dependency output when creating stub rule.
* tests/depcomp10.test: New test.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
Report by Bruno Haible.
2011-04-10 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: fix 'javac' requirement for older JDK versions
The Java compiler from JDK 1.5 (and presumably earlier versions)
cannot handle the `-version' option by itself; and while it does
print the version number, it then errors out with an usage error:
$ javac -version
javac 1.5.0_22
javac: no source files
Usage: javac <options> <source files>
...
Luckily, adding the `-help' option to the `javac' invocation
seems to fix this problem.
* tests/defs.in (javac): Pass also the `-help' option to the
`javac' program. Add a comment explaining why it is needed.
Report from Ralf Wildenhues.
2011-04-10 Stefano Lattarini <stefano.lattarini@gmail.com>
test defs: new requirement for the default java compiler
* tests/defs.in (for tool in $required): New requirement 'javac'.
* tests/java.test: Use it instead of ad-hoc configure check.
* tests/java-check.test: Likewise.
* tests/instfail-java.test: Likewise.
* tests/instdir-java.test: Likewise.
2011-04-09 Stefano Lattarini <stefano.lattarini@gmail.com>
java: check_JAVA does not cause compilation by "make all" anymore
Fixes automake bug#8234.
* automake.in (handle_java): Make stamp of class files built from
java sources in $(check_JAVA) a dependency of `check' target, not
`all' target.
* tests/java-check.test: New test.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
* THANKS: Update.
Report from Petteri Räty.
2011-04-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Clarify regex code in depcomp.
* lib/depcomp: Add comment why we don't need regex-escaping here.
Suggested by Stefano Lattarini.
2011-04-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix makedepend depmode for VPATH builds.
* lib/depcomp [makedepend]: Remove any VPATH prefix from the
object file name, so a rebuild doesn't attempt to update the
.Po files in the source tree.
* tests/depcomp9.test: New test.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
2011-04-02 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix timestamp-related failures
Fixes automake bug#8365.
* tests/aclocal6.test: Sleep before modifying m4 files that should
trigger remake rules. Remove incorrect/obsoleted comments.
* tests/subdir5.test: Likewise, and extend a bit.
* tests/subdir8.test: Likewise.
* tests/pr8365-remake-timing.test: New xfailing test.
* tests/Makefile.am (TESTS): Update.
Report from Sam Steingold.
2011-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Create subdirs for generated sources even when not dep tracking.
* automake.in (handle_single_transform): If $object is derived
and lands in subdir, be sure to output a dirstamp dependency.
* tests/yacc5.test: Avoid falsely matching the dirstamp
dependency when grepping for a rule.
* tests/lex-subobj-nodep.test: New test.
* tests/Makefile.am (TESTS): Update.
* THANKS: Update.
Report by Ignacy Gawedzki.
Fix locale issue in check-exported-srcdir.test.
* tests/check-exported-srcdir.test: Reformulate glob to not fail
in a locale that ignores or interleaves character case.
2011-04-01 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: better visibility for aclocal in the index
* doc/automake.texi (@menu): Rename title for entry 'configure'
from "Scanning configure.ac or configure.in" to the more precise
"Scanning configure.ac, using aclocal".
(@detailmenu): Adjust.
(@node configure): Adjust, and extend @cindex calls accordingly.
* THANKS: Update.
From a report by Maynard Johnson.
2011-03-30 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: improve tests on "maintainer-clean" target
* tests/aclocal6.test: Move checks related to "maintainer-clean"
functionalities into ...
* tests/maintclean-vpath.test: ... this new test.
* tests/maintclean.test: Update heading comments. Extend to also
test subdirs. Remove useless disabling of YACC. Fix m4 quoting
in configure.in. Add a trailing `:' command. Remove extra blank
lines.
* tests/Makefile.am (TESTS): Update.
2011-03-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: fix unindent to use printf not echo for script.
* tests/defs.in: Use printf rather than echo, as the latter may
interpret the backslashes in the sed script. Fixes test
failures with dash as /bin/sh.
2011-03-17 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
maintcheck: look for problematic names of testcases
The configure.in stub created by default by `tests/defs' obtains
the first argument of AC_INIT from the test name, and this can
cause some supported autoconf versions to fail with a spurious
error if that test name contains the name of an m4 or m4sugar
builtin or macro (e.g., `defn' or `m4_undefine').
See for example the bug fixed by commit v1.11-287-g1325a8a.
This change add a maintainer check that warns about test names
which are possibly problematic in this regard.
* Makefile.am (sc_test_names): New maintainer-check target.
(syntax_check_rules): Add it.
(m4_builtins): New helper variable.
(TESTS): Updated according to the following renamings.
* tests/include.test: Renamed ...
* tests/hdr-vars-defined-once.test: ... to this.
* tests/sinclude.test: Renamed ...
* tests/m4-inclusion.test: ... to this, and simplified
accordingly.
* tests/include2.test: Renamed ...
* tests/dist-included-parent-dir.test: ... to this, for
consistency.
2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix bug in alloca*.test
* tests/alloca.test: Make grepping of automake stderr stricter,
add a trailing `:' command; also, add AC_PROG_CC to configure.in,
and create a dummy alloca.c file, to ensure that we fail for the
proper reason.
* tests/alloca2.test: Likewise. Also, look for LT_INIT, not
AC_PROG_LIBTOOL, in the error message (bug introduced with commit
v1.11-315-gd51e7b7 "libtool: suggest LT_INIT if LTLIBRARIES
primary is used").
From a report by Patrick Welche.
2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix bug (comments-in-var-defn.test + autoconf 2.62)
* tests/comments-in-var-defn.test: The configure.in stub created
by default, which has the AC_INIT first argument obtained by the
test name, causes autoconf 2.62 to fail with a spurious error
message like: "configure.in:1: error: defn: undefined macro:".
Thus, to prevent this, the test is renamed to ...
* tests/comments-in-var-def.test: ... this.
* tests/Makefile.am (TESTS): Updated.
2011-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
cosmetics: convert encoding from ISO-8859 to UTF-8
* ChangeLog.03: Convert encoding to UTF-8.
* ChangeLog.96: Likewise.
* ChangeLog.98: Likewise.
* NEWS: Likewise.
* TODO: Likewise.
2011-03-01 Peter Rosin <peda@lysator.liu.se>
test defs: unindent without temporary file
* tests/defs.in (commented_sed_unindent_prog): Commented Sed program
that strips the "proper" amount of leading whitespace.
(unindent): Lazily strip comments from the above program and use it
to unindent without using a temporary file.
2011-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
libtool: suggest LT_INIT if LTLIBRARIES primary is used
When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
defined, automake suggested to add a call to AC_PROG_LIBTOOL
in configure.ac. But that macro is deprecated since Libtool
version 1.9b (2004-08-29), in favor of the newer LT_INIT. So
suggest the use of this latter macro instead.
* lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
* tests/libtool4.test: Adjust and extend. Also, add a call to
macro AC_PROG_CC in configure.in, to help ensuring that automake
does not fail for the wrong reasons.
* tests/ltinit.test: New test, ensure that automake's libtool
support works with LT_INIT-based interface.
Thanks to Jack Kelly for the suggestion.
2011-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: tempdirs with restrictive permissions are cleaned correctly
Before this change, the removal of a temporary test directory
containing subdirectories with restrictive permissions (such as
'r--r--r--') could fail.
* tests/defs: Ensure that all the subdirectories of a temporary
test directory have the 'read', 'write' and 'execute' bits set,
before trying to remove it with `rm -rf'.
* tests/Makefile.am (clean-local-check): Likewise.
2011-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
test defs: add subroutine for input unindenting
* tests/defs.in (unindent): New subroutine.
2011-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
python: report the 'PYTHON' influential environment variable
* m4/python.m4 (AM_PATH_PYTHON): Call AC_ARG_VAR on PYTHON.
* doc/automake.texi (Python): Update and extend.
* tests/help-python.test: New test.
* tests/Makefile.am (TESTS): Update.
* THANKS (Jack Kelly): Update e-mail address.
Suggestion by Jack Kelly.
2011-02-10 Stefano Lattarini <stefano.lattarini@gmail.com>
tests defs: clear TESTS_ENVIRONMENT variable
* tests/defs.in (TESTS_ENVIRONMENT): Unset it, so that values
from environment won't interfere with the testcases.
Suggestion by Ralf Wildenhues.
2011-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: tweak few tests on simple and parallel test drivers
* tests/check-exported-srcdir.test: Improve heading comments.
* tests/check-tests-in-builddir.test: Likewise. Also, unset the
`FOO_EXIT_STATUS' variable, so that any pre-existing value in the
environment won't risk to interfere with the test.
Suggestions by Ralf Wildenhues.
2011-02-01 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: more tests on simple and parallel test drivers
* tests/parallel-tests-subdir.test: New test.
* tests/check-exported-srcdir.test: Likewise.
* tests/check-tests-in-builddir.test: Likewise.
* tests/check-tests_environment.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-01-29 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failures in lflags*.test
* tests/lflags.test: Remove 'LEX' from the environment, so
that it won't be erroneously picked up by `make -e'.
* tests/lflags2.test: Likewise.
2011-01-24 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: color-tests issues with parallel make
* doc/automake.texi (Simple Tests): Document that automatic
recognition of a capable terminal attached to stdout can fail
with some make implementation when running in parallel mode,
thus causing colored test output not to be automatically
activated when it should.
2011-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid instspc.test failures due to make's whitespace trimming
* tests/instspc.test: Prepend './' when passing the test
characters, to avoid leading whitespace characters to be trimmed
from macros set from environment variables. Fixes testsuite
failures with HP-UX, IRIX, and Tru64/OSF make.
2011-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
coverage: test semantics of "dummy" per-target flags
* tests/specflg-dummy.test: New test, ensuring that even "dummy"
per-target flags triggers the use of renamed objects.
* tests/Makefile.am (TESTS): Update.
Suggestion by Ralf Wildenhues.
2011-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
tests defs: sanitize IFS
* tests/defs.in ($IFS): Define to <space>, <tab>, <newline>.
($sp): New variable, holding a single whitespace character.
($tab): New variable, holding a tabulation character.
($nl): New variable, holding a newline character.
2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: fix VPATH auto-expansion workarounds.
* tests/parallel-tests8.test, tests/suffix13.test:
Ensure $< is not surrounded by white space, to prevent Solaris
make from applying automatic VPATH text expansion.
2011-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failures in yflags*.test
* tests/yflags.test: Remove 'YACC' from the environment, so
that it won't be erroneously picked up by `make -e'.
* tests/yflags2.test: Likewise.
2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid fn99*.test failures due to buggy AIX 5.3 cp -R.
* tests/fn99.test, tests/fn99subdir.test: Skip if an initial
`cp -R' of the subdir tree already fails; AIX 5.3 cp messes
up its internal memory when copying this tree.
2011-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini <stefano.lattarini@gmail.com>
Add comment to check-TESTS rule working around make 3.80 bug.
* lib/am/check.am (check-TESTS): Update comment.
2011-01-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: less strict double-colon spy.test again.
* tests/spy.test: We know BSD make doesn't invoke more than one
double-colon rule, so no need to expose that failure.
2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
install-sh: avoid Tru64 sh `test' operator precedence issues.
* lib/install-sh: Protect file names and directory components
that consist of `=', `(', `)', or `!'. Move protection as early
as possible, to avoid errors such as with Tru64 sh `test -z ='.
* tests/instsh2.test: Extend test to cover more possibilities.
Fixes 1.12 instspc-equal-install.test failure on Tru64/OSF 5.1.
2011-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: automake testsuite doesn't use TESTS_ENVIRONMENT anymore
* doc/automake.texi (Simple Tests): Do not claim Automake uses
TESTS_ENVIRONMENT for the perl driver. Instead, point to the
parallel-tests driver.
2011-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Allow _AM_DEPENDENCIES to be used later in configure.
* m4/depend.m4 (_AM_DEPENDENCIES): Remove a previously existing
conftest.dir before recreating it.
Fixes bug#7864.
Report by Eric Blake, from report by Scott McCreary against M4.
2011-01-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid failure on w32 file systems.
* tests/parallel-tests-unreadable-log.test: SKIP if file cannot
be turned unreadable.
2011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: allow double-colon spy.test to work with HP-UX make.
* tests/spy.test: Fix comment typos. Ensure prerequisites we
do not want to depend on are strictly older than the target.
Also test with a target out of date wrt. more than one rule.
2011-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: remove useless requirements from cond36.test
* tests/cond36.test ($required): Remove.
Since we are at it, add a trailing `:' command.
2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini <stefano.lattarini@gmail.com>
parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
* lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
Test file readability before redirecting input from it, to avoid
exiting Tru64/OSF 5.1 sh which treats read as special builtin.
* tests/parallel-tests-unreadable-log.test: New test.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
2011-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS, README: Update copyright years.
Fix parallel-tests.test failure with HP-UX make.
* tests/parallel-tests.test: Sleep inside inner tests, so logs
are newer than logs of tests they depend on, for HP-UX make.
2011-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: ensure example are separated with empty lines in the input
* doc/automake.texi (Extending aclocal, Emacs Lisp, Rebuilding)
(API Versioning, Renamed Objects, Multiple Outputs): Add empty
lines before `@example' and after `@end example' lines, so info
output is rendered correctly, and a following @noindent honored.
Report by Stefano Lattarini.
2011-01-15 Jim Meyering <meyering@redhat.com>
tests: fix comment typo
* tests/substref.test: Fix grammar in a comment.
2011-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: fix spurious failures in two texinfo tests
* tests/txinfo.test ($required): Add 'makeinfo'.
* tests/txinfo8.test: Create a dummy 'textutils.info' file, so
that make won't try to run makeinfo (which could be unavailable)
to build it.
Found by NixOS Hydra, reported by Ralf Wildenhues.
2011-01-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid testsuite failures due to Autoconf Fortran change.
Autoconf v2.68-21-g727ce95 causes AC_F77_LIBRARY_LDFLAGS to
require computing the canonical host name. Ensure config.guess
and config.sub files are present for respective checks.
* tests/compile_f_c_cxx.test: Add stub files.
* tests/flibs.test: Likewise.
* tests/fort4.test: Use $AUTOMAKE -a for installing files.
2011-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: clustered '-d' not recognized in YFLAGS
This change fixes automake bug#7828.
* doc/automake.texi (Yacc and Lex): Document that automake
recognizes '-d' in AM_YFLAGS only if it's not clustered with
other options.
From a report by Юрий Пухальский.
2011-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: add checks on automatically-distributed files
Related to automake bug#7819.
* tests/autodist.test: New test.
* tests/autodist-subdir.test: Likewise.
* tests/autodist-acconfig.test: Likewise.
* tests/autodist-acconfig-no-subdir.test: Likewise.
* tests/autodist-aclocal-m4.test: Likewise.
* tests/autodist-config-headers.test: Likewise.
* tests/autodist-configure-no-subdir.test: Likewise.
* tests/autodist-stamp-vti.test: Likewise.
* tests/Makefile.am (TESTS): Update.
2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
tests: work around a texi+cygnus bug causing a spurious XFAIL
* tests/txinfo5b.test: New test, like txinfo5.test but calling
automake with the `-Wno-override' option to work around a bug
in the texinfo + cygnus interaction.
* tests/txinfo5.test: Update heading comments.
* tests/Makefile.am (TEST): Updated.
2011-01-09 Dave Hart <davehart@gmail.com> (tiny change)
Fix another typo in Rule.pm comment.
* lib/Automake/Rule.pm: Fix typo.
2011-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
Improve, extend and tweak tests on Texinfo support.
* tests/instdir-texi.test: Add a call to `ls -l' after that to
`make', for debugging. When looking for required tools, do not
redirect the output of "$tool --help" to /dev/null, and do not
uselessly run it in a subshell.
* tests/txinfo.test: Rewritten to run autoconf, ./configure and
make. All checks moved into Makefile.am.
* tests/txinfo8.test: Likewise, and modernize the generated
configure.in.
* tests/txinfo2.test: Moved checks into Makefile.am, and other
minor improvements.
* tests/txinfo5.test: Enable `errexit' shell flag, and related
changes. Add trailing `:' command.
* tests/txinfo6.test: Likewise, and make grepping of generated
Makefile.in stricter.
* tests/txinfo7.test: Enable `errexit' shell flag, and related
changes. Add trailing `:' command. Do not add unnecessary stuff
to Makefile.am.
* tests/txinfo9.test: Verify that more targets which are expected
to be generated only once really are. Make grepping less strict,
to avoid exposing too much internal details. More minor changes.
* tests/txinfo16.test: Add trailing `:'. Prefer cat over echo
for appending to configure.in. Updated/fixed heading comments.
* tests/txinfo23.test: Likewise, and extended a little by making
it check that no info file is created in the $(srcdir).
* tests/txinfo24.test: Likewise.
* tests/txinfo25.test: Likewise.
* tests/txinfo18.test: Add trailing `:'. Prefer cat over echo
for appending to configure.in. Also, check that index files are
cleaned also by "make clean", not only by "make distclean".
* tests/txinfo22.test: Prefer `$me' over hard-coded test name,
and added trailing `:' command. This testcase also used to check
that automake ignores in-line comments when using variables, but
preserves them in the output; these checks (added in commit
"Release-1-7f-4-g9177ef8") do not really pertain to this test,
so they have been moved ...
* tests/comments-in-var-defn.test: ... into this new test.
* tests/txinfo4.test: Escape literal dots in grep regexps. Add
trailing `:' command.
* tests/txinfo29.test: Likewise. Relax grepping of generated
Makefile.in w.r.t. whitespaces. Prefer `cat' over `echo' to
append to configure.in.
* tests/txinfo3.test: Likewise.
* tests/vtexi.test: Improve grepping of Makefile.in (sometimes
make it stricter, sometimes laxer). Move `set -e' setting just
after the inclusion of ./defs. De-uglify a sed command. Other
minor cosmetic improvements.
* tests/vtexi2.test: Make grepping of Makefile.in stricter. Add
trailing `:' command.
* tests/vtexi3.test: New test on version.texi support.
* tests/vtexi4.test: Likewise.
* tests/Makefile.am (TESTS): Updated.
2011-01-09 Peter Rosin <peda@lysator.liu.se>
Fix another typo in Rule.pm comment.
* lib/Automake/Rule.pm: Fix typo.
2011-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
cosmetics: remove trailing whitespaces
* doc/automake.texi: Remove trailing whitespaces.
* tests/cond13.test: Likewise.
* tests/cond14.test: Likewise.
* tests/fort4.test: Likewise.
* tests/fort5.test: Likewise.
* tests/suffix7.test: Likewise.
* tests/vtexi2.test: Likewise.
automake: minor fixes in comments
* automake.in: Some minor fixes and enhancements in comments.
2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add test coverage for deleted header files.
* tests/depcomp6.test, tests/depcomp7.test: Update tests to
also check for the deleted header bug. If no dependency
tracking mechanism could be found, SKIP rather than exit
successfully. Use GNU style spacing and ANSI C prototypes.
Fix typos in Rule.pm comments.
* lib/Automake/Rule.pm: Fix typos in comments.
docs: split 'amhello Explained' node.
* doc/automake.texi (amhello Explained): Split node ...
(amhello's configure.ac Setup Explained)
(amhello's Makefile.am Setup Explained) : ... into these two.
(Top, Hello World): Adjust, and add @anchor for stable URL links.
Suggestion by Karl Berry in automake bug#7766.
2011-01-08 Karl Berry <karl@freefriends.org>
Eric Blake <eblake@redhat.com>
docs: reference defining directories in amhello node.
* doc/automake.texi (amhello Explained): Point to Autoconf
manual for how to convert directory values into macros.
(Optional): Fix grammar nit.
2011-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
* NEWS: Fix typo (forgotten word).
2011-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: how to work around checks on invalid primary/directory couples
* doc/automake.texi (Uniform): Document the blessed idiom which can
be used to work around automake checks on invalid primary/directory
couples (such as `lib_PROGRAMS' or `doc_LIBRARIES').
2011-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Sync auxiliary files from upstream.
* lib/config.guess, lib/config.sub, lib/texinfo.tex:
Sync from upstream.
Fix maintainer-check regression.
* tests/subobj11a.test: Pass DISTCHECK_CONFIGURE_FLAGS in the
environment.
Bump copyright years.
* aclocal.in (write_aclocal, version): Bump copyright years.
* automake.in (gen_copyright, version): Likewise.
* doc/automake.texi: Likewise.
2010-12-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Stefano Lattarini <stefano.lattarini@gmail.com>
Work around a bug in file-inclusion mechanism of Solaris make.
* automake.in (handle_single_transform): In the name of the
dependency file: collapse multiple slash characters into a single
one.
* tests/subobj11a.test: New test.
* tests/subobj11b.test: Likewise.
* tests/subobj11c.test: Likewise.
* tests/depcomp8a.test: Likewise.
* tests/depcomp8b.test: Likewise.
* tests/Makefile.am (TESTS): Updated.
* NEWS: Updated.
Report by Stefano Lattarini, quick fix by Ralf Wildenhues, final
patch and tests by Stefano Lattarini.
2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix two spurious testsuite failures on IRIX 6.5.
* tests/suffix13.test (Makefile.am): Account for VPATH issues on
weaker make implementations (e.g. IRIX 6.5).
* tests/parallel-tests8.test: Likewise, plus a required related
change.
Reported by Ralf Wildenhues. The bugs have been there from the
first versions of the affected test scripts.
2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: cygnus mode doesn't require AM_CYGWIN32 macro.
* doc/automake.texi (Cygnus): Mode 'cygnus' does not require
the AM_CYGWIN32 macro (and indeed hasn't required it since at
least commit Release-1-2-31-g3038064 "merged changes from
Cygnus" of 1997-08-25).
2010-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
distlinksbrk.test: Work around botched "make -k".
* tests/distlinksbrk.test: Run "make" multiple times and grep
its output each time for a single error message, rather than
running "make -k" one single time and grepping its output for
all the expected error messages. This should work around make
implementations with limited (broken?) `-k' support; for more
information, see these subthreads on the automake-patches list:
- 2010-11-15, "Testsuite failures on HP-UX 11.23",
<http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00162.html>
- 2010-11-15, "Testsuite failures on IRIX 6.5",
<http://lists.gnu.org/archive/html/automake-patches/2010-11/msg00166.html>
2010-12-21 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix sed-related buglet in test "subdir5.test"
* tests/subdir5.test: Always terminate text passed to the
`i' sed command with a newline, to work around limitations
in e.g. older OpenBSD sed.
2010-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: fix blunder in example about python extension modules
* doc/automake.texi (Python): Use `quaternion_la_SOURCES',
not `quaternion_SOURCES', to declare the sources of python
extension module `quaternion.la'.
2010-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
docs: list LTLIBRARIES among Automake primaries
* doc/automake.texi (Uniform): List `LTLIBRARIES' among
the Automake primaries.
2010-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
Improve tests on generated portions of configure help screen.
* tests/help-depend.test: Grepping of configure help screen
relaxed to cater for possible line wrapping, and tightened in
other respects.
* tests/help-depend2.test: Likewise.
* tests/help-dmalloc.test: Likewise.
* tests/help-lispdir.test: Likewise.
* tests/help-maintainer.test: Likewise.
* tests/help-multilib.test: Likewise.
* tests/help-silent.test: Likewise.
* tests/help-upc.test: Likewise.
* tests/help-init.test: Grepping of configure help screen
tightened.
2010-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid running installed automake from 'libtool --help'.
* tests/subobj9.test: Export AUTOCONF and AUTOMAKE.
Together with fixed Libtool, this fixes check-coverage to not
invoke installed automake.
2010-11-25 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix spurious failures in `silent*.test' for $CC != gcc
In some tests on automake-produced silent rules, we forced the
use of gcc depmode to improve testsuite coverage; but this has
unsurprisingly led to spurious failures when some non-GNU C
compilers were used. So we are now careful to require GCC in
tests that force gcc depmode.
From reports by Ralf Wildenhues.
* tests/silent5.test: Test removed, its content split into ...
* tests/silent-many-generic.test, tests/silent-many-gcc.test: ...
these new sister tests, the latter of which forces gcc depmode
and lists "gcc" in $required.
* tests/silentlex.test: Test removed, its content split into ...
* tests/silent-lex-generic.test, tests/silent-lex-gcc.test: ...
these new sister tests, the latter of which forces gcc depmode
and lists "gcc" in $required.
* tests/silentyacc.test: Test removed, its content split into ...
* tests/silent-yacc-generic.test, tests/silent-yacc-gcc.test: ...
these new sister tests, the latter of which forces gcc depmode and
lists "gcc" in $required.
* tests/Makefile.am (TESTS): Updated.
2010-11-21 Stefano Lattarini <stefano.lattarini@gmail.com>
Tests: consistently use "|| Exit 1" after ". ./defs".
* tests/autohdr.test: Use `. ./defs || Exit 1', not bare
`. ./defs', for consistency with other tests.
* tests/autohdr2.test: Likewise.
* tests/autohdr3.test: Likewise.
* tests/autohdr4.test: Likewise.
* tests/cond23.test: Likewise.
* tests/cond24.test: Likewise.
* tests/cond25.test: Likewise.
* tests/cond26.test: Likewise.
* tests/cond27.test: Likewise.
* tests/cond28.test: Likewise.
* tests/cond29.test: Likewise.
* tests/cond30.test: Likewise.
* tests/cond31.test: Likewise.
* tests/cond32.test: Likewise.
* tests/cond33.test: Likewise.
* tests/cond34.test: Likewise.
* tests/cond35.test: Likewise.
* tests/cond36.test: Likewise.
* tests/cond37.test: Likewise.
* tests/cond38.test: Likewise.
* tests/cond39.test: Likewise.
* tests/cond40.test: Likewise.
* tests/cond41.test: Likewise.
* tests/cond42.test: Likewise.
* tests/cond43.test: Likewise.
* tests/cond44.test: Likewise.
* tests/cond45.test: Likewise.
* tests/dollarvar.test: Likewise.
* tests/dollarvar2.test: Likewise.
* tests/hfs.test: Likewise.
* tests/libobj14.test: Likewise.
* tests/percent.test: Likewise.
* tests/percent2.test: Likewise.
* tests/phony.test: Likewise.
* tests/silent.test: Likewise.
* tests/silent2.test: Likewise.
* tests/silent3.test: Likewise.
* tests/silent4.test: Likewise.
* tests/silent5.test: Likewise.
* tests/silent6.test: Likewise.
* tests/silent7.test: Likewise.
* tests/silent9.test: Likewise.
* tests/silentcxx.test: Likewise.
* tests/silentf77.test: Likewise.
* tests/silentf90.test: Likewise.
* tests/silentlex.test: Likewise.
* tests/silentyacc.test: Likewise.
Avoid useless cleaning in some `silent*.test' tests.
* tests/silentf77.test: Removed useless calls to "make clean"
and "make maintainer-clean".
* tests/silentf90.test: Likewise.
* tests/silent3.test: Removed useless call to "make distclean".
* tests/silent4.test: Likewise.
* tests/silent9.test: Likewise.
2010-11-19 Ian Lance Taylor <iant@google.com>
Sync config-ml.in from GCC.
* config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
compiler/flag environment variables.
2010-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
Automake::Config: remove extra trailing semicolon.
* lib/Automake/Config.in: Remove extra trailing semicolon.
help4.test: fix botched heading comment.
* tests/help4.test: Fixed the heading comment, since it
didn't correctly describe what checks the testcase was
supposed to perform.
help2.test: add checks on aclocal too.
* tests/help2.test: Check that also `aclocal --version' and
`aclocal --help' work with configure.in and acinclude.m4 both
broken.
2010-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix spurious failures of silent-rules tests with Sun Fortran.
* tests/silentf77.test: Strip from the make output some verbose
messages possibly printed by the SunStudio fortran compilers, to
avoid spurious failures. Add a trailing `:' command.
* tests/silentf90.test: Likewise.
2010-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix spurious failures of silent5.test with Sun Fortran.
* tests/silent5.test: Strip from the make output some verbose
messages possibly printed by the SunStudio fortran compilers,
to avoid spurious failures. This bug has been there from the
very first version of this test script.
2010-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix regression in colon{5,6}.test (failures on AIX 5.3).
* tests/colon5.test: Also substitute `@SHELL@' with `$SHELL' when
post-processing the generated Makefile.in, to work around a bug
of AIX 5.3 make which doesn't allow setting the `$(SHELL)' macro
on the commend line. Calls to `$MAKE' adjusted accordingly.
* tests/colon6.test: Likewise.
Regression introduced in commit v1.11-175-gf9fe878 "Modernize,
improve and/or extend tests `colon*.test", and reported by Ralf
Wildenhues.
2010-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix regression in ansi.test (failure on AIX 5.3).
* tests/ansi.test: Remove redundant hackish check done using a
hand-postprocessed Makefile.in. This check worked by setting
the `$(SHELL)' macro on the command line of make, but this is
not supported by the AIX 5.3 make implementation.
This bug has been lurking for a long time, and was activated by
commit v1.11-125-gc1f6cdb "Enable `errexit' shell flag in various
tests". Report by Ralf Wildenhues.
2010-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid '##'-style comments inside recipe commands.
* tests/confh.test, tests/confh8.test: Remove
double-hash comments from makefile rule commands, they
are not part of the Automake API.
2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: work around dash quoting issue in case statements.
* tests/color.test, tests/color2.test: Quote variable in case
pattern, to avoid skipping tests with dash 0.5.5.1.
2010-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Rebuild menus in the manual.
* doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
Thanks to Ian Lance Taylor for the suggestion.
Fix install-strip when $(STRIP) contains several words.
* lib/am/install.am (install-strip): Update comment. Use
separate sub-make invocations for empty and nonempty $(STRIP),
to fix quoting issues.
* tests/strip2.test, tests/strip3.test: New tests.
* tests/Makefile.am (TESTS): Adjust.
2010-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix yaccdry.test failure: require bison.
* tests/yaccdry.test: Require bison.
Found by NixOS Hydra.
2010-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix a bug in variable concatenation with `+='.
* lib/Automake/VarDef.pm (append): Since the content of the
"appended-to" variable is going to be unconditionally normalized
later, simply separate the appended value with a single whitespace
character, instead of trying to be uselessly smarter by using
escaped newlines. This fixes a bug in which extra backslashes
where erroneously inserted in the variable's final value.
* tests/pluseq11.test: New test, exposing the bug.
* tests/Makefile.am (TESTS): Update.
Reported by Andy Wingo.
2010-11-06 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix bug in rules for creating vala vapi/header files.
* automake.in (lang_vala_finish_target): Add forgotten "fi" in an
if control structure in a generated make rules. Bug introduced
by previous commit `v1.11-221-gd7c1679', and revealed by failure
of test `vala2.test'.
2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix and document rules to not touch the tree with `make -n'.
* doc/automake.texi (Multiple Outputs): Document the problem of
modifications during dry-run execution, propose solution.
* NEWS: Update.
* automake.in (lang_vala_finish_target): Split recipe so the
stamp file is not removed with GNU `make -n'.
(lang_yacc_target_hook): Separate removal of parser output file
and header remaking.
* lib/am/lisp.am ($(am__ELCFILES)): Determine whether -n was
passed to make, take care not to remove any files in that case.
* lib/am/remake-hdr.am (%CONFIG_H%): Separate removal of
%STAMP% file from induced remaking of config header.
* tests/autohdrdry.test, tests/lispdry.test, tests/yaccdry.test:
New tests.
* tests/Makefile.am (TESTS): Update.
2010-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add FAQ entry for bug reporting instructions.
* doc/automake.texi (Reporting Bugs): New section.
(Introduction): Refer to it.
2010-10-04 Stefano Lattarini <stefano.lattarini@gmail.com>
Add support for newer python versions.
* m4/python.m4 (AM_PATH_PYTHON): Add python2.7 and python3.2 to
_AM_PYTHON_INTERPRETER_LIST. Since we are at it, break a long
line and fix indentation.
* THANKS: Updated.
From a report by Thomas Klausner.
Add test for `AM_WITH_DMALLOC' macro.
* tests/dmalloc.test: New test.
* tests/Makefile.am (TESTS): Update.
Fix nits and bugs in tests `help*.test'.
* tests/help4.test: Fix broken sed commands used to strip `-W...'
flags away from "$AUTOMAKE" and "$ACLOCAL".
* tests/help3.test: Likewise, and fix a botched comment.
* tests/help.test: Likewise. Also, use "AUTOMAKE_fails ..."
instead of "$AUTOMAKE ... && Exit 1", for consistency and to
please maintainer-check.
* tests/help2.test: Likewise.
2010-10-03 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improve tests `help*.test' (also fixes maintcheck failures).
* tests/help.test: To run automake, use `$AUTOMAKE' with all `-W'
flags stripped away rather than hard-coded `automake-$APIVERSION',
to better honour user-overrides. Similarly for aclocal.
* tests/help2.test: Likewise.
* tests/help3.test: Likewise.
* tests/help4.test: Likewise.
2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Document and fix expansion of variables before rules.
* doc/automake.texi (General Operation): Document that variables
are expanded before rules.
* lib/am/check.am (am__check_post): Reword a bit so it does not
get matched as a rule.
Suggestion by Ben Pfaff.
2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Revert "parallel-tests: avoid command-line length limit issue."
This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
because it re-opened the bug fixed by v1.11-10-g218e678.
2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
parallel-tests: avoid command-line length limit issue.
* automake.in (handle_tests): New argument $makefile, new
substitution %MAKEFILE%.
(generate_makefile): Adjust.
* lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
sanitized TEST_LOGS value as makefile snippet on standard
input to $(MAKE), to avoid exceeding the command line limit on
w32 (MSYS).
* NEWS: Update.
Report by Bob Friesenhahn.
2010-09-26 Stefano Lattarini <stefano.lattarini@gmail.com>
Extend tests on `--help' and `--version' options.
* tests/help.test: Create a new empty directory and chdir into
it, rather than removing already present files. Run the aclocal
and automake wrapper scripts directly, instead of relying on
$AUTOMAKE and $ACLOCAL. Be sure to correctly match literal dots
in aclocal's and automake's stderr. Add a trailing `:' command.
* tests/help2.test: New test, checking that options `--help' and
`--version' works in directories with broken `configure.in'.
* tests/help3.test: New test, checking that options `--help' and
`--version' take precedence on the other options.
* tests/help4.test: New test, checking that the first among the
`--help' and `--version' options to be specified on the command
line wins.
* tests/Makefile.am (TESTS): Updated.
2010-09-25 Stefano Lattarini <stefano.lattarini@gmail.com>
Testsuite: Use `$PATH_SEPARATOR', not `:', when extending PATH.
* tests/compile2.test: Do no uselessly (implicitly) repeat the
computation of PATH_SEPARATOR again.
* tests/instmany-mans.test: Use `$PATH_SEPARATOR', not `:', when
extending/redefining PATH.
* tests/instmany-python.test: Likewise.
* tests/instmany.test: Likewise.
* tests/man4.test: Likewise.
* tests/mkinst3.test: Likewise.
* tests/mmodely.test: Likewise.
* tests/multlib.test: Likewise.
* tests/txinfo30.test: Likewise.
* tests/README (Section "Writing test cases" subsection "Do"):
Updated.
* Makefile.am (sc_tests_PATH_SEPARATOR): New maintainer check.
(syntax_check_rules): Updated.
Testsuite: new variables `$PATH_SEPARATOR' and `$APIVERSION'.
* tests/defs.in ($APIVERSION): New AC_SUBST'd variable.
($ACLOCAL, $AUTOMAKE): Use it.
($PATH_SEPARATOR): New AC_SUBST'd variables.
($PATH): Use it.
2010-09-22 Stefano Lattarini <stefano.lattarini@gmail.com>
Manual: be more agnostic w.r.t. version control system used.
* doc/automake.texi (Basics of Distribution): Also refer to `.svn'
directories as a type of probably-unwanted files that are copied
regardless when adding directories to EXTRA_DIST.
(The dist Hook): Show a dist-hook example which removes Subversion
`.svn' private directories from distdir, rather than CVS private
directories.
(missing and AM_MAINTAINER_MODE): Try to be more agnostic w.r.t.
the version control system used.
Manual: index refer to target "git-dist", not "cvs-dist".
* doc/automake.texi (General Operation): Index the non-standard
example about "git-dist" under the "git-dist" label, not under
the "cvs-dist" one.
Perl modules: remove references to "Automake CVS repository".
* lib/Automake/Channels.pm: Update comments to refer to "Automke's
git repository" rather than to "Automake's CVS repository".
* lib/Automake/Configure_ac.pm: Likewise.
* lib/Automake/FileUtils.pm: Likewise.
* lib/Automake/Struct.pm: Likewise.
* lib/Automake/XFile.pm: Likewise.
* lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
branches" rather than "CVS branches".
Remove obsolete .cvsignore files.
* .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
m4/.cvsignore, tests/.cvsignore: Files deleted. Even when using
savannah's CVS readonly mirror there's no way to commit back to
the real repository, so this files are not worth maintaining or
keeping around.
2010-09-21 Stefano Lattarini <stefano.lattarini@gmail.com>
* m4/dmalloc.m4: Bump serial number and copyright years.
2010-09-20 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix broken link in `AM_WITH_DMALLOC' help screen.
* m4/dmalloc.m4 (AM_WITH_DMALLOC): Refer only to the dmalloc site
`http://www.dmalloc.com', not to the dmalloc tarball there (which
seems to have been removed, substituted by multiple release
tarballs now).
2010-09-17 Eric Blake <eblake@redhat.com>
Avoid triple-space after period.
* automake.in (handle_single_transform): Avoid 3 spaces at
sentence end.
* ChangeLog.03: Likewise.
* lib/Automake/ChannelDefs.pm: Likewise.
* lib/Automake/Channels.pm (_print_message): Likewise.
* lib/Automake/Rule.pm (rule): Likewise.
* lib/Automake/Variable.pm (var): Likewise.
* lib/am/distdir.am: Likewise.
* tests/insthook.test: Likewise.
2010-09-15 Stefano Lattarini <stefano.lattarini@gmail.com>
Test automake-generated portions of configure help screen.
* tests/help-depend.test: New test.
* tests/help-depend2.test: Likewise.
* tests/help-dmalloc.test: Likewise.
* tests/help-init.test: Likewise.
* tests/help-lispdir.test: Likewise.
* tests/help-maintainer.test: Likewise.
* tests/help-multilib.test: Likewise.
* tests/help-regex.test: Likewise.
* tests/help-silent.test: Likewise.
* tests/help-upc.test: Likewise.
* tests/mmode.test: Remove tests on `configure --help' output,
they are superseded by tests in `help-maintainer.test'.
* tests/Makefile.am (TESTS): Update.
2010-09-14 Stefano Lattarini <stefano.lattarini@gmail.com>
* tests/README: Don't put GCS mandated tools in $required.
2010-09-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* HACKING: Hint at old commits with `git describe' output.
2010-09-12 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix regression in test `colon4.test'.
* tests/colon4.test: Fix botched editing to `configure.in'
that made the test useless. Since we are at it, improve
comments and make grepping of generated Makefile.in slightly
stricter.
Regression introduced by change "Modernize, improve and/or
extend tests `colon*.test" (Stefano Lattarini, 2010-08-08).
2010-09-08 Stefano Lattarini <stefano.lattarini@gmail.com>
Do not require "gzip" explicitly in tests.
The gzip utility is simply expected to be present on any decent
target system for Automake. So it's pointless to put it in
$required.
* tests/install2.test ($required): Do not require "gzip".
* tests/lex3.test: Likewise.
* tests/pr9.test: Likewise.
From a suggestion by Ralf Wildenhues.
Make some `confh*.test' tests more "semantic" (plus tweakings).
* tests/confh.test: Run "autoconf", "configure" and "make check",
instead of munging/grepping the generated `Makefile.in'.
* tests/confh4.test: Relax the grepping of Makefile.in w.r.t.
white spaces. Do not create useless dummy source file `foo.c'
and useless dummy header file `acconfig.h'.
(configure.in): Remove superfluous call to `AC_OUTPUT'.
* tests/confh6.test: Add trailing `:' command.
* tests/confh7.test: In comments, add reference to ...
* tests/confh8.test: ... this new test, "semantic" sister
of `confh7.test'.
* tests/Makefile.am (TESTS): Updated.
Prompted by a report from Ralf Wildenhues.
Remove useless whitespace padding in XFAIL_TESTS definition.
* tests/Makefile.am (XFAIL_TESTS): Remove whitespace padding.
2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
parallel-tests: avoid command-line length limit issue.
* automake.in (handle_tests): New argument $makefile, new
substitution %MAKEFILE%.
(generate_makefile): Adjust.
* lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
sanitized TEST_LOGS value as makefile snippet on standard
input to $(MAKE), to avoid exceeding the command line limit on
w32 (MSYS).
* NEWS: Update.
Report by Bob Friesenhahn.
Posix 2008 requires make to set errexit.
* lib/am/check.am: Update comment.
2010-08-27 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix bug in test missing6.test.
* tests/missing6.test: Fix the hack used to edit `configure.in',
to avoid producing a configure script that breaks with shells
that do not support $LINENO. Also throw in a couple of cosmetic
changes.
2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improve robustness of mdate-sh script.
* lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
$ls_command is word-split properly upon invocation.
(error): New function.
(main): Use it. Improve error checking to avoid endless loop
in case $ls_command gave bogus output. Fix eval quotation.
* tests/mdate6.test: New test, to expose eval quotation error.
* tests/Makefile.am: Update.
2010-08-18 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix potential regressions in depcomp{3,5}.test.
* tests/depcomp3.test: Do not uselessly escape the character `$'
in makefile rules, when it's used to expand a make macro.
* tests/depcomp5.test: Likewise.
2010-08-17 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Docs: clarify how to avoid automatic dependencies tracking.
* doc/automake.texi (Automatic dependency tracking): Mention that
automatic dependencies tracking is enabled by default, but that
the package developer can disable it altogether. Add a reference
to the proper section for a more in-depth explanation.
Fix typo in manual (`Makefile.in' instead of `Makefile.am').
* doc/automake.texi (Automatic dependency tracking): Fix typo.
2010-08-16 Bruno Haible <bruno@clisp.org>
Don't hide the table of contents.
* doc/automake.texi: Move the table of contents to the beginning.
2010-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
Tweak and/or extend some `acloca*.test' tests.
* tests/aclocal8.test: Ensure verbose printing of captured
output.
* tests/aclocal.test: Likewise. Also, add trailing `:'
command.
* tests/acloca19.test: Likewise.
* tests/aclocal5.test: Add trailing `:' command, and prefer
`$me' over hard-coded test name.
* tests/aclocal6.test: Likewise.
* tests/aclocal18.test: Add trailing `:' command, and make
some grepping slightly stricter.
* tests/acloca14.test: Likewise. Also, prefer `diff' over
`cmp', and add some "cosmetic" blank lines.
2010-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
Tweak and extend tests `pr[!0-9]*.test'.
* tests/primary3.test: Add trailing `:' command.
* tests/primary.test: Make grepping of Automake's stderr stricter.
Also, add trailing `:' command, and cosmetic changes in spacing.
* tests/primary2.test: Likewise.
* tests/prefix.test: Enable `errexit' shell flags, and related
changes. Add a trailing `:' command.
* tests/proginst.test: Likewise.
Modernize, improve and extend tests for PR (`pr[0-9]*.test').
* tests/pr2.test: Add trailing `:' command.
* tests/pr229.test: Likewise.
* tests/pr401.test: Likewise.
* tests/pr401b.test: Likewise.
* tests/pr401c.test: Likewise.
* tests/pr300-prog.test: Likewise, plus cosmetic changes in
spacing.
* tests/pr300-lib.test: Likewise.
* tests/pr300-ltlib.test: Likewise, and ensure verbose printing
of captured make stdout.
* tests/pr211.test: Add trailing `:' command. Also, use the
`configure.in' stub created by ./defs, rather than writing it
from scratch.
* tests/pr204.test: Likewise, plus cosmetic spacing changes.
* tests/pr287.test: Likewise, and move setting of `errexit' shell
flag earlier in the script (just after inclusion of ./defs).
* tests/pr220.test: Make grepping of Automake's stderr stricter.
Also, add trailing `:' command, and cosmetic changes in spacing.
* tests/pr224.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Do not export
`CC=gcc' to configure explicitly (it's already exported globally
in ./defs, since we have "gcc" in $required). Use the stub for
`configure.in' created by ./defs, rather than writing it from
scratch. Do not create dummy files required by "gnu" mode (e.g.
README, NEWS), since we run automake in foreign mode anyway.
* tests/pr72.test: Enable `errexit' shell flags, and related
changes. Extend existing checks a bit.
* tests/pr9.test: Likewise. Also, avoid obsolescent constructs in
the generated `configure.in', and extend existing checks over the
generated tarball a bit.
* tests/pr87.test: Enable `errexit' shell flags, and related
changes. Add a trailing `:' command. Also, do not create dummy
files required by "gnu" mode (e.g. README, NEWS), since we run
automake in foreign mode anyway.
* tests/pr243.test: Avoid obsolescent constructs in the generated
`configure.in'. Enable the `errexit' shell flag, and related
changes. Cosmetic changes to spacing, add trailing `:' command,
and add a "FIXME" comment.
* tests/pr266.test: Likewise, and add explicit command line switch
`--enable-dependecy-tracking' to the ./configure call.
* tests/pr279.test: Avoid obsolescent constructs in the generated
`configure.in'; also, use the `configure.in' stub created by
./defs, rather than writing it from scratch. Enable `errexit'
shell flag, and related changes. Add trailing `:' command.
* tests/pr279-2.test: Likewise, and make grepping of Makefile.in
stricter.
* tests/pr307.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Escape literal
dots in grep regular expressions. Also, add a trailing `:'
command, and cosmetic changes to spacing.
Tests for PR: add excerpts from original bug report, for clarity.
* tests/pr2.test: Ditto.
* tests/pr9.test: Likewise.
* tests/pr72.test: Likewise.
* tests/pr87.test: Likewise.
* tests/pr211.test: Likewise.
* tests/pr220.test: Likewise.
* tests/pr224.test: Likewise.
* tests/pr229.test: Likewise.
* tests/pr243.test: Likewise.
* tests/pr266.test: Likewise.
* tests/pr279.test: Likewise, and tell to keep it in sync
with its sister test.
* tests/pr279-2.test: Likewise.
2010-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
Tweak, extend and improve tests `cond[a-z]*.test'.
* tests/condd.test: Add trailing `:' command. Typofix in
comment.
* tests/condhook.test: Make sure target `install-data-hook' is
not called by `make install', but that data files are installed.
Use proper m4 quoting in configure.in. Add trailing `:' command.
* tests/condhook2.test: New test, sister test of condhook, with
inverted semantic.
* tests/condinc2.test: Use proper m4 quoting in configure.in.
Prefer trailing `:' command over trailing `Exit 0'.
* tests/condman2.test: Enable errexit shell flag, and related
changes. Add trailing `:' command.
* tests/condman.test: Likewise. Also, do not create useless
dummy manpages, and use proper m4 quoting in configure.in.
* tests/condman3.test: New test, similar to condman.test, but
it also runs ./configure and "make install", and check the
installed files.
* tests/Makefile.am (TESTS): Updated.
Modernize, improve and/or extend tests `colon*.test.
* tests/colon.test: Rely on the `configure.in' stub created by
`./defs', rather than writing one from scratch. Do not create
a useless dummy file. Add trailing `:' command.
* tests/colon4.test: Enable the `errexit' shell flag, and
related changes. Rely on the `configure.in' stub created by
`./defs', rather than writing one from scratch.
* tests/colon7.test: Enable `errexit' shell flag, and related
changes. Improve the generated `configure.in' file. Add
trailing `:' command.
* tests/colon2.test: Likewise. Also, add some new checks.
* tests/colon5.test: Improve the generated `configure.in' file.
Add new, much deeper checks. Add trailing `:' command.
* tests/colon6.test: Likewise.
* tests/colon3.test: Add trailing `:' command. Remove useless
comments and echos. Improve the generated `configure.in' file.
make some grepping tests stricter. Add a "FIXME" comments about
planned improvements.
Improve and extend tests `asm*.test'.
* tests/asm.test: Use configure.in stub generated by ./defs,
and avoid obsoleted autoconf constructs. Make grepping of
Automake stderr stricter. Do not create useless source file.
Improve verbose messages. Minor cosmetic changes. Tell to
keep it in sync with other sister tests asm*.test.
* tests/asm2.test: Likewise.
* tests/asm3.test: Likewise.
Modernize, improve and/or extend test scripts `conf*.test'.
* tests/confh5.test: Cosmetic changes.
* tests/conff.test: Likewise.
* tests/confdeps.test: Likewise.
* tests/conflnk.test: Likewise.
* tests/conflnk2.test: Likewise.
* tests/confsub.test: Likewise.
* tests/confvar.test: Likewise, and make grepping of Makefile.in
stricter.
* tests/confvar2.test: Likewise.
* tests/conflnk3.test: Cosmetic changes. Re-enable a temporarily
disabled test (which didn't work with autoconf <= 2.59, but now we
are requiring autoconf 2.62, so...)
* tests/conflnk4.test: Cosmetic changes, and extend existing tests
accordingly to "TODO" comments.
* tests/conff2.test: Make grepping of Automake's stderr stricter.
Add some comments explaining why we don't use the `configure.in'
stub preset be ./defs.
* tests/confh.test: Use the `configure.in' stub created by ./defs,
rather than writing one from scratch, and do not call AC_OUTPUT.
Enable `errexit' shell flag, and related changes. Prefer diff over
cmp to compare text files. Prefer perl over sed to fetch the value
of $(DIST_COMMON) from Makefile.in. Make grepping of the contents
of $(DIST_COMMON) stricter.
* tests/confh4.test: Use the `configure.in' stub created by ./defs,
rather than writing one from scratch. Make grepping of Makefile.in
stricter.
* tests/confh5.test: Make grepping of `config.h' stricter. Add a
comment.
* tests/configure.test: Avoid obsolescent constructs in generated
`configure.ac'. Do not write `configure.in' two times. Escape
literal dots in grep regular expressions.
* tests/confincl.test: Enable `errexit' shell flag, and related
changes. Prefer fgrep over grep. Other cosmetic changes.
* tests/config.test: Renamed to ...
* tests/confh6.test: ... this. Fix m4 quoting in `configure.in',
and make grepping of `config.h' and `config.h.in' stricter.
* tests/conf2.test: Renamed ...
* tests/confh7.test: ... to this. Use the `configure.in' stub
created by ./defs, rather than writing one from scratch. Try to
run the checks both with and without AC_PROG_CC and AC_OUTPUT in
`configure.in'.
* tests/Makefile.am (TESTS): Updated.
Minor improvements and fixes in tests `depcomp*.test'.
* tests/depcomp.test: Do not create useless dummy source files.
Add a trailing `:' command.
* tests/depcomp2.test: Use `unset' on the CFLAG variable to ensure
it's not in in the environment, rather than exporting it with an
empty value. Do not pass CC=gcc to configure, as that's already
done in ./defs since we have gcc in $required. Ensure verbose
printing of captured stderr, and normalize its checking. Add a
trailing `:' command.
* tests/depcomp3.test: Quote literal dots and dollar characters in
grep regexps. Always use `: >' rather than `touch' to create empty
files. Explicitly declare phony targets as such in the created
Makefile.am. Add a trailing `:' command.
* tests/depcomp4.test: Quote literal dots and dollar characters in
grep regexp. Explicitly declare phony targets as such in the
created Makefile.am. Ensure verbose printing of captured makes'
stoud/stderr. Add a trailing `:' command.
* tests/depcomp5.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Quote literal dots
and dollar characters in grep regexps. Explicitly declare phony
targets as such in the created Makefile.am. Add a trailing `:'
command.
* tests/depcomp6.test: Consistently use m4 quoting in the generated
configure.in. Cosmetic fixes to spacing. Make the "dummy" `if'
statement required by OpenBSD's sh `set -e' more robust, and add
explanatory comments to it.
* tests/depcomp7.test: Likewise, and add a trailing `:' command.
Separate failing part of test `all.test'.
* tests/all.test: Keep only (x)failing part of the test. Working
checks moved out to ...
* tests/all2.test: ... this new test.
* tests/Makefile.am (TESTS): Updated.
Modernize, improve and extend tests `subobj*.test'.
* tests/subobjname.test: Add trailing `:' command.
* tests/subobj.test: Make grepping of `Makefile.in' stricter.
Escape literal dots in grep regexps.
* tests/subobj2.test: Add trailing `:' command. Do not use the
unportable fgrep option `-e'.
* tests/subobj3.test: Add trailing `:' command.
(configure.in): Use proper m4 quoting, and avoid obsolescent
constructs.
* tests/subobj8.test: Likewise. Also, enable `errexit' shell
flag, with related changes
* tests/subobj4.test: Likewise. Also, make grepping of
`Makefile.in' stricter.
* tests/subobj5.test: Add trailing `:' command. Move setting of
`errexit' shell flag earlier in the script (just after inclusion
of ./defs).
(configure.in): Use the stub created by `./defs', rather than
writing it from scratch, and avoid obsolescent constructs.
* tests/subobj6.test: Add trailing `:' command. Move setting of
`errexit' shell flag earlier in the script (just after inclusion
of ./defs). Do not create useless dummy ac-init file `f'.
* tests/subobj7.test: Do not create useless dummy ac-init file
`f'.
(configure.in): Use the stub created by `./defs', rather than
writing it from scratch, and avoid obsolescent constructs.
* tests/subobj9.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Fail the test if
`make distcheck' fails. Ensure verbose printing of captured make
stdout. Avoid useless fork by doing simple grep instead of using
test -n "`COMMAND | grep ...`".
(configure.in): Normalize the call to AC_INIT w.r.t. other tests.
(Makefile.am): Explicitly mark target "print" as phony.
* tests/subobj10.test: Removed duplicated call to `set -e'. Add
trailing `:' command.
(configure.in): Normalize the call to AC_INIT w.r.t. other tests.
Remove a couple of obsoleted tests.
* tests/fpinstall.test: Removed.
* tests/fpinst2.test: Likewise.
* tests/Makefile.am (TESTS): Updated.
Bootstrap: updated HACKING entry.
* HACKING ("Working with git"): Explain how to override the
autoconf and autom4te programs used by the bootstrap process.
Bootstrap: fixlet.
* bootstrap: Do not remove `lib/Automake/Config.pm' anymore,
since we don't generate it. Correctly quote arguments of
`eval' builtin. Fixed a botched error message. Removed an
extra blank line.
Bootstrap: don't search perl in $PATH.
* bootstrap: Do not explicitly search perl in $PATH anymore.
($PATH_SEPARATOR): Removed, it's no more needed.
Bootstrap: let the user choose which autoconf to use.
* bootstrap ($AUTOCONF): New variable, from the environment.
($AUTOM4TE): Likewise, for clarity.
Use "$AUTOCONF" instead of calling "autoconf" directly.
Minor improvements to tests ar*.test.
* tests/ar.test: Add trailing `:' command.
* tests/ar2.test: Likewise, and make grepping of generated
Makefile.in stricter.
2010-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix maintainer-check failure.
* tests/cond5.test: Quote sleep argument, this isn't about
time stamp differences.
Sync auxiliary files from upstream.
* lib/config.guess, lib/config.sub, lib/texinfo.tex:
Sync from upstream.
2010-08-06 Stefano Lattarini <stefano.lattarini@gmail.com>
Work around a nasty bug (segfault) of Solaris make.
* lib/am/check.am (recheck, recheck-html): Trim trailing spaces
from $list, to avoid triggering a nasty bug (potential segfault)
on Solaris make.
2010-08-06 Peter Rosin <peda@lysator.liu.se>
Make cond5.test more robust on MSYS.
* tests/cond5.test: Add delay before the first kill attempt to
cater for problems with MSYS bash.
2010-11-16 Peter Rosin <peda@lysator.liu.se>
Skip MSVC oriented tests if the shell is not capable.
* tests/defs: New required entry 'xsi-shell'.
* tests/ar-lib.test, tests/compile3.test, tests/compile6.test:
Require a XSI capable shell.
Reported by Ralf Wildenhues.
2010-11-15 Peter Rosin <peda@lysator.liu.se>
compile: clear the `eat' variable earlier.
* lib/compile: Clear the `eat' variable earlier.
($scriptversion): Update.
* tests/compile3.test: Prevent regressions.
2010-10-07 Peter Rosin <peda@lysator.liu.se>
depcomp: add new one-pass depmode for MSVC 7 and later.
* lib/depcomp: Add new depmodes 'msvc7' and 'msvc7msys' which
make use of the -showIncludes option added in MSVC 7.
* m4/depend.m4 (_AM_DEPENDENCIES): Handle the new depmodes
similarly to 'msvisualcpp' and 'msvcmsys' as MSVC does not
support the -o option.
2010-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: fix ar-lib.test for echo that interprets backslashes.
* tests/ar-lib.test: Use printf instead of echo. Avoid test -a.
More robust quoting.
2010-09-21 Peter Rosin <peda@lysator.liu.se>
compile: implement library search to support MSVC static linking
* lib/compile (func_cl_wrapper): Implement library search and
-static option so that the user can select whether to prefer
dll import libraries or static libraries. This enables MSVC to
link against dlls generated by libtool without requiring libtool
or workarounds such as -lfoo.dll etc. Makes the tests/static.at
test case in libtool pass.
* tests/compile3.test: Don't trip up if there happens to exist
a "foo" library in the library search path.
* tests/compile6.test: New test, verifying the library search.
* tests/Makefile.am (TESTS): Update.
2010-09-02 Peter Rosin <peda@lysator.liu.se>
Make ar-lib support backslashed files in archives.
* lib/ar-lib: If an archive member contains a backslash, make sure
it is escaped when the archive member is extracted.
* tests/ar-lib.test: Test the above.
2010-08-31 Peter Rosin <peda@lysator.liu.se>
Do file name conversion for object files in the compile wrapper.
* lib/compile (func_cl_wrapper): Do file name conversion for object
files (i.e. extensions .obj, .OBJ, .o and .O) if needed.
* tests/compile4.test: Test the above.
2010-08-16 Peter Rosin <peda@lysator.liu.se>
Optimize compile script on MSYS.
* lib/compile (func_file_conv): Add new argument 'lazy' which
takes an optional list of conversion types where the requested
conversion isn't needed.
(func_cl_wrapper): Take advantage of the above for cases where
MSYS is doing the conversion for us.
Suggested by Ralf Wildenhues.
2010-08-16 Peter Rosin <peda@lysator.liu.se>
Support more C++ file extensions for MSVC in the compile script.
* lib/compile (func_cl_wrapper): MSVC only recognizes the .cpp
file extension as C++, unless it's given a hint. So hint about
.cc, .CC, .cxx, .CXX, c++ and C++. Also do path conversion on
.c, .cpp, .CPP, .lib, .LIB and .Lib files.
* tests/compile3.test: Test the C++ hinting.
2010-08-12 Peter Rosin <peda@lysator.liu.se>
Enable the use of "link -lib" as the wrapped archiver.
* lib/ar-lib: Enable the use of "link -lib" as the wrapped
archiver, as well as allowing some other options to be passed
through to the wrapped archiver.
* tests/ar-lib.test: Test the above.
2010-08-06 Peter Rosin <peda@lysator.liu.se>
Add new auxiliary 'ar-lib' script, wrapping Microsoft lib.
* lib/ar-lib: New auxiliary script.
* lib/Makefile.am: Add above.
* tests/ar-lib.test: New test.
* tests/Makefile.am: Add above.
* automake.in (@common_files): Distribute the 'ar-lib' script.
* doc/automake.texi (Auxiliary Programs): Mention the new
'ar-lib' script.
(Optional): Mention 'ar-lib' in AC_CONFIG_AUX_DIR.
* NEWS: Update.
2010-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix shell pattern negation in compile script.
* lib/compile (func_file_conv): Use `!' not `^' for pattern
negation.
2010-08-01 Peter Rosin <peda@lysator.liu.se>
Wrap some MSVC options in the compile script.
* lib/compile: MSVC supports naming the output file, the option
is just not called -o, so transform -o into the appropriate form
for MSVC. Also wrap some other options while at it (-L, -l, -Wl,
-Xlinker and -I) and convert file names to windows form where
needed for those options to make MSVC more usable in an
autotooled environment.
* doc/automake.texi (Auxiliary Programs): Document the above
extension of the compile script.
* NEWS: Updated.
* tests/defs.in: New required entry 'cl'.
* tests/compile3.test: New test.
* tests/compile4.test: New test.
* tests/compile5.test: New test.
* tests/Makefile.am: Update.
2010-07-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add example git work flow; discuss merge --log in HACKING.
* HACKING: Update.
Suggestion by Stefano Lattarini.
Add more hints for debugging make rules.
* doc/automake.texi (Debugging Make Rules): Show command to find
out expanded values of variables; point to makefile debugger.
* THANKS: Update.
Prompted by suggestion from Ludovic Courtès and Andy Wingo.
2010-07-27 Patrick Welche <prlw1@cam.ac.uk> (tiny change)
Fix typo in the manual.
* doc/automake.texi (Scripts): Fix typo.
2010-07-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Document current policy for development with git.
* HACKING (Working with git): Overhaul.
Prompted by suggestion from Stefano Lattarini.
Fix AM_COND_IF for gone-invalid condition shell expression.
* m4/cond-if.m4 (AM_COND_IF): test contents of $COND_TRUE
variable, rather than re-evaluating the shell expression for
the condition.
* tests/cond40.test: Extend test.
* NEWS: Update.
Avoid syntax error if IF-TRUE part of AM_COND_IF expands empty.
* m4/cond-if.m4 (AM_COND_IF): Ensure IF-TRUE part is never empty
to avoid shell syntax error if the m4 expansion is empty.
* tests/cond40.test: Enhance test.
Coverage: bogus option to AM_INIT_AUTOMAKE.
* tests/init2.test: New test.
* tests/Makefile.am: Update.
2010-07-21 Stefano Lattarini <stefano.lattarini@gmail.com>
Modernize and improve test scripts `subdir*.test'.
* tests/subdir.test: Enable `errexit' shell flag, and related
changes. Use the `configure.in' stub created by `./defs',
rather than writing one from scratch.
* tests/subdir2.test: Likewise.
* tests/subdir4.test: Likewise.
* tests/subdir3.test: Enable `errexit' shell flag, and related
changes. Do not create useless dummy source files.
* tests/subdir5.test: Make grepping of Makefile.in (in topdir
and in subdirs) stricter. Some minor changes to keep it more
in sync with the related test `subdir8.test'.
* tests/subdir8.test: Likewise (but with the related test being
`subdir5.test' here).
* tests/subdir6.test: Cosmetic change in spacing.
* tests/subdir9.test: Define and use new variable `$distdir'. Add
trailing `:' command.
* tests/subdir10.test: Cosmetic consistency-related change.
* tests/subdirbuiltsources.test: Cosmetic changes in spacings.
(configure.in): Use stub created by `./defs', rather than writing
it from scratch. Do not use obsoleted and/or deprecated forms of
autoconf/automake macros.
Modernize and improve test scripts `dist*.test'.
* tests/distcleancheck.test: Do not add useless `-e' option to
a $MAKE call. Extend test by grepping stderr of make.
* tests/distcom2.test: Do not run the same test script on the
Makefile.in twice, but save its output in an intermediate file
instead. Make grepping of DIST_COMMON definition stricter.
Display the content of more files, to ease debugging. Add a
trailing `:' command. Improved heading comments w.r.t. sister
test(s).
* tests/distcom6.test: Likewise, and avoid to uselessly run
autoconf.
* tests/distcom3.test: Ensure verbose printing of captured stdout
and stderr. Make grepping of captured stderr stricter. Also,
add trailing `:' command.
* tests/distcom4.test: Declare the target `test' in the generated
Makefile.am as `.PHONY'. Display content of more files, to ease
debugging. Add trailing `:' command.
* tests/distcom5.test: Likewise. Also, factor out common sed
script in subroutine `extract_distcommon'.
* tests/distcom7.test: Prefer cat + here-doc over echo to write
test Makefile.am files. Add a trailing `:' command.
* tests/distname.test: Prefer `gzip -d' over `gunzip'. Move the
call to `set -e' earlier. Be stricter and more verbose in the
checking of the generated tarball.
(configure.in): Use the stub provided by ./defs, instead of
writing it from scratch. Avoid obsoleted constructs. Remove
useless call to `AM_PROG_CC_C_O'.
* tests/distdir.test: Various minor improvements/normalizations.
* tests/distlinks.test: Likewise.
2010-07-18 Stefano Lattarini <stefano.lattarini@gmail.com>
Improve and extend test cond5.test.
* tests/cond5.test: Do not blindly sleep 60 seconds before polling
the background automake process, but poll it every 10 seconds for
at most 30 times (this makes the test both faster on good machines,
and more resilient to spurious timeout-due failures when in low
priority or on heavily-loaded systems).
Check also that automake writes the expected error messages on the
standard error.
Enable `errexit' flag, and related changes.
Rely on the `configure.in' stub created by `./defs', rather than
writing one from scratch.
2010-06-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Update program --help output to match current GCS.
* configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
is not defined, for compatibility to Autoconf < 2.64.
* Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
PACKAGE_URL.
(sc_diff_automake_in_automake): Update number of diff lines for
additional substitutions.
* aclocal.in (usage): Use PACKAGE_BUGREPORT. Point to Automake
home page and GNU general help page.
* automake.in (usage): Likewise.
* doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
address.
(Introduction, Creating amhello, amhello Explained, Options):
Use it throughout.
* lib/Automake/Makefile.am (do_subst): Substitute
PACKAGE_BUGREPORT.
* lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
* lib/Automake/ChannelDefs.pm: Use it for footer of fatal
messages.
Clean up @var handling in the manual.
* doc/automake.texi: Throughout the manual, lower-case @var
names, replace a few one-character names.
2010-06-26 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix typo-related bug in test script silent5.test.
* tests/silent5.test: Use $EGREP, not $GREP (which is not even
defined).
Tests: remove useless repetitions of `foreign' automake option.
* tests/multlib.test (configure.in): Remove useless use of
`foreign' option in AM_INIT_AUTOMAKE (the `--foreign' option is
already in $AUTOMAKE by default, so no point in repeating it).
* tests/subobj10.test: Likewise.
* tests/subobj9.test: Likewise.
* tests/lex3.test (Makefile.am): Similarly, remove useless use
of `foreign' option in AUTOMAKE_OPTIONS.
* tests/lex5.test: Likewise.
* tests/pr279.test: Likewise.
* tests/pr279-2.test: Likewise.
* tests/specflg3.test: Likewise.
* tests/target-cflags.test: Likewise.
Drop useless requirement "gzip" in lex5.test.
* tests/lex5.test ($required): Do not list "gzip", as it's
never used.
2010-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix bugs in test script silent5.test.
* tests/silent5.test: Fixed a nasty bug (due to the use of grep
instead of egrep) that could have led to false negatives.
2010-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
Add a test checking that distributed broken symlinks cause
`make dist' to fail.
* tests/distlinksbrk.test: New test.
* tests/Makefile.am (TESTS): Updated.
2010-06-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix minor testsuite issues, update docs, for Yacc/Lex changes.
* doc/automake.texi (Yacc and Lex): Mention AM_YFLAGS, YFLAGS
and AM_LFLAGS, LFLAGS in the order in which they now appear in
the rules.
* NEWS: Update.
* tests/lflags.test, tests/lflags2.test, tests/yflags.test,
tests/yflags2.test: Prefer `make -e' over `make VAR=VAL', to
please maintainer-check. Ensure generated C files contain a
declaration, to please compilers.
2010-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
$(FLAGS) precedence.
* automake.in: Fix registration of languages "Lex", "Lex (C++)",
"Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
$(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
* tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
* NEWS: Updated.
New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
$(AM_FLAGS) and $(FLAGS) precedence.
* tests/lflags.test: New test, check that user $(LFLAGS) takes
precedence over automake (AM_LFLAGS) and (foo_LFLAGS). Still
xfailing.
* tests/lflags2.test: Likewise.
* tests/yflags.test: New test, check that user $(YFLAGS) takes
precedence over automake (AM_YFLAGS) and (foo_YFLAGS). Still
xfailing.
* tests/yflags2.test: Likewise.
* tests/Makefile.am (TESTS, XFAIL_TESTS): Extended accordingly.
2010-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
Modernize, improve and extend tests `suffix*.test'.
* tests/suffix3.test: Enable `errexit' shell flag, and related
changes.
* tests/suffix4.test: Likewise.
* tests/suffix6.test: Likewise, and do not create a useless dummy
source file.
* tests/suffix7.test: Likewise.
* tests/suffix5.test: Enable `errexit' shell flag, and related
changes. Make grepping of Makefile.in slightly stricter.
* tests/suffix.test: Enable `errexit' shell flag, and related
changes. Also, do not redirect grep output to /dev/null, as this
might unmotivatedly hide useful information.
* tests/suffix2.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Use a more
idiomatic way to count text occurrences in Makefile.in with
grep. Do not create useless dummy source files.
* tests/suffix10.test: Ensure verbose printing of captured make
stdout. Minor cosmetic changes.
* tests/suffix8.test: Likewise. Also, drop useless call to the
env(1) utility, and make grepping of make output stricter by using
$FGREP rather than plain grep.
* tests/suffix11.test: Likewise.
* tests/suffix12.test: Likewise.
* tests/suffix9.test: Prefer cat + here-doc over echo to append to
the `configure.in' stub. Cosmetic changes.
* tests/suffix13.test: Cosmetic spacing change.
2010-06-13 Stefano Lattarini <stefano.lattarini@gmail.com>
Add useful comment in test script ext.test.
* tests/ext.test: Add a comment explaining why an apparently
useless `if' statement is indeed required.
Add useful comment in test script obsolete.test.
* tests/obsolete.test: Add a comment explaining why we need
an indirection in adding $AUTOUPDATE to $required.
Normalize whitespaces in 'tests/Makefile.am'.
* tests/Makefile.am (TESTS): Use only spaces, not tabs, in the
definition of this variable.
2010-06-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Remove a couple of unneeded conditionals from tests.
* tests/pr243.test, tests/pr266.test, tests/strip.test: No need
for the FOOTEST conditional.
2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
Modernize, improve and/or fix various test scripts.
* tests/symlink3.test: Deleted, separated into two new, more
complete tests ...
* tests/forcemiss.test: ... this one ...
* tests/forcemiss2.test: ... and this one.
* tests/symlink2.test: Enable `errexit' shell flag, make test
stricter, and skip it if symlink creation is not supported.
* tests/postproc.test: Enable `errexit' shell flag, related
changes, and a couple of unrelated cosmetic changes.
* tests/recurs.test: Use the `configure.in' stub created by
`./defs', rather than writing one from scratch. Make grepping
of Automake stderr slightly stricter.
* tests/substtarg.test: Likewise.
* tests/strip.test: Likewise, and move the call to `set -e'
earlier (just after the inclusion of `./defs'). Also, make sure
that the script installed by `make install-script' is equal to
the original one.
* tests/substref.test: Use the `configure.in' stub created by
`./defs', rather than writing one from scratch. Move the call
to `set -e' earlier (just after the inclusion of `./defs').
Avoid to explicitly export CC for configure (that's already done
in ./defs). Avoid potential problems with unpredictable make
output. Finally, make grepping of Makefile.in stricter.
* tests/substre2.test: Ensure verbose printing of the captured
make's output, and make its grepping slightly stricter.
* tests/cygwin32.test: Enable `errexit' shell flag, and related
changes. Also, do not create useless dummy source/data files.
* tests/scripts.test: Likewise.
* tests/recurs2.test: Likewise. Also, use the `configure.in'
stub created by `./defs'.
* tests/Makefile.am (TESTS): Updated.
Modernize, improve and/or fix tests `pluseq*.test.
* tests/pluseq5.test: Append to configure.in using cat with an
here-doc, not using echo.
* tests/pluseq10.test: Make sure that the captured output of
`make' command is always displayed. Where possible, use $FGREP
instead of grep (this change makes some checks slightly stricter).
* tests/pluseq8.test: Enable `errexit' shell flag, with related
changes.
* tests/pluseq.test: Likewise. Also, do not create useless dummy
data files, and use better m4 quoting in generated configure.in.
* tests/pluseq2.test: Likewise. Also, append to configure.in
using cat with an here-doc, not using echo.
* tests/pluseq3.test: Likewise.
* tests/pluseq4.test: Likewise.
* tests/pluseq6.test: Likewise.
* tests/pluseq7.test: Do not create useless dummy source file.
* tests/pluseq9.test: Slightly extended w.r.t. the grepping of
Automake stderr. Some unrelated cosmetic changes.
Testsuite: ensure verbose printing of captured stderr.
* tests/acloca18.test: Print captured stderr before either failing
or grepping it. Be sure to send captured stderr to stderr, not to
stdout.
* tests/ansi3b.test: Likewise.
* tests/cond39.test: Likewise.
* tests/configure.test: Likewise.
* tests/missing3.test: Likewise.
* tests/missing6.test: Likewise.
* tests/output-order.test: Likewise.
* tests/pr300-ltlib.test: Likewise.
* tests/python6.test: Likewise.
* tests/python7.test: Likewise.
* tests/python8.test: Likewise.
* tests/python9.test: Likewise.
* tests/subobj.test: Likewise.
* tests/vars3.test: Likewise.
* tests/missing4.test: Likewise, and fix a call to grep not to use
the `-c' flag.
* tests/ansi3.test: Likewise, and rely on the `configure.in' stub
created by `./defs', rather than writing one from scratch.
Enable `errexit' shell flag in various tests.
* tests/backsl.test: Enable the `errexit' shell flag, and
related changes.
* tests/backsl2.test: Likewise.
* tests/block.test: Likewise.
* tests/canon2.test: Likewise.
* tests/canon4.test: Likewise.
* tests/comment2.test: Likewise.
* tests/condlib.test: Likewise.
* tests/cond15.test: Likewise, and prefer $FGREP over grep.
* tests/canon3.test: Likewise. Also, avoid to create an useless
dummy source file.
* tests/acoutpt2.test: Enable the `errexit' shell flag, and some
related changes. Do some cosmetic improvements in the generated
`configure.in' file.
* tests/cond4.test: Likewise.
* tests/cond14.test: Likewise.
* tests/condinc.test: Likewise.
* tests/cond7.test: Likewise. Also, remove useless setting of
AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am.
* tests/ansi.test: Enable the `errexit' shell flag, and related
changes. Extended, esp. by running autoconf, ./configure and
make, and by looking into the distdir.
2010-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Extend tests/README w.r.t. trailing `:' in test scripts.
* tests/README (section "Writing test cases" subsection "Do"):
Explain why apparently redundant trailing `:' and `Exit 0' in
test scripts can indeed be useful.
2010-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
Improve determination of PATH separator in bootstrap script.
* bootstrap: Determine what the PATH separator is the same way
autoconf does.
Minor improvements in bootstrap script.
* bootstrap: Consistently use two-spaces indentation. Cosmetic
improvement to comments.
($me): New variable, containing program basename.
Prepend it to all error messages.
Testsuite now works with BSD make in parallel mode.
* tests/defs.in: Unset variables __MKLVL__ and MAKE_JOBS_FIFO,
which are exported by BSD make when run in parallel mode, and
which can confuse make processes spawned by our testsuite.
This change fixes a lot of spurious failure when the testsuite
is run with BSD make in parallel mode.
2010-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
Modernize, improve and/or fix various test scripts.
* tests/sanity.test: Rely on the `configure.in' stub created by
`./defs', rather than writing one from scratch.
* tests/depend2.test: Likewise. Also, call `set -e' just after
the inclusion of `./defs', instead that later in the script.
* tests/canon5.test: Avoid a useless `|| Exit 1' after a call to
$AUTOMAKE, and improve the positioning of an $ACLOCAL call.
* tests/exeext4.test: Use $FGREP instead of grep, where possible.
Make auxiliary rules in the generated Makefile more silent.
These changes make some checks slightly stricter.
* tests/ext2.test: Call `Exit 1' if inclusion of `./defs' fails.
* tests/gettext2.test: Place final `:' at the end of the script,
rather than in the middle.
* tests/exeext.test: Call `set -e' just after the inclusion of
`./defs', instead that later in the script.
* tests/extra5.test: Likewise.
* tests/confdeps.test: Likewise. Also, prefer `mv -f' over
plain `mv', just to be sure.
* tests/depcomp.test: Enable `errexit' shell flag, with related
changes. Also, modernize the generated configure.in.
* tests/cond9.test: Likewise. Also, rely on the `configure.in'
stub created by `./defs', rather than writing one from scratch.
* tests/cond10.test: Likewise.
* tests/depcomp2.test: Likewise.
* tests/depend3.test: Likewise.
* tests/distcom7.test: Likewise.
* tests/fortdep.test: Likewise. Also, remove definition of
AUTOMAKE_OPTIONS to `foreign' in the generated Makefile.am,
since that flag is already provided by $AUTOMAKE.
* tests/mdate.test: Made stricter, by checking that Automake
actually failed, and by making a stricter grep on the error
message. Also, set shell `errexit flag'.
* tests/python2.test: Improved verbose messages.
Make test `ammissing.test' stricter.
* tests/ammissing.test: Fail if $ACLOCAL succeeds unexpectedly.
Enable `errexit' shell flag.
2010-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
Enable `errexit' shell flag in some test scripts.
* tests/subcond.test: Enabled `errexit' shell flag, and related
minor changes.
* tests/subst.test: Likewise.
* tests/vars.test: Likewise.
* tests/version4.test: Likewise.
* tests/vpath.test: Likewise.
* tests/vtexi2.test: Likewise.
* tests/werror.test: Likewise.
* tests/whoami.test: Likewise.
* tests/tags.test: Likewise, and avoid to crate an useless dummy
header file.
* tests/acsilent.test: Likewise, and don't use an easily-avoided
command substitution.
* tests/unused.test: Likewise, and don't use an easily-avoided
command substitution.
* tests/version.test: Likewise, and avoid deprecated constructs
in the generated `configure.in'.
* tests/version2.test: Likewise, and avoid deprecated constructs
in the generated `configure.in'.
2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Prefer AUTOMAKE_fails over `$AUTOMAKE | grep' in tests.
* tests/ldadd.test: Enable errexit. Use AUTOMAKE_fails so
the verbose log contains all output.
* tests/mdate.test: Likewise.
Prompted by Stefano Lattarini's change to discover.test.
2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
Improve tests link*.test (enable `errexit' shell flag).
* tests/link_c_cxx.test: Enable `errexit shell flag, and related
changes. Also, do not create useless source files.
* tests/link_dist.test: Likewise.
* tests/link_f90_only.test: Likewise.
* tests/link_f_only.test: Likewise.
* tests/link_fc.test: Likewise.
* tests/link_fccxx.test: Likewise.
* tests/link_fcxx.test: Likewise.
2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improve ext.test semantics, avoid OpenBSD sh errexit issue.
* tests/ext.test: Inside shell compound command, use
`if $cmd; then Exit 1; fi' rather than `$cmd && Exit 1', to
fix failure with OpenBSD sh introduced with last patch.
Actually ensure that a rule for .EXT.o is created for each
known extension EXT.
2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
Enable `errexit' shell flag in some test scripts.
* tests/dash.test: Enable `errexit' shell flag, and related
changes.
* tests/defun.test: Likewise.
* tests/defun2.test: Likewise.
* tests/dejagnu.test: Likewise.
* tests/double.test: Likewise.
* tests/distcom2.test: Likewise.
* tests/empty2.test: Likewise.
* tests/empty3.test: Likewise.
* tests/empty4.test: Likewise.
* tests/exdir.test: Likewise.
* tests/ext.test: Likewise.
* tests/extra.test: Likewise.
* tests/extra2.test: Likewise.
* tests/extra3.test: Likewise.
* tests/extra4.test: Likewise.
* tests/flibs.test: Likewise.
* tests/fnoc.test: Likewise.
* tests/fo.test: Likewise.
* tests/instexec.test: Likewise.
* tests/ltdeps.test: Likewise.
* tests/nodep.test: Likewise.
* tests/nodepcomp.test: Likewise.
* tests/f90only.test: Likewise, and remove botched/obsoleted
comments and unnecessary commands.
* tests/fonly.test: Likewise, and remove botched/obsoleted
comments and unnecessary commands.
* tests/discover.test: Likewise, and made stricter.
Enable `errexit' shell flag in all tests cxx*.test.
* tests/cxx.test: Enabled `errexit' shell flag, and related
minor changes.
* tests/cxxansi.test: Likewise.
* tests/cxxcpp.test: Likewise.
* tests/cxxlibobj.test: Likewise.
* tests/cxxlink.test: Likewise.
* tests/cxxo.test: Likewise.
Enable `errexit' shell flag in various tests.
* tests/acoutnoq.test: Enabled `errexit' shell flag, and related
minor changes.
* tests/acoutpt.test: Likewise.
* tests/acoutqnl.test: Likewise.
* tests/amassign.test: Likewise.
* tests/ansi2.test: Likewise.
* tests/ansi4.test: Likewise.
* tests/badprog.test: Likewise.
* tests/checkall.test: Likewise.
* tests/clean.test: Likewise.
* tests/colneq2.test: Likewise.
* tests/colon.test: Likewise.
* tests/colon5.test: Likewise.
* tests/colon6.test: Likewise.
* tests/comment.test: Likewise.
* tests/compile_f90_c_cxx.test: Likewise.
* tests/compile_f_c_cxx.test: Likewise.
* tests/cond3.test: Likewise.
* tests/cond6.test: Likewise.
* tests/cond13.test: Likewise.
* tests/conf2.test: Likewise.
* tests/confvar.test: Likewise.
* tests/confvar2.test: Likewise.
* tests/cond8.test: Likewise, plus a cosmetic change.
* tests/confh4.test: Likewise. Also, add in the heading comments
an excerpt from the original bug report which motivated the
creation of this test, to make its purpose clearer.
2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Rewrite manual to be gender-neutral.
* doc/automake.texi (GNU Build System)
(Standard Directory Variables, General Operation, CVS)
(Hard-Coded Install Paths, Dependencies As Side Effects):
Rewrite text to not contain gender-specific pronouns when
speaking about developers or users, either by avoiding pronouns
or by addressing them as `you' instead.
* THANKS: Update.
Report by Christina Gratorp.
* AUTHORS: Update.
2010-06-06 Stefano Lattarini <stefano.lattarini@gmail.com>
Make tests on user extensibility of silent-rules mode stricter.
* tests/silent6.test: Made stricter w.r.t. the grepping of the
output produced by `make'.
* tests/silent7.test: Likewise.
Tests on silent-mode for C/Libtool made stricter.
* tests/silent.test: Made stricter w.r.t. the grepping of the
output produced by `make'.
* tests/silent2.test: Likewise.
* tests/silent4.test: Likewise.
* tests/silent9.test: Likewise.
* tests/silent3.test: Likewise, and add a final `make distclean'
command to keep it better in sync with tests/silent{4,9}.test.
Improved test silent5.test.
* tests/silent5.test: Remove by hand all generated C files after
non-verbose builds, to ensure the following builds are clean.
Try to clean and rebuild with the same verbosity and without
removing generated sources in between, to check that this does
not trigger a different set of rules. Make grepping of make's
output stricter. Improved/added some comments.
New tests for Automake silent-mode with Fortran.
* tests/silentf77.test: New test.
* tests/silentf90.test: Likewise.
* tests/Makefile.am (TESTS): Updated accordingly.
New test `silentcxx.test' (Automake silent-mode with C++).
* tests/silentcxx.test: New test.
* tests/Makefile.am (TESTS): Updated accordingly.
New test `silentyacc.test' (Automake silent-mode with Yacc).
* tests/silentyacc.test: New test.
* tests/Makefile.am (TESTS): Updated accordingly.
New test `silentlex.test' (Automake silent-mode with Lex).
* tests/silentlex.test: New test.
* tests/Makefile.am (TESTS): Updated accordingly.
Relax tests on silent-rules to cater to overly verbose makes.
* tests/silent.test: When testing silent builds, don't fail if
make's output simply contains the `mv' substring, but only if
it contains the `mv ' substring (note the trailing space).
* tests/silent2.test: Likewise.
* tests/silent3.test: Likewise.
* tests/silent4.test: Likewise.
* tests/silent5.test: Likewise.
* tests/silent9.test: Likewise.
2010-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix silent-rules output for disabled dependency tracking.
* lib/am/depend2.am [!%FASTDEP%]: Rework silent-rules variable
expansion code to also work in the case where %AMDEP% expands
to FALSE at config.status time, using new substitution string
%VERBOSE-NODEP%.
* automake.in (verbose_nodep_flag): New function, appending
`@am__nodep@' to the verbose-variable name.
(handle_languages): If dependencies are not disabled, use it to
set %VERBOSE-NODEP%.
* m4/depend.m4: Substitute am__nodep as '_no', so the second
verbose-variable will always expand to an empty string, if
dependencies are enabled.
* tests/silent5.test: Also test --disable-dependency-tracking;
also test per-target flags for non-C language files.
* tests/silent9.test: New test, like silent4.test but disable
dependency tracking.
* tests/Makefile.am: Adjust.
* NEWS, THANKS: Update.
Report by Dmitry V. Levin <ldv@altlinux.org>.
2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
Extend test on `nostdinc' automake option.
* tests/nostdinc.test: Enable `errexit' shell flag. Related and
unrelated minor changes. Make the grepping of the generated
Makefile.in slightly stricter. Generate and run configure, so that
the generated Makefile can be grepped too.
2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Make gnupload portable to EBCDIC hosts.
* lib/gnupload: Use literal newline as argument for 'tr' rather
than \015, for EBCDIC hosts. Also, avoid unportable nested
double-quotes and backquotes.
* THANKS: Update.
Report from Eric Blake and Steve Goetze via gnulib.
2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix Autoconf version required by Automake's configure.
Automake configure script used to tell that automake required
autoconf 2.60 or later, but then it checked for autoconf >= 2.62,
and if that was not found, it gave an error saying that Automake
required configure 2.61a-341 or later. This change should
eliminate such inconsistencies.
* configure.ac ($required_autoconf_version): New variable.
Use it throughout.
2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix unportable sed script in maintainer-check test.
* Makefile.am (sc_tests_Exit_not_exit): Rewrite sed script to
not contain semicolon after 'b' or brace commands, for NetBSD.
Wildcards are not portable to NetBSD make.
* doc/automake.texi (Wildcards): Document portability issue.
* tests/extra10.test, tests/extra11.test, tests/extra12.test:
Require GNU make.
2010-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
Make test for configure.in vs. configure.ac stricter.
* tests/configure.test: Use a configure.in file that provokes
an automake error, to ensure configure.ac is preferred.
Avoid possible false negatives in dejagnu7.test.
* tests/dejagnu7.test: Enable shell `errexit' flag. Also, avoid
unportable use of fgrep option `-e'.
Fix conflnk3.test to work with Solaris/Heirloom Sh.
* tests/conflnk3.test: Use `test -r FILE' and `test ! -r FILE'
instead of respectively `test -e FILE' and `test ! -e FILE',
since Solaris Sh doesn't grok the latter. Do not SKIP the test
if the shell doesn't support `test -e'.
2010-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix typo in manual.
* doc/automake.texi (Simple Tests using parallel-tests): Add
missing closing parenthesis.
Fix leftover call to removed function macros_dump.
* automake.in (read_main_am_file): Call variables_dump, not
macros_dump. Print actual error before list of variables.
2010-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
Minor improvements in comments of test `silent3.test'.
* tests/silent3.test: Tell to keep it in sync with `silent9.test'
too.
2010-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
testsuite: ensure verbose printing of captured output.
* tests/acloca14.test, tests/acloca18.test, tests/aclocal.test,
tests/fort2.test, tests/help.test, tests/missing3.test,
tests/missing6.test: Print captured stdout or stderr before
grepping it.
2010-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
Make test badopt.test stricter (by enabling `set -e').
* tests/badopt.test: Add call to `set -e'. Due to this change,
an unexpected failure in the call to `$ACLOCAL' (whose outcome
was previously unchecked) would cause the whole test to fail.
Also, bumped the copyright years.
Make test for configure.in vs. configure.ac stricter.
* tests/configure.test: Use a configure.in file that provokes
an automake error, to ensure configure.ac is preferred.
Use `set -e' in confsub.test (avoids possible false negatives).
* tests/confsub.test: Enable shell `errexit' flag, and related
changes (this helps avoiding some possible minor false negatives).
Also, bumped copyright years.
2010-04-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix -Werror handling for presence of configure.in and configure.ac.
* lib/Automake/Variable.pm (Automake::Variable): Do not initialize
$configure_ac at the global level, before command-line arguments
have been parsed.
(require_variables): Initialize it here.
* tests/configure.test: New test.
* tests/Makefile.am: Update.
Report by Stefano Lattarini.
2010-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
Avoid possible false negatives in confh5.test.
* tests/confh5.test: Enable shell `errexit' flag, and bumped
copyright years. Due to this change, any unexpected failure
in calls to $ACLOCAL, $AUTOMAKE, $AUTOCONF or $AUTOHEADER, or
a failure in grepping expected text in output files should now
cause the whole test to fail.
2010-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
Fixed typo in POD documentation of Automake::Channels.
* lib/Automake/Channels.pm: Fixed typo in POD documentation:
@<...> was used instead of C<...>.
2010-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
Refactor tests on Automake TESTS color output.
* tests/color.test: Tests using the expect program moved out to...
* tests/color2.test: ... this new file.
* tests/Makefile.am (TESTS): Extended accordingly.
2010-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
Fix typos in comments in test confh5.test
* tests/confh5.test: Fix a couple of typos in comments.
Avoid possible false negatives in canon-name.test.
* tests/canon-name.test: Enable shell `errexit' flag. Improve
test description.
2010-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix per-Makefile.am setting of -Werror.
Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
Makefile.am would carry over to other Makefile.am files
treated afterwards by the same thread, causing inconsistent
and unstable exit status values.
* lib/Automake/Channels.pm (dup_channel_setup)
(drop_channel_setup): Save and restore the setting of
$warnings_are_errors.
* tests/werror3.test: New test.
* tests/Makefile.am: Adjust.
* NEWS: Update.
2010-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
Bugfix in confh5.test w.r.t. Solaris/Heirloom Sh.
* tests/confh5.test: In the generated Makefile.am: do not use
`test ! -e FILE' to check for the non-existence of a file, since
that is not supported by Solaris/Heirloom Sh.
Make test `aclocal3.test' stricter.
* tests/aclocal3.test: Add call to `set -e'. Fail if $ACLOCAL
succeds unexpectedly.
Add tests checking that symlinks are resolved by `make dist'.
* tests/distlinks.test: New test.
* tests/Makefile.am (TESTS): Updated accordingly.
Suggested by observations from Ralf Wildenhues.
2010-04-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Use -9 for maximum xz compression with dist-xz.
* lib/am/distdir.am (dist-xz, dist, dist-all): Pass -9 to xz.
* NEWS, THANKS: Update.
Report by Pavel Sanda.
2010-03-30 Stefano Lattarini <stefano.lattarini@gmail.com>
Avoid an unportable use of `$status' shell variable.
* Makefile.am (path-check): Don't use the `$status' shell variable
in the target's rules, as it's special in Zsh (equivalent to `$?',
and readonly).
Avoid another use of `chmod -R'.
* Makefile.am (path-check): To be safe, do not use `chmod -R' on
$(distdir) before removing it (as Solaris `chmod -R' touches
symlink targets). Instead, use the cleanup strategy used in
distdir.am.
2010-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Remove uses of @acronym and @sc.
* doc/automake.texi (Public Macros, Limitations on File Names):
Remove all usage of @acronym and @sc in the manual.
Suggested by Karl Berry.
2010-03-13 Karl Berry <karl@freefriends.org>
GNU hello uses fdl.texi, not gpl.texi.
* doc/automake.texi (Texinfo): Adjust example to upstream
change.
2010-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Formatting cleanups in macro comments.
* automake.in, lib/Automake/Channels.pm,
lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
lib/Automake/Variable.pm, lib/Automake/XFile.pm,
m4/options.m4, m4/substnot.m4: Fix macro comment format.
2010-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid generation of `tests/defs-p' file.
* tests/defs.in: In the generated `configure.in' snippet: call
`AM_INIT_AUTOMAKE' with the `parallel-tests' option if the shell
variable `parallel_tests' is set to `yes'.
* tests/Makefile.am (defs-p): Target removed.
(check_SCRIPTS): Removed `defs-p'.
(clean-local-check): Do not unlink `defs-p' anymore.
($(parallel_tests)): Transformation rules for the test scripts
adjusted.
* tests/gen-parallel-tests: Selection rules for the test
scripts adjusted.
* tests/parallel-tests.test: Set `$parallel_tests' to `yes'
then include `./defs' (rather than simply including `./defs-p').
* tests/parallel-tests2.test: Likewise.
* tests/parallel-tests3.test: Likewise.
* tests/parallel-tests4.test: Likewise.
* tests/parallel-tests5.test: Likewise.
* tests/parallel-tests6.test: Likewise.
* tests/parallel-tests7.test: Likewise.
* tests/parallel-tests8.test: Likewise.
* tests/parallel-tests9.test: Likewise.
* tests/parallel-tests10.test: Likewise.
* tests/README (Section "Writing Test Cases" subsection "Do"):
Adjusted the parts referring to tests checking `parallel-tests'
behaviour. Some other minor related improvements.
* tests/.gitignore (defs-p): Removed.
2010-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
Remove redundant unset of variable TESTS from some test scripts.
* tests/color.test: Do not unset the `TESTS' variable, as it's
already unset in the `defs' file.
* tests/check5.test: Likewise.
* tests/check8.test: Likewise.
* tests/check9.test: Likewise.
* tests/check10.test: Likewise.
* tests/check11.test: Likewise.
* tests/parallel-tests.test: Likewise.
* tests/parallel-tests3.test: Likewise.
* tests/parallel-tests4.test: Likewise.
* tests/parallel-tests5.test: Likewise.
* tests/parallel-tests6.test: Likewise.
* tests/parallel-tests7.test: Likewise.
2010-02-22 Karl Berry <karl@gnu.org>
Improve help message of mdate-sh.
* mdate-sh: mention actual output format in help message.
2010-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Deprecate dist-lzma in favor of dist-xz.
* doc/automake.texi (The Types of Distributions, Options):
Adjust text to reflect renaming of lzma to xz.
* NEWS: Update.
Missing deprecation noted by Antonio Diaz Diaz.
2010-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
Add tests about support of wildcards in EXTRA_DIST.
* tests/extra10.test: New test, check basic support of wildcards
in EXTRA_DIST.
* tests/extra11.test: New test, check more complex usage of
wildcards in EXTRA_DIST.
* tests/extra12.test: New test, check usage of wildcards in
EXTRA_DIST when $builddir != $srcdir.
* tests/Makefile.am (TESTS): Updated accordingly.
Necessity of these new tests suggested by Braden McDaniel
and Ralf Wildenhues.
2010-02-08 Simon Josefsson <simon@josefsson.org>
Fix copyright statement in gnupload script.
* lib/gnupload: Fix copyright statement.
2010-02-06 Dmitry V. Levin <ldv@altlinux.org> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix exit status of signal handlers in shell scripts.
The value of `$?' on entrance to signal handlers in shell scripts
cannot be relied upon, so set the exit code explicitly to
128 + SIG<SIGNAL>.
* lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
* lib/elisp-comp: Likewise.
* lib/install-sh: Likewise.
* lib/ylwrap: Likewise. Also, fix script to trap signal 13, not 3.
* NEWS, THANKS: Update.
Bug report, analysis, and initial patch by Dmitry V. Levin.
2010-02-06 Karl Berry <karl@gnu.org>
Improve gnupload usage text.
* gnupload (usage): Shorten to make more likely to fit on a tty
line. Mention CMD in the synopsis. With ..., plural is implied.
2010-01-28 Christos Kontas <xakon@yahoo.com> (tiny change)
Fix some typos in the manual
* doc/automake.texi (Nested Packages, Rebuilding): Fix typos.
2010-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
Slighty improve tests acoutbs.test and acoutbs2.test.
* tests/acoutbs2.test: Enable `errexit' shell flag. Check that
autoconf and configure work, that the file `zot' is created by
configure, and that no file containing a backslash in its name is
created.
* tests/acoutbs.test: Likewise, plus updated copyright years.
Fix test acoutbs2.test.
* tests/acoutbs2: In the generated configure.in: add proper calls
to AC_INIT and AM_INIT_AUTOMAKE, and remove explicit definition of
PACKAGE and VERSION. Add a call to aclocal before calling automake.
Updated copyright years.
* tests/Makefile.am (XFAIL_TESTS): Removed acoutbs2.test.
Add forgotten test scripts to $(TESTS).
* tests/Makefile.am (TESTS): Added test scripts present on the
filesystem, which were erroneously left out from $(TESTS):
acoutbs2.test, badopt.test, extra2.test.
(XFAIL_TESTS): Added acoutbs2.test.
2010-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Sync auxiliary files from upstream.
* INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub:
Sync from upstream.
Bump copyright years.
* aclocal.in (write_aclocal, version): Bump copyright years.
* automake.in (gen_copyright, version): Likewise.
* doc/automake.texi: Likewise.
Rotate ChangeLog.
* ChangeLog.09: New file, rotated from ...
* ChangeLog: ... here.
* Makefile.am (EXTRA_DIST): Distribute ChangeLog.09.
-----
Copyright (C) 2010, 2011 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification, are
permitted provided the copyright notice and this notice are preserved.
;; Variables:
;; coding: utf-8
;; End: