platform/upstream/automake.git
15 years agodistdir: avoid duplicate `find' traversal with subpackages.
Ralf Wildenhues [Sun, 3 May 2009 07:47:58 +0000 (09:47 +0200)]
distdir: avoid duplicate `find' traversal with subpackages.

* lib/am/distdir.am (distdir) [%?SUBDIRS%]: When recursing, set
`am__skip_mode_fix'.
[%?TOPDIR_P%]: When `$(am__skip_mode_fix)' is set, avoid tree
walk.
* tests/subpkg4.test: New test, to ensure that we still walk the
whole tree while fixing permissions.  We don't ensure it is
walked once only.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDisable test cleanup trap with OSF1/Tru64 sh.
Ralf Wildenhues [Sun, 3 May 2009 07:32:44 +0000 (09:32 +0200)]
Disable test cleanup trap with OSF1/Tru64 sh.

* configure.ac: Test whether /bin/sh has working 'set -e'
in conjunction with an exit trap.  Set $am_cv_sh_errexit_works
accordingly, substitute sh_errexit_works, and warn about
leftover test directories with broken shells like Tru64 /bin/sh.
* tests/defs.in: Do not install any traps with broken shells.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoRecommend *-local hooks without commands, for extensibility.
Bruno Haible [Sat, 2 May 2009 07:26:58 +0000 (09:26 +0200)]
Recommend *-local hooks without commands, for extensibility.

* doc/automake.texi (Clean): Show how to write the clean-local
extension with separate phony target.
* tests/Makefile.am (clean-local-check): Practice what we preach
by marking this phony.  For consistency, rename from ...
(check-clean-local): ... this.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoscripts: normalize all timestamps to UTC
Eric Blake [Tue, 28 Apr 2009 21:19:41 +0000 (15:19 -0600)]
scripts: normalize all timestamps to UTC

* lib/compile (scriptversion): Update emacs hook.
* lib/depcomp (scriptversion): Likewise.
* lib/elisp-comp (scriptversion): Likewise.
* lib/gnupload (scriptversion): Likewise.
* lib/install-sh (scriptversion): Likewise.
* lib/mdate-sh (scriptversion): Likewise.
* lib/missing (scriptversion): Likewise.
* lib/mkinstalldirs (scriptversion): Likewise.
* lib/py-compile (scriptversion): Likewise.
* lib/ylwrap (scriptversion): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
15 years agosilent-rules: fix alignment of less verbose output.
Ralf Wildenhues [Mon, 27 Apr 2009 20:26:04 +0000 (22:26 +0200)]
silent-rules: fix alignment of less verbose output.

* automake.in (define_verbose_var): Define `$silent_var' as
VAR_ASIS, not VAR_PRETTY, to avoid squashing of multiple
adjacent spaces.
* tests/silent.test: Amend test.
Report by Jan Engelhardt.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agomanual: fix trivial grammar errors.
Ralf Wildenhues [Sat, 25 Apr 2009 12:45:24 +0000 (14:45 +0200)]
manual: fix trivial grammar errors.

* doc/automake.texi (Subpackages, Vala Support, Java)
(Checking the Distribution, Timeline): Fix `a' vs. `an' errors
and duplicate `the'.
Report by Eric Blake.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoIndent rule commands consistently with a TAB.
Ralf Wildenhues [Sat, 25 Apr 2009 08:48:11 +0000 (10:48 +0200)]
Indent rule commands consistently with a TAB.

* lib/am/check.am ($(TEST_SUITE_LOG)): Consistently use TAB, not
spaces, for indentation of commands, even if indentation may not
be needed at all.
* lib/am/texinfos.am (install-info-am): Likewise.
* THANKS: Update.
Prompted by report from John Calcote.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: fix recheck* targets for non-GNU make.
Ralf Wildenhues [Sat, 25 Apr 2009 08:43:09 +0000 (10:43 +0200)]
parallel-tests: fix recheck* targets for non-GNU make.

* lib/am/check.am (recheck recheck-html): Override AM_MAKEFLAGS
to portably transport the TEST_LOGS settings through the
recursive `make' invocations.  Fixes parallel-tests9.test
failure with Solaris make.
* tests/parallel-tests9.test: Also ensure that the test
summary is correct for `recheck'.
Suggestion by Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoAvoid racy depmodes with universal builds.
Ralf Wildenhues [Wed, 22 Apr 2009 20:13:05 +0000 (22:13 +0200)]
Avoid racy depmodes with universal builds.

* m4/depend.m4 (_AM_DEPENDENCIES): If universal builds are used,
avoid racy depmodes.
* lib/depcomp: Ignore `-arch' argument for makedepend depmode.
Report by Bruno Haible, analysis by Bruno Haible, Peter O'Gorman,
and Eric Blake.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix link to autotools tutorial.
Fabian Alenius [Tue, 21 Apr 2009 18:52:23 +0000 (20:52 +0200)]
Fix link to autotools tutorial.

* doc/automake.texi (Autotools Introduction): Fix broken link.
* THANKS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agotestsuite: minor w32 fixes.
Ralf Wildenhues [Sun, 19 Apr 2009 15:57:23 +0000 (17:57 +0200)]
testsuite: minor w32 fixes.

* tests/depend5.test: Don't fail if the system or file system
cannot handle weird characters, instead just try a few.
* tests/parallel-tests3.test: Really wait until the serial test
has finished, before letting the cleanup trap do its work.
Report by Bruno Haible.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoAvoid nonportable `./FILE' instead of `FILE' in test.
Ralf Wildenhues [Sun, 19 Apr 2009 15:39:03 +0000 (17:39 +0200)]
Avoid nonportable `./FILE' instead of `FILE' in test.

* tests/libtool3.test: Do not use `$(top_builddir)/sub/libname.la'
in *_LDADD entry if `$(top_builddir)' is `.'.  Fixes test failure
with parallel NetBSD make.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDetect make `include' style also with parallel non-GNU make.
Ralf Wildenhues [Sun, 19 Apr 2009 15:10:25 +0000 (17:10 +0200)]
Detect make `include' style also with parallel non-GNU make.

Parallel NetBSD make outputs `--- $target ---' messages,
parallel HP-UX make outputs `Making target"$target"'.  Just
ignore all additional output for the include test.

* m4/make.m4 (AM_MAKE_INCLUDE): Ignore additional output
produced by `make' to relax `include' style detection.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agomanual: add FAQ `Debugging Make Rules'.
Ralf Wildenhues [Sat, 18 Apr 2009 21:03:17 +0000 (23:03 +0200)]
manual: add FAQ `Debugging Make Rules'.

* doc/automake.texi (Debugging Make Rules): New FAQ section.
(Top, FAQ): Adjust menus, and capitalization of the description
of the `Hard-Coded Install Paths' node.
(Multiple Outputs): Add comment to restore font-lock for vim.
Suggestion by Karl Berry.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoLet XFile::lock warn and fail with parallel non-GNU make, too.
Ralf Wildenhues [Sun, 19 Apr 2009 10:46:36 +0000 (12:46 +0200)]
Let XFile::lock warn and fail with parallel non-GNU make, too.

* lib/Automake/XFile.pm (lock): Also match `-j' for parallel BSD
make, and `-P' for parallel HP-UX make.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix AM_PROG_VALAC version requirement detection.
Ralf Wildenhues [Sun, 19 Apr 2009 07:47:01 +0000 (09:47 +0200)]
Fix AM_PROG_VALAC version requirement detection.

* m4/vala.m4 (AM_PROG_VALAC): Remove `Vala ' from valac
--version string before comparing versions.
* tests/vala2.test: Require version 0.7.0 for the test.
Fixes failures of vala2.test and vala3.test with older valac.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoCorrectly treat all assignments with bogus trailing comments.
Ralf Wildenhues [Sun, 19 Apr 2009 00:19:20 +0000 (02:19 +0200)]
Correctly treat all assignments with bogus trailing comments.

Before this patch, automake would silently fail to diagnose and
to copy into the output those variable assignments which are
preceded by a comment, and end in backslash newline comment.

* automake.in (read_am_file): When determining whether an
escaped newline followed by a comment is an error, correctly use
the parser state, not the contents of a saved comment, which
could still be carried over from a comment before an assignment.
* NEWS: Update.
* tests/commen11.test: New test.
* tests/Makefile.am: Update.
Report by Karl Berry.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMerge branch 'next'
Ralf Wildenhues [Sun, 19 Apr 2009 06:50:46 +0000 (08:50 +0200)]
Merge branch 'next'

* next: (64 commits)
  More minor fixups to vala support.
  Improve Vala support.
  testsuite: do not fail on systems without read permissions.
  testsuite: parallel make fixes.
  silent-rules reorganization, --enable-silent-rules switch.
  manual: Add note about parallelism and tests ordering.
  Fix maintainer-check failure.
  parallel-tests: more testsuite exposure.
  parallel-tests: let VERBOSE=yes output appear before summary.
  parallel-tests: `clean recheck' should not rerun all tests.
  parallel-tests: Fix driver for nonempty executable extension.
  Fix a couple of $(EXEEXT)-related testsuite failure.
  Document last change in NEWS.
  Fix renamed objects with subdir-objects and other languages.
  Do not remove texinfo outputs upon mostlyclean.
  testsuite: unset TESTS, TEST_LOGS, to avoid interference.
  testsuite: generate $(parallel_tests) just when needed.
  Remove superfluous line from recheck recheck-html.
  parallel-tests: redo check-html, recheck, recheck-html.
  parallel-tests: LOG_COMPILER for tests without known extension.
  ...

15 years agoMerge branch 'mh-vala-support' into next
Ralf Wildenhues [Sun, 19 Apr 2009 06:09:13 +0000 (08:09 +0200)]
Merge branch 'mh-vala-support' into next

* mh-vala-support:
  More minor fixups to vala support.
  Improve Vala support.
  Minor fixups for Vala support.
  Support Vala in non-recursive builds; more tests and fixes.
  Initial support for the vala programming language.

15 years agoMore minor fixups to vala support.
Ralf Wildenhues [Sun, 19 Apr 2009 06:06:51 +0000 (08:06 +0200)]
More minor fixups to vala support.

* automake.in (lang_vala_finish_target): Fix typo in comment.
* doc/automake.texi (Vala Support): Fix typo.  Declare vala
support as "initial".
* NEWS: Likewise, declare vala support as "initial".

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoImprove Vala support.
Jürg Billeter [Sun, 5 Apr 2009 13:16:48 +0000 (15:16 +0200)]
Improve Vala support.

* automake.in: Update to Vala 0.7.0 semantics, recover from removal
of built sources, support silent-rules, drop _PKGNAME variables
* doc/automake.texi, NEWS: Update.
* lib/am/vala.am: Bump copyright years.
* m4/vala.m4: Likewise.
* tests/vala.test: Remove obsolete grep tests.
* tests/vala1.test: Likewise.
* tests/vala2.test: Test full build, distcheck, and distclean.
* tests/vala3.test: Likewise, also test with subdir-objects.
* tests/vala4.test: Bump copyright years.
* tests/vala5.test: New test for per-target flags, expected to fail.
* tests/Makefile.am: Update.
* THANKS: Update.

Signed-off-by: Jürg Billeter <j@bitron.ch>
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMerge branch 'next' (early part) into mh-vala-support
Ralf Wildenhues [Sun, 19 Apr 2009 05:59:42 +0000 (07:59 +0200)]
Merge branch 'next' (early part) into mh-vala-support

* 'next' (early part): (135 commits)
  parallel-tests: LOG_COMPILER for tests without known extension.
  More node renaming in the manual.
  Fix instdir-java.test failure.
  Fix testsuite failures due to nonexistent `dirlist' entries.
  Fix typo in manual.
  Avoid test failure due to paranoid TAR_OPTIONS envvar setting.
  Use more common spelling in diagnostic: s/canonic/canonical/.
  Post-release version bump.
  Version 1.10b.
  Minor NEWS update.
  Reorganize nodes in the manual.
  Update AM_RECURSIVE_TARGETS for parallel-tests.
  parallel-tests: New target recheck-html.
  Rewrite maintainer-check in separate tests, parallelizable.
  Fix maintainer-check failure.
  Fix latex warning in manual.
  Sync auxiliary files from upstream.
  parallel-tests: redo lazy checking: recheck and RECHECK_LOGS.
  parallel-tests: do not mark check-TESTS as `.MAKE'.
  parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS.
  ...

15 years agotestsuite: do not fail on systems without read permissions.
Ralf Wildenhues [Tue, 14 Apr 2009 21:42:14 +0000 (23:42 +0200)]
testsuite: do not fail on systems without read permissions.

* tests/instfail-info.test: Do not use the `non-root'
requirement for testing whether files may be made unreadable;
instead use `test -r' and skip the test if that still works.
* tests/instfail-java.test: Likewise.
* tests/instfail-libtool.test: Likewise.
* tests/instfail.test: Likewise.
* tests/instmany-mans.test: Likewise.
* tests/instmany-python.test: Likewise.
* tests/instmany.test: Likewise.
* tests/parallel-tests9.test: Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agotestsuite: parallel make fixes.
Ralf Wildenhues [Tue, 14 Apr 2009 21:09:15 +0000 (23:09 +0200)]
testsuite: parallel make fixes.

This patch fixes a couple of testsuite bugs exposed with
`MAKE=make\ -jN make check'.
* tests/libtoo10.test: Do not run `clean' in same $MAKE
invocation as `all check'.  Fixes test failure with parallel
NetBSD `make -jN'.
* tests/nobase.test: Be sure to create a directory before
creating files in it.  Fixes test failure with MAKE=`make -jN'
for NetBSD make.  This issue is hidden with parallel GNU make
due to its parallel breadth first update order.
* tests/parallel-tests3.test: Skip if $MAKE contains `-j',
GNU make will use the environment variable $MAKE for recursion
and thus run in parallel even if `$MAKE -j1' was used on the
command line in the test.  Also, after running the test proper,
wait long enough so that background jobs have finished and there
are no open files left when the cleanup code runs.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agomanual: improve markup: itemize list in `Extending'.
Karl Berry [Tue, 14 Apr 2009 19:43:08 +0000 (21:43 +0200)]
manual: improve markup: itemize list in `Extending'.

* doc/automake.texi (Extending): Use `@item's for user override
semantics.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agosilent-rules reorganization, --enable-silent-rules switch.
Ralf Wildenhues [Mon, 13 Apr 2009 21:17:39 +0000 (23:17 +0200)]
silent-rules reorganization, --enable-silent-rules switch.

This patch introduces a configure-time option to set the default
verbosity.  Since configure now needs to know whether the
`silent-rules' automake option was set, the latter can only be
set within AM_INIT_AUTOMAKE, or with a new AM_SILENT_RULES macro
but not any more through AUTOMAKE_OPTIONS or the automake
command line option `--silent-rules'.

* automake.in (define_verbose_var): Define the default verbose
variable in terms of `$(AM_DEFAULT_VERBOSITY)'.
(handle_configure): Do not pass `--silent-rules' to automake.
(scan_autoconf_traces): Trace `AM_SILENT_RULES'.  If seen,
enable global `silent-rules' option.
(usage): Do not document `--silent-rules'.
(parse_arguments): Do not accept `--silent-rules'.
* doc/automake.texi (Options): Overhaul.  Document
AM_SILENT_RULES, --enable-silent-rules, --disable-silent-rules,
AM_DEFAULT_VERBOSITY.  Show an example for user-added variables
for less verbose output.
(Invoking Automake): Remove documentation for `--silent-rules'.
(Public Macros): Document `AM_SILENT_RULES'.
* NEWS: Update.
* lib/Automake/Options.pm (_process_option_list): Accept
`silent-rules' only as option in configure.ac.
* m4/init.m4 (AM_INIT_AUTOMAKE): If the `silent-rules' option
was enabled, require `AM_SILENT_RULES'; move AM_BACKSLASH
initialization to ...
* m4/silent.m4 (AM_SILENT_RULES): ... this new file, new macro.
Deal with `--enable-silent-rules' switch; define
AM_DEFAULT_VERBOSITY.
* m4/Makefile.am (dist_m4data_DATA): Add silent.m4.
* tests/dollarvar.test: Remove tests for `--silent-rules', use
`AM_SILENT_RULES'.
* tests/flavor.test: Remove test for `--silent-rules'.
* tests/silent.test: Use `AM_SILENT_RULES' instead of
`AUTOMAKE_OPTIONS = silent-rules'; use `--enable-silent-rules'.
* tests/silent2.test: Likewise.
* tests/silent3.test: Likewise.
* tests/silent4.test: Likewise.
* tests/silent5.test: Likewise.
* tests/silent6.test: Likewise. Test `AM_SILENT_RULES' as well
as `AM_INIT_AUTOMAKE([silent-rules])' instead of
`--silent-rules'.
* tests/silent7.test: Use `AM_SILENT_RULES' instead of
`AUTOMAKE_OPTIONS = silent-rules'; ensure the latter is rejected.
Test combinations of --enable-silent-rules and
--disable-silent-rules with `make V=0' and `make V=1'.
Suggestion for configure-time switch by Bob Friesenhahn.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agomanual: Add note about parallelism and tests ordering.
Ralf Wildenhues [Mon, 13 Apr 2009 11:36:19 +0000 (13:36 +0200)]
manual: Add note about parallelism and tests ordering.

* doc/automake.texi (Simple Tests using parallel-tests):
Dependencies between test logs work for tests with known
extensions only.  Hint that tests should be prepared to be run
in parallel.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix maintainer-check failure.
Ralf Wildenhues [Mon, 13 Apr 2009 11:35:06 +0000 (13:35 +0200)]
Fix maintainer-check failure.

* tests/suffix13.test: Use Exit not exit.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agobin_PROGRAMS = $(EXTRA_PROGRAMS) should work.
Ralf Wildenhues [Mon, 13 Apr 2009 11:29:25 +0000 (13:29 +0200)]
bin_PROGRAMS = $(EXTRA_PROGRAMS) should work.

* automake.in (am_install_var): For `PROGRAMS' primary, strip
`$(EXEEXT)' here already, so the name uniquifying works even
when we look at names repeatedly, with inconsistent executable
extension; through variable references, we might have added
the extension ourselves earlier.
(handle_programs): No need to strip `$(EXEEXT)' here any more.
* tests/extra8.test: New test.
* tests/Makefile.am: Update.
* THANKS: Update.
Report by Daniel Richard G.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix grammar in comments and documentation.
Jim Meyering [Fri, 10 Apr 2009 14:25:05 +0000 (16:25 +0200)]
Fix grammar in comments and documentation.

* doc/automake.texi (API versioning): Fix grammar.
* automake.in: Fix grammar in comment.
* lib/Automake/ChannelDefs.pm: Likewise.
* tests/ext2.test: Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: more testsuite exposure.
Ralf Wildenhues [Fri, 10 Apr 2009 11:37:31 +0000 (13:37 +0200)]
parallel-tests: more testsuite exposure.

* tests/parallel-tests.test: Also test overriding TEST_LOGS and
TESTS.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: let VERBOSE=yes output appear before summary.
Ralf Wildenhues [Fri, 10 Apr 2009 11:31:28 +0000 (13:31 +0200)]
parallel-tests: let VERBOSE=yes output appear before summary.

* lib/am/check.am ($(TEST_SUITE_LOG)): In `VERBOSE=yes' mode,
output contents of `$(TEST_SUITE_LOG)' before, rather than after
the test suite summary.  This ensures that the email address
appears near the end of the output; also, the log file already
starts with a result summary anyway.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: `clean recheck' should not rerun all tests.
Ralf Wildenhues [Fri, 10 Apr 2009 11:26:16 +0000 (13:26 +0200)]
parallel-tests: `clean recheck' should not rerun all tests.

* lib/am/check.am (recheck, recheck-html): Do not rerun all
tests if `$(TEST_SUITE_LOG)' does not exist.
* tests/parallel-tests2.test: Adjust recheck test.
* tests/parallel-tests9.test: Adjust recheck-html test.
* NEWS: Update.
Suggestion by Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: Fix driver for nonempty executable extension.
Ralf Wildenhues [Wed, 8 Apr 2009 22:16:35 +0000 (00:16 +0200)]
parallel-tests: Fix driver for nonempty executable extension.

* automake.in (handle_tests): New substitution `%am__EXEEXT%',
defined as 'FALSE' for non-generic rules, or if no programs are
built at all.  Otherwise, define it as configure conditional.
* lib/am/check2.am [%am__EXEEXT%] (%EXT%$(EXEEXT).log): New
conditional generic rule.
* m4/init.m4: Hook an m4_provide of `_AM_COMPILER_EXEEXT' onto
Autoconf's `_AC_COMPILER_EXEEXT' macro.
(AM_INIT_AUTOMAKE): If `_AM_COMPILER_EXEEXT' has been provided
at `AC_CONFIG_COMMANDS_PRE' time, then introduce a conditional
`am__EXEEXT', defined to true iff `$EXEEXT' is nonempty.
* tests/check5.test: Only match `_EXEEXT_[1-9]' here, to avoid
false positives stemming from `@am__EXEEXT_TRUE@'.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix a couple of $(EXEEXT)-related testsuite failure.
Ralf Wildenhues [Wed, 8 Apr 2009 22:15:32 +0000 (00:15 +0200)]
Fix a couple of $(EXEEXT)-related testsuite failure.

* tests/check8.test: Allow executable extensions in test suite
output.
* tests/check9.test: Add `$(EXEEXT)' manually to @substituted@
XFAIL_TESTS entries.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDocument last change in NEWS.
Ralf Wildenhues [Wed, 8 Apr 2009 18:02:55 +0000 (20:02 +0200)]
Document last change in NEWS.

* NEWS: Update for last patch.

15 years agoFix renamed objects with subdir-objects and other languages.
Florian Briegel [Tue, 7 Apr 2009 21:16:01 +0000 (23:16 +0200)]
Fix renamed objects with subdir-objects and other languages.

* automake.in: Fixed bug when building with renamed objects
and foreign languages.
* tests/suffix13.test: New test.
* tests/Makefile.am: Adjust.
* THANKS: Update.
Reports by Florian Briegel and Stepan Kasal.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDo not remove texinfo outputs upon mostlyclean.
Ralf Wildenhues [Tue, 7 Apr 2009 20:54:28 +0000 (22:54 +0200)]
Do not remove texinfo outputs upon mostlyclean.

* lib/am/texinfos.am: New substitutions %MOSTLYCLEAN%,
%MAINTCLEAN%.
(clean-aminfo): New target, remove %TEXICLEAN% if nonemtpy,
declare phony.  Hook this target to ...
(clean-am): ... this and ...
(?CYGNUS?clean-info): ... this.
(maintainer-clean-aminfo): Remove %MAINTCLEAN% if nonempty,
for later.
(mostlyclean-aminfo): Remove %MOSTLYCLEAN%.
* automake.in (handle_texinfo_helper): Return three arrays
$MOSTLYCLEAN, $TEXICLEAN, $MAINTCLEAN, instead of one array.
Only put LaTeX helper files in $MOSTLYCLEAN, the rest in
$TEXICLEAN for now.
(handle_texinfo): Accept these, chop off extra newline, and
substitute them in `texinfos.am'.
* NEWS: Update.
* tests/txinfo33.test: New test.
* tests/Makefile.am: Update.
Report by Bruno Haible.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agotestsuite: unset TESTS, TEST_LOGS, to avoid interference.
Ralf Wildenhues [Mon, 6 Apr 2009 20:14:04 +0000 (22:14 +0200)]
testsuite: unset TESTS, TEST_LOGS, to avoid interference.

* tests/defs.in: Unset TESTS, TEST_LOGS.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agotestsuite: generate $(parallel_tests) just when needed.
Ralf Wildenhues [Mon, 6 Apr 2009 20:08:30 +0000 (22:08 +0200)]
testsuite: generate $(parallel_tests) just when needed.

* tests/Makefile.am (check_SCRIPTS): No need to list
$(parallel_tests) here, they can be generated as needed during
the test run, following our recommendation in the manual.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoRemove superfluous line from recheck recheck-html.
Ralf Wildenhues [Mon, 6 Apr 2009 20:02:58 +0000 (22:02 +0200)]
Remove superfluous line from recheck recheck-html.

* lib/am/check.am (recheck recheck-html): Remove superfluous
line, introduced bogusly in last commit.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: redo check-html, recheck, recheck-html.
Akim Demaille [Mon, 6 Apr 2009 05:03:16 +0000 (07:03 +0200)]
parallel-tests: redo check-html, recheck, recheck-html.

* lib/am/check.am (recheck, recheck-am): Remove.
(recheck-TESTS): Rename to ...
(recheck): ... this and rewrite, factored ...
(recheck-html): ... with this rule.  Pass TEST_LOGS rather than
RECHECK_LOGS to `check' and `check-html', respectively, to avoid
running outdated tests.  Invoking the public macros ensures
`check_SCRIPTS' etc. are created in time.  Do not output errors
for tests that were not run yet.  If the testsuite has not run
at all, run all tests.
(check-html): Run `check' target, not `check-TESTS', to ensure
`check_SCRIPTS' etc. are created in time.
(.PHONY, .MAKE, AM_RECURSIVE_TARGETS): Adjust contents.
* tests/parallel-tests2.test: Expose the check-html and
recheck-html issues.
* tests/parallel-tests9.test: Expose the recheck issues.
Bugs in previous version pointed out by Akim, who already had
them fixed in his original version.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: LOG_COMPILER for tests without known extension.
Ralf Wildenhues [Sat, 4 Apr 2009 10:14:14 +0000 (12:14 +0200)]
parallel-tests: LOG_COMPILER for tests without known extension.

* automake.in (handle_tests): If we don't match a known
extension, define `LOG_COMPILER' as `$(LOG_COMPILE)
$(AM_LOG_FLAGS) $(LOG_FLAGS)' and use it as %COMPILE% in check2.
* doc/automake.texi (Simple Tests using parallel-tests):
Document it.  In the examples, suggest using the AM_*LOG_FLAGS
flags in Makefile.am rather than the variables without `AM_'
prefix.
* lib/Automake/tests/Makefile.am (AM_PL_LOG_FLAGS): Renamed from
(PL_LOG_FLAGS): ... this variable, intended for the user.
* tests/parallel-tests7.test: Extend test.
* NEWS: Update.
Suggestion by Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMore node renaming in the manual.
Ralf Wildenhues [Sat, 4 Apr 2009 09:10:02 +0000 (11:10 +0200)]
More node renaming in the manual.

* doc/automake.texi (Top): Adjust menu to ...
(API Versioning): ... this node being renamed from ...
(API versioning): ... this, and ...
(Wildcards): ... this being renamed from ...
(wildcards): ... this.
Report by Karl Berry.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix instdir-java.test failure.
Andreas Schwab [Fri, 3 Apr 2009 05:20:53 +0000 (07:20 +0200)]
Fix instdir-java.test failure.

* tests/instdir-java.test: Don't require gcj.  Skip if javac is
not available.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix testsuite failures due to nonexistent `dirlist' entries.
Ralf Wildenhues [Wed, 1 Apr 2009 18:36:22 +0000 (20:36 +0200)]
Fix testsuite failures due to nonexistent `dirlist' entries.

* tests/defs.in: When parsing `$aclocaldir/dirlist', only add
existing directories D to aclocal `-I D' flags, as aclocal
errors on nonexisting directories.
Report and analysis by Andreas Schwab.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix typo in manual.
Akim Demaille [Tue, 31 Mar 2009 19:45:14 +0000 (21:45 +0200)]
Fix typo in manual.

* doc/automake.texi (Simple Tests using parallel-tests): Fix
typo.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoAvoid test failure due to paranoid TAR_OPTIONS envvar setting.
Jim Meyering [Tue, 31 Mar 2009 19:11:06 +0000 (21:11 +0200)]
Avoid test failure due to paranoid TAR_OPTIONS envvar setting.

* tests/txinfo18.test: Don't let a TAR_OPTIONS=--keep-old-files
environment variable setting cause test failure.  Fixed in
texi2dvi 4.13.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoUse more common spelling in diagnostic: s/canonic/canonical/.
Jim Meyering [Tue, 31 Mar 2009 19:06:28 +0000 (21:06 +0200)]
Use more common spelling in diagnostic: s/canonic/canonical/.

* automake.in (check_typos): s/canonic/canonical/.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoPost-release version bump.
Ralf Wildenhues [Mon, 30 Mar 2009 22:54:04 +0000 (00:54 +0200)]
Post-release version bump.

* configure.ac, NEWS: Bump version to 1.10c.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoVersion 1.10b. v1.10b
Ralf Wildenhues [Sun, 29 Mar 2009 21:23:16 +0000 (23:23 +0200)]
Version 1.10b.

* configure.ac, NEWS: Bump version to 1.10b.
* doc/automake.texi (Releases): Add statistics for 1.10b.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMinor NEWS update.
Ralf Wildenhues [Sun, 29 Mar 2009 21:05:38 +0000 (23:05 +0200)]
Minor NEWS update.

* NEWS: Minor update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoReorganize nodes in the manual.
Ralf Wildenhues [Sun, 29 Mar 2009 05:48:08 +0000 (07:48 +0200)]
Reorganize nodes in the manual.

Avoid texinfo sectioning commands without nodes, by either
introducing new nodes along with menus, or using headings
commands.  Adjust all references.

* doc/automake.texi: Throughout the manual, adjust references to
new or changed node names.  Rename `non-configured' to
`unconfigured', capitalize headings and section names better.
(Top): List new menus and nodes introduced below.
(Length Limitations): Renamed from ...
(Length limitations): ... this.
(aclocal Options): Renamed from ...
(aclocal options): ... this.
(Macro Search Path): Renamed from ...
(Macro search path): ... this.  Rename subsubsections to
subsubheadings.
(Public Macros, Obsolete Macros, Private Macros): Renamed from
(Public macros, Obsolete macros, Private macros): ... these.
(Conditional Subdirectories): Introduce sub menu and split ...
(SUBDIRS vs DIST_SUBDIRS, Subdirectories with AM_CONDITIONAL)
(Subdirectories with AC_SUBST, Unconfigured Subdirectories):
... into these new nodes.  Adjust subsection names to node
names.
(Conditional Sources): Rename subsubsections to subsubheadings.
(Conditional Programs): Likewise.
(Program Variables): Renamed from ...
(Program variables): ... this.
(Libtool Issues): Introduce sub menu and split into ...
(Required file ltmain.sh not found)
(Objects created both with libtool and without): ... these new
nodes.
(Other Objects, Built Sources): Renamed from ...
(Other objects, Built sources): ... these.
(Built Sources Example): Renamed from ...
(Built sources example): this.  Rename unnumberedsubsecs to
subsubheadings.
(Man Pages): Renamed from ...
(Man pages): ... this.
(Install): Introduce sub menu and split into ...
(Basics of Installation, The Two Parts of Install)
(Extending Installation, Staged Installs)
(Install Rules for the User): ... these new nodes.
(Dist): Introduce sub menu and split into ...
(Basics of Distribution, Fine-grained Distribution Control)
(The dist Hook, Checking the Distribution)
(The Types of Distributions): ... these new nodes.
(Tests): Introduce sub menu and split into ...
(Simple Tests, Simple Tests using parallel-tests, DejaGnu Tests)
(Install Tests): ... these new nodes.
(Conditionals): Move the portability paragraph up, introduce sub
menu and split into ...
(Usage of Conditionals, Limits of Conditionals): ... these new
nodes.  Link to several sections throughout the manual that deal
with specific usage of conditionals.
(CVS): Rename subsections to subheadings.
(maintainer-mode): Likewise.
(Limitations on File Names): Renamed from ...
(limitations on file names): ... this.
(Flag Variables Ordering): Rename subsections to subheadings.
(Renamed Objects): Renamed from ...
(Renamed objects): ... this.
(Dependency Tracking Evolution): Introduce sub menu and split
into ...
(First Take on Dependencies, Dependencies As Side Effects)
(Dependencies for the User, Techniques for Dependencies)
(Recommendations for Tool Writers)
(Future Directions for Dependencies): ... these new nodes.
Report by Karl Berry.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoUpdate AM_RECURSIVE_TARGETS for parallel-tests.
Ralf Wildenhues [Sun, 29 Mar 2009 00:23:30 +0000 (01:23 +0100)]
Update AM_RECURSIVE_TARGETS for parallel-tests.

* lib/am/check.am [PARALLEL_TESTS] (AM_RECURSIVE_TARGETS):
Add check, recheck, check-html, recheck-html.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMerge branch 'ad-parallel-tests' into next
Ralf Wildenhues [Sun, 29 Mar 2009 00:21:01 +0000 (01:21 +0100)]
Merge branch 'ad-parallel-tests' into next

* ad-parallel-tests:
  parallel-tests: New target recheck-html.
  parallel-tests: redo lazy checking: recheck and RECHECK_LOGS.
  parallel-tests: do not mark check-TESTS as `.MAKE'.
  parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS.
  check-html: Always create HTML output, note conversion failure.
  parallel-tests: per-extension test driver: <EXT>_LOG_COMPILER.
  parallel-tests: also record logs of SKIPped tests.
  Minor optimization in parallel-tests text box creation.

15 years agoparallel-tests: New target recheck-html.
Ralf Wildenhues [Sun, 29 Mar 2009 00:17:51 +0000 (01:17 +0100)]
parallel-tests: New target recheck-html.

* lib/am/check.am [PARALLEL_TESTS] (recheck-html): New phony,
recursive target.  Factor common implementation with
`check-html'.
* doc/automake.texi (Tests): Document recheck-html.
* tests/parallel-tests2.test: Test it.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMerge branch 'master' into next
Ralf Wildenhues [Sat, 28 Mar 2009 23:59:46 +0000 (00:59 +0100)]
Merge branch 'master' into next

* master:
  Rewrite maintainer-check in separate tests, parallelizable.
  Fix maintainer-check failure.
  Fix latex warning in manual.
  Sync auxiliary files from upstream.
  manual: minor cleanups.
  Sane (un)install for empty directory variables.
  Ensure that empty directory variables work with empty content variables.
  Use --tag=FC with libtool also for .f90 files.
  DISTFILES containing a directory and files in that directory.
  Fix a documentation typo.
  Define AM_RECURSIVE_TARGETS, for gnulib's GNUmakefile.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoRewrite maintainer-check in separate tests, parallelizable.
Ralf Wildenhues [Sat, 28 Mar 2009 23:48:37 +0000 (00:48 +0100)]
Rewrite maintainer-check in separate tests, parallelizable.

* Makefile.am (sc_diff_automake_in_automake, sc_perl_syntax)
(sc_no_brace_variable_expansions, sc_rm_minus_f)
(sc_no_for_variable_in_macro, sc_mkinstalldirs)
(sc_pre_normal_post_install_uninstall, sc_perl_no_undef)
(sc_perl_no_split_regex_space, sc_cd_in_backquotes)
(sc_cd_relative_dir, sc_perl_at_uscore_in_scalar_context)
(sc_perl_local_no_parens, sc_perl_local)
(sc_AMDEP_TRUE_in_automake_in, sc_tests_make_without_am_makeflags)
(sc_tests_plain_make, sc_tests_plain_autoconf)
(sc_tests_plain_autoupdate, sc_tests_plain_automake)
(sc_tests_here_document_format, sc_tests_Exit_not_exit)
(sc_tests_automake_fails, sc_tests_plain_aclocal)
(sc_tests_plain_perl, sc_tests_required_after_defs)
(sc_tests_overriding_macros_on_cmdline, sc_tests_plain_sleep)
(sc_tests_plain_egrep_fgrep, sc_mkdir_p, sc_perl_at_substs)
(sc_unquoted_DESTDIR, sc_tabs_in_texi, sc_at_in_texi): New rules,
all phony, all listed in ...
(syntax_check_rules): ... this new variable and split out from ...
(maintainer-check): ... this rule.  Depend on $(syntax_check_rules).

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix maintainer-check failure.
Ralf Wildenhues [Sat, 28 Mar 2009 23:53:40 +0000 (00:53 +0100)]
Fix maintainer-check failure.

* Makefile.am (maintainer-check): Do not complain if DESTDIR is
passed as argument to `make'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix latex warning in manual.
Ralf Wildenhues [Sat, 28 Mar 2009 23:39:17 +0000 (00:39 +0100)]
Fix latex warning in manual.

* doc/automake.texi (Cross-Compilation): Fix underfull hbox.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoSync auxiliary files from upstream.
Ralf Wildenhues [Sat, 28 Mar 2009 23:38:47 +0000 (00:38 +0100)]
Sync auxiliary files from upstream.

* INSTALL, lib/INSTALL, lib/config.guess, lib/config.sub,
lib/texinfo.tex: Sync from upstream.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: redo lazy checking: recheck and RECHECK_LOGS.
Ralf Wildenhues [Sat, 28 Mar 2009 21:58:34 +0000 (22:58 +0100)]
parallel-tests: redo lazy checking: recheck and RECHECK_LOGS.

Replace the LAZY_TEST_SUITE API with a simpler yet more powerful
one: RECHECK_LOGS specifies those tests which are to be removed
in any case before testing.  Provide a `recheck' convenience
target to set RECHECK_LOGS to all failed and unexpectedly passed
tests.  Document several ways to limit the set of tests run.

* lib/am/check.am [PARALLEL_TESTS] (RECHECK_LOGS): New variable,
default to $(TESTS_LOGS).
(check-TESTS): Remove $(RECHECK_LOGS) not $(TEST_LOGS).  Drop use
of LAZY_TEST_SUITE.
($(TEST_SUITE_LOG)): Do not output note about lazy rerun, as
LAZY_TEST_SUITE is gone.
(recheck): New target.
(recheck-am, recheck-TESTS): New internal targets.
* doc/automake.texi (Tests): Update @vindex for TESTS and
TEST_LOGS.  Replace description of LAZY_TEST_SUITE with a list
of ways the set of tests to be run can be modified.  Document
RECHECK_LOGS and the recheck target.
* tests/defs.in: Unset RECHECK_LOGS not LAZY_TEST_SUITE.
* tests/parallel-tests.test: Adjust, replacing LAZY_TEST_SUITE
with corresponding RECHECK_LOGS settings, and add another
RECHECK_LOGS test.
* tests/parallel-tests9.test: New test, test `recheck'.
* tests/Makefile.am: Update.
Suggestion and different implementation by Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: do not mark check-TESTS as `.MAKE'.
Ralf Wildenhues [Sat, 28 Mar 2009 21:52:22 +0000 (22:52 +0100)]
parallel-tests: do not mark check-TESTS as `.MAKE'.

* lib/am/check.am [PARALLEL_TESTS] (.MAKE): Remove check-TESTS.
This rule removes files, which should not be executed with BSD
`make -n'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS.
Ralf Wildenhues [Sat, 28 Mar 2009 20:49:02 +0000 (21:49 +0100)]
parallel-tests: warn about $(srcdir), $(top_srcdir) in TESTS.

* automake.in (handle_tests): Warn about portability issue
concerning generated TESTS files listed with a `$(srcdir)/'
or `$(top_srcdir)/' prefix.
* doc/automake.texi (TESTS): Document this issue.  Mention that
the parallel-tests driver is still experimental.
* tests/parallel-tests8.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agocheck-html: Always create HTML output, note conversion failure.
Ralf Wildenhues [Sat, 28 Mar 2009 20:01:43 +0000 (21:01 +0100)]
check-html: Always create HTML output, note conversion failure.

* lib/am/check.am (check-html): Create `$(TEST_SUITE_HTML)' in
any case.  Exit unsuccessfully if HTML creation failed.
* tests/parallel-tests2.test: Amend test to expose this.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: per-extension test driver: <EXT>_LOG_COMPILER.
Ralf Wildenhues [Wed, 11 Mar 2009 22:55:26 +0000 (23:55 +0100)]
parallel-tests: per-extension test driver: <EXT>_LOG_COMPILER.

For test files with extension <ext>, introduce the internal
variable <EXT>_LOG_COMPILE, which expands to
$(<EXT>_LOG_COMPILER) $(AM_<EXT>_LOG_FLAGS) $(<EXT>_LOG_FLAGS).
Turn also the lib/Automake/tests testsuite over to the new
test driver.
* doc/automake.texi (Tests): Document `EXT_LOG_COMPILER' and
`EXT_LOG_FLAGS'.
* lib/am/check2.am: Insert `%COMPILE%' right before test.
* automake.in (handle_tests): Substitute `COMPILE' for check2,
empty for tests without extension, and `$(ext_LOG_COMPILE)' for
extension `ext'.  In the latter case, define it from the public
components.
* configure.ac (AM_INIT_AUTOMAKE): Use `parallel-test' globally.
* tests/Makefile.am (AUTOMAKE_OPTIONS): Remove, not needed here
any more.
* lib/Automake/tests/Makefile.am (TESTS_ENVIRONMENT): Split ...
(PL_LOG_COMPILER, PL_LOG_FLAGS): ... into these new variables.
(TESTS_EXTENSIONS): New variable, initialize to `.pl'.
* tests/parallel-tests7.test: New test.
* tests/Makefile.am: Update.
Suggestion by Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agomanual: minor cleanups.
Ralf Wildenhues [Mon, 24 Nov 2008 08:50:20 +0000 (09:50 +0100)]
manual: minor cleanups.

* doc/automake.texi (Yacc and Lex): Adjust spacing in example.
(Mixing Fortran 77 With C and C++): Drop unneeded @page breaks.

15 years agoSane (un)install for empty directory variables.
Ralf Wildenhues [Sat, 28 Mar 2009 17:04:48 +0000 (18:04 +0100)]
Sane (un)install for empty directory variables.

This patch fixes all install and uninstall rules to behave
sanely when $(wheredir) is the empty string, but $(where_HOW) is
nonempty, for all kinds of values of `where' and `HOW'.

* lib/am/data.am (install-%DIR%%PRIMARY%, uninstall-%DIR%%PRIMARY%):
Do not touch the install tree if the corresponding directory variable
$(%NDIR%dir) is empty.
* lib/am/java.am (install-%DIR%JAVA, uninstall-%DIR%JAVA): Likewise.
* lib/am/libs.am (install-%DIR%LIBRARIES, uninstall-%DIR%LIBRARIES):
Likewise.
* lib/am/lisp.am (install-%DIR%LISP, uninstall-%DIR%LISP): Likewise.
* lib/am/ltlib.am (install-%DIR%LTLIBRARIES, uninstall-%DIR%LTLIBRARIES):
Likewise.
* lib/am/mans.am (install-man%SECTION%, uninstall-man%SECTION%):
Likewise.
* lib/am/progs.am (install-%DIR%PROGRAMS, uninstall-%DIR%PROGRAMS):
Likewise.
* lib/am/python.am (install-%DIR%PYTHON, uninstall-%DIR%PYTHON):
Likewise.
* lib/am/scripts.am (install-%DIR%SCRIPTS, uninstall-%DIR%SCRIPTS):
Likewise.
* lib/am/texinfos.am (install-dvi-am, install-html-am, install-pdf-am)
(install-ps-am, uninstall-dvi-am, uninstall-html-am, uninstall-pdf-am)
(uninstall-ps-am): Likewise.
* tests/instdir2.test, tests/instdir-java.test,
tests/instdir-lisp.test, tests/instdir-ltlib.test,
tests/instdir-prog.test, tests/instdir-python.test,
tests/instdir-texi.test: New tests.
* tests/Makefile.am: Update.
* NEWS: Update.
Suggestion by Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoEnsure that empty directory variables work with empty content variables.
Ralf Wildenhues [Sat, 28 Mar 2009 17:03:15 +0000 (18:03 +0100)]
Ensure that empty directory variables work with empty content variables.

This test ensures that, if both $(wheredir) and $(where_HOW) are
the empty string, then the `install' and `uninstall' rules behave
sanely, for several directory variables `wheredir' and several
primaries `HOW'.
* tests/instdir.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoUse --tag=FC with libtool also for .f90 files.
Ralf Wildenhues [Mon, 23 Mar 2009 20:47:19 +0000 (21:47 +0100)]
Use --tag=FC with libtool also for .f90 files.

* automake.in: Set 'libtool_tag' for language `fc'.
* tests/fort5.test: Grep for the tag.
* THANKS: Update.
Report by John R. Cary.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: also record logs of SKIPped tests.
Ralf Wildenhues [Wed, 11 Mar 2009 20:03:00 +0000 (21:03 +0100)]
parallel-tests: also record logs of SKIPped tests.

* lib/am/check.am [PARALLEL_TESTS] ($(TEST_SUITE_LOG)): Record
SKIPs as well.
Suggested by Jim Meyering.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDISTFILES containing a directory and files in that directory.
Peter Breitenlohner [Sun, 22 Mar 2009 09:11:14 +0000 (10:11 +0100)]
DISTFILES containing a directory and files in that directory.

For PR automake/533:
When the source tree contains non-writable files or directories
(as happens during distcheck), and directories or entries
thereof are listed multiple times in variables to be
distributed, then the corresponding directories below $(distdir)
need to be made writable recursively.  Since file modes should
not change, they need to be copied recursively using `cp -f'.

* lib/am/distdir.am: Handle this situation.
* tests/distdir.test: Extend test to those cases.
* NEWS: Update.
Report by Peter Breitenlohner.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix a documentation typo.
Jim Meyering [Sun, 22 Mar 2009 09:00:27 +0000 (10:00 +0100)]
Fix a documentation typo.

* doc/automake.texi (Headers): Clarify the note telling when it's
better not to use noinst_HEADERS.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDefine AM_RECURSIVE_TARGETS, for gnulib's GNUmakefile.
Ralf Wildenhues [Sun, 22 Mar 2009 08:53:19 +0000 (09:53 +0100)]
Define AM_RECURSIVE_TARGETS, for gnulib's GNUmakefile.

This new macro lists all public targets which invoke `make'
recursively, or depend on targets which do so.  It allows to
prevent parallelism selectively, when multiple targets are
passed on the `make' command line.

* lib/am/distdir.am [%?SUBDIRS%] (AM_RECURSIVE_TARGETS): New
macro.
* lib/am/subdirs.am (AM_RECURSIVE_TARGETS): Likewise.
* lib/am/tags.am [%?SUBDIRS%] (AM_RECURSIVE_TARGETS):
Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMinor optimization in parallel-tests text box creation.
Ralf Wildenhues [Sun, 22 Mar 2009 08:39:14 +0000 (09:39 +0100)]
Minor optimization in parallel-tests text box creation.

* lib/am/check.am [PARALLEL-TESTS] (am__text_box): Use only one
awk invocation, rather than several tools, to create a text box.
Suggestion from Akim Demaille.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMerge branch 'ad-parallel-tests' into next
Ralf Wildenhues [Sat, 14 Mar 2009 10:14:38 +0000 (11:14 +0100)]
Merge branch 'ad-parallel-tests' into next

* ad-parallel-tests:
  Fix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recreation.
  Fix parallel-tests with empty $(TESTS) for BSD make.
  Mark check-html and check-TESTS as recursive for BSD make.
  Match XFAIL_TESTS correctly with Solaris make.
  Use append mode to capture parallel test output.
  parallel-tests: Fix summary output.
  Overhaul of tests/README.
  Documentation for the parallel-tests driver.
  New tests for `parallel-tests'.
  parallel-tests: Ensure backward-compatible semantics.
  Parallel test execution: new option `parallel-tests'.

15 years agoMerge branch 'je-silent' into next
Ralf Wildenhues [Sat, 14 Mar 2009 10:13:18 +0000 (11:13 +0100)]
Merge branch 'je-silent' into next

* je-silent:
  Rename `silent' mode to `silent-rules' mode.
  `silent' mode unconditionally overrides portability-recursive.
  Drop extra line from compile rules when `silent' is not used.
  Keep `--silent-rules' across triggered automake reruns.
  Provide variables for silencing of user rules.
  Redo variable naming for `silent' machinery.
  Let -Wportability turn on/off the portability-recursive channel.
  New automake command line option `--silent-rules'.
  Documentation and tests for the `silent' option.
  Implement `silent' build rules.
  New channel `portability-recursive'.

15 years ago* NEWS: Update.
Ralf Wildenhues [Sat, 14 Mar 2009 10:02:34 +0000 (11:02 +0100)]
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recreation.
Ralf Wildenhues [Wed, 11 Mar 2009 19:36:14 +0000 (20:36 +0100)]
Fix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recreation.

* lib/am/check.am (check-TESTS): Expand `$(TEST_LOGS)' only once
in the rule command, for systems with low command line limits.
Remove $(TEST_SUITE_LOG) even in LAZY_TEST_SUITE mode.
($(TEST_SUITE_LOG)): Always recreate $(TEST_SUITE_LOG).  Mention
lazy mode in the summary output.
* tests/parallel-tests.test: Test LAZY_TEST_SUITE semantics.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix parallel-tests with empty $(TESTS) for BSD make.
Ralf Wildenhues [Tue, 10 Mar 2009 22:57:01 +0000 (23:57 +0100)]
Fix parallel-tests with empty $(TESTS) for BSD make.

* lib/am/check.am [PARALLEL_TESTS] ($(TEST_SUITE_LOG)): Ignore
empty line stemming from empty $(TEST_LOGS), to avoid counting
zero tests as one.
(check-TESTS): If `$(TESTS)' is empty, override TEST_LOGS to be
empty, rather than `.log', for BSD make.
* tests/parallel-tests6.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMark check-html and check-TESTS as recursive for BSD make.
Ralf Wildenhues [Tue, 10 Mar 2009 21:09:45 +0000 (22:09 +0100)]
Mark check-html and check-TESTS as recursive for BSD make.

* lib/am/check.am [PARALLEL_TESTS] (.MAKE): Add check-TESTS
and check-html prerequisites.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoMatch XFAIL_TESTS correctly with Solaris make.
Ralf Wildenhues [Tue, 10 Mar 2009 21:02:15 +0000 (22:02 +0100)]
Match XFAIL_TESTS correctly with Solaris make.

* lib/am/check.am [PARALLEL_TESTS]: VPATH rewriting may have
changed test names, so srcdir needs to be taken into account
explicitly when checking against the list of tests expected
to fail.  Fixes spurious FAILures from XFAIL_TESTS.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoUse append mode to capture parallel test output.
Ralf Wildenhues [Tue, 10 Mar 2009 20:33:47 +0000 (21:33 +0100)]
Use append mode to capture parallel test output.

* tests/lisp8.test: Use append mode for output from `make -j',
to avoid dropped lines.
* tests/parallel-tests3.test: Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: Fix summary output.
Ralf Wildenhues [Tue, 10 Mar 2009 20:10:25 +0000 (21:10 +0100)]
parallel-tests: Fix summary output.

* lib/am/check.am (am__text_box): Fix unportable sed script,
replacing `\n' in the right hand side of an `s' command with
a literal newline.  Kudos to Bruno Haible for the newline idea.
* tests/parallel-tests.test: Update test to expose this.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoOverhaul of tests/README.
Ralf Wildenhues [Sun, 8 Mar 2009 13:08:18 +0000 (14:08 +0100)]
Overhaul of tests/README.

* tests/README: General overhaul.  Mention parallel test suite
execution, the test-suite.log file; document `Exit' vs. `exit',
`defs' vs. `defs-p', the naming of `parallel-tests' tests.
* README: Simplify, point to tests/README.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDocumentation for the parallel-tests driver.
Ralf Wildenhues [Sun, 8 Mar 2009 13:07:37 +0000 (14:07 +0100)]
Documentation for the parallel-tests driver.

* doc/automake.texi (Tests, Options): Document the `parallel-tests'
option, including new features of the test driver.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoNew tests for `parallel-tests'.
Ralf Wildenhues [Sun, 8 Mar 2009 13:05:56 +0000 (14:05 +0100)]
New tests for `parallel-tests'.

* tests/parallel-tests.test: New file, to expose a bunch of
features of `parallel-tests': VERBOSE, clean, TEST_SUITE_LOG,
test dependencies, DISABLE_HARD_ERRORS.
* tests/parallel-tests2.test: New file, test check-html.
* tests/parallel-tests3.test: New file, test concurrency.
* tests/parallel-tests4.test: New file, test suffix rules.
* tests/parallel-tests5.test: New file, demonstrate compile/test
concurrency.
* tests/defs.in: Add a `required' check for rst2html.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoparallel-tests: Ensure backward-compatible semantics.
Ralf Wildenhues [Sun, 8 Mar 2009 13:04:38 +0000 (14:04 +0100)]
parallel-tests: Ensure backward-compatible semantics.

For each test in Automake's test suite that uses TESTS, generate
an identical one that uses the `parallel-tests' option, for
coverage of backward-compatible functionality.

* tests/gen-parallel-tests: New file, generates distributed
Makefile.am snippet tests/parallel-tests.am to list all tests
that use the TESTS interface but not yet the `parallel-tests'
option, with names mangled to use suffix `-p.test', in ...
(parallel_tests): ... this new make macro.
* tests/Makefile.am ($(srcdir)/parallel-tests.am)
($(parallel_tests), defs-p): New rules.
(TESTS): Add check11.test and $(parallel_tests).
(check_SCRIPTS): Add defs-p, $(parallel_tests).
(check-clean-local): Remove `defs-p'.
(EXTRA_DIST): Distribute gen-parallel-tests.
(MAINTAINERCLEANFILES): New variable, remove $(parallel_tests).
* bootstrap: Generate parallel-tests.am.
* tests/check8.test: Check for circular dependencies in rules.
* tests/check11.test: New test, check that SKIPs are not counted
as passed tests.
* tests/defs.in: Unset DISABLE_HARD_ERRORS, LAZY_TEST_SUITE,
VERBOSE, so the tests are not influenced by the way our test
suite is invoked.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoParallel test execution: new option `parallel-tests'.
Akim Demaille [Sun, 8 Mar 2009 10:29:03 +0000 (11:29 +0100)]
Parallel test execution: new option `parallel-tests'.

* automake.in (handle_tests): Set new conditional PARALLEL_TESTS
when reading check.am.  Handle option `parallel-tests' and all
its semantics.  Define macros TEST_EXTENSIONS, TEST_SUITE_LOG,
TEST_SUITE_HTML, TEST_LOGS, TEST_LOGS_TMP, suffix rules if
applicable, and per-target rules for other tests.  Add all log
files to %clean_files at the `MOSTLY_CLEAN' level.
* lib/Automake/Options.pm (_process_option_list): Accept
`parallel-tests'.
* lib/am/check.am [!PARALLEL_TESTS] (check-TESTS): Move existing
testsuite driver under this new conditional.
[PARALLEL_TESTS]
(am__rst_title, am__rst_section, am__text_box am__sh_e_setup)
(am__check_pre, am__check_post): New internal macros.
($(TEST_SUITE_LOG), check-TESTS, .log.html, check-html): New
rules.
* lib/am/check2.am: New file.
* lib/am/Makefile.am (dist_am_DATA): Add check2.am.
* tests/Makefile.am (AUTOMAKE_OPTIONS): Use `parallel-tests'.
(clean-local): Renamed from distclean-local.
* tests/defs.in: Drop VERBOSE handling, not needed here any more.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoIgnore warnings from autom4te about Libtool macros.
Ralf Wildenhues [Thu, 12 Mar 2009 21:03:43 +0000 (22:03 +0100)]
Ignore warnings from autom4te about Libtool macros.

* tests/ltinstloc.test: When testing for presence of warnings,
filter out any that are not interesting for this test, e.g.,
warnings about installed files or about bogusly named cache
variables in libtool.m4, emitted by recent Autoconf when older
Libtool is used.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoRename `silent' mode to `silent-rules' mode.
Ralf Wildenhues [Thu, 12 Mar 2009 06:40:20 +0000 (07:40 +0100)]
Rename `silent' mode to `silent-rules' mode.

* automake.in (define_verbose_var, verbose_flag)
(define_verbose_tagvar, handle_options, handle_languages)
(handle_configure, parse_arguments): Rename the `silent' option
to `silent-rules', so it coincides with the `--silent-rules'
command line option; adjust all code and comments.
* lib/Automake/Options.pm (_process_option_list): Likewise.
* doc/automake.texi (Invoking Automake, Libtool Flags, Options):
Likewise.
* NEWS: Adjust.
* tests/dollarvar.test, tests/silent.test, tests/silent2.test,
tests/silent3.test, tests/silent4.test, tests/silent5.test,
tests/silent6.test, tests/silent7.test: Likewise.
Suggestion by Jan Engelhardt.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years ago`silent' mode unconditionally overrides portability-recursive.
Ralf Wildenhues [Wed, 11 Mar 2009 19:53:24 +0000 (20:53 +0100)]
`silent' mode unconditionally overrides portability-recursive.

* automake.in (parse_arguments): Don't handle a global `silent'
option here; instead, ...
(handle_options): ... handle the "normal" `silent' option here.
Override `portability-recursive' here, at the last point we deal
with options, instead ...
* lib/Automake/Options.pm (_process_option_list): ... of here.
* tests/silent6.test: Replace unportable make snippet, remove
FIXME note, add more test cases of options passed in the various
locations.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoDrop extra line from compile rules when `silent' is not used.
Ralf Wildenhues [Wed, 11 Mar 2009 18:50:16 +0000 (19:50 +0100)]
Drop extra line from compile rules when `silent' is not used.

* lib/am/depend2.am [!%FASTDEP%]: Only use the `%VERBOSE%
@AM_BACKSLASH@' extra line if ?VERBOSE?.
Report by Ralf Corsepius.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoKeep `--silent-rules' across triggered automake reruns.
Ralf Wildenhues [Tue, 10 Mar 2009 21:59:00 +0000 (22:59 +0100)]
Keep `--silent-rules' across triggered automake reruns.

* automake.in (usage): Reformat to be a bit clearer.
(handle_configure): Remove substitutions %STRICTNESS% and
%USE-DEPS% in favor of a new substitution %AUTOMAKE-OPTIONS%
that carries over all needed flags.
* lib/am/configure.am (%MAKEFILE-IN%): Adjust rule.
* tests/flavor.test: New test, to ensure --$flavor (gnu,
gnits, foreign, cygnus), --ignore-deps, and --silent-rules are
preserved across automake reruns.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoRelax depcomp test for MSVC to not require minuso.
Ralf Wildenhues [Mon, 9 Mar 2009 21:06:22 +0000 (22:06 +0100)]
Relax depcomp test for MSVC to not require minuso.

* m4/depend.m4 (_AM_DEPENDENCIES): When checking the msvisualcpp
and msvcmsys depmodes, do not require `-c -o' to work just yet.
It is not needed by the depcomp script for these depmodes, and
works around the ordering issue between the tests.
Report by Peter Rosin.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoProvide variables for silencing of user rules.
Ralf Wildenhues [Mon, 9 Mar 2009 20:57:49 +0000 (21:57 +0100)]
Provide variables for silencing of user rules.

* automake.in (handle_languages): Always define `AM_V_GEN' and
`AM_V_at'.
* doc/automake.texi (Options): Document these flags.
* tests/silent7.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoRedo variable naming for `silent' machinery.
Ralf Wildenhues [Mon, 9 Mar 2009 20:45:57 +0000 (21:45 +0100)]
Redo variable naming for `silent' machinery.

The public variables are named `AM_V_' plus the compiler
short-hand now, e.g.: AM_V_CC, AM_V_CXXLD, AM_V_GEN.  The
dispatch variables are internal details and begin with
`am__v_'.

* automake.in (verbose_var): Update comment.
(verbose_private_var): New function.  Order functions so that
ones not needed outside this section are listed first.
(verbose_dispatch): Remove, no need to factor this.
(define_verbose_var, define_verbose_libtool): Use
verbose_private_var.
(define_verbose_tagvar): Likewise; and simplify.
Report by Jan Engelhardt.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoLet -Wportability turn on/off the portability-recursive channel.
Ralf Wildenhues [Mon, 9 Mar 2009 20:20:20 +0000 (21:20 +0100)]
Let -Wportability turn on/off the portability-recursive channel.

* lib/Automake/ChannelDefs.pm (switch_warning): switch
`portability-recursive' channel as well if changing the
`portability' channel.
* tests/dollarvar2.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years ago* tests/compile2.test: Fix typo.
Peter Rosin [Mon, 9 Mar 2009 15:53:11 +0000 (16:53 +0100)]
* tests/compile2.test: Fix typo.

15 years agoNew automake command line option `--silent-rules'.
Ralf Wildenhues [Sat, 7 Mar 2009 15:01:34 +0000 (16:01 +0100)]
New automake command line option `--silent-rules'.

* automake.in (parse_arguments): Accept `--silent-rules; let it
override command line warning settings.
(usage): Document it.
* doc/automake.texi (Invoking Automake): Document it.
* NEWS: Update.
* tests/dollarvar.test: Also test `--silent-rules'.
* tests/pr300-ltlib.test: Use `$MAKE V=1' to enable verbose
output, which is matched later in the test.
* tests/silent6.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>