platform/upstream/automake.git
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 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 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>
15 years agoDocumentation and tests for the `silent' option.
Ralf Wildenhues [Sat, 7 Mar 2009 14:59:24 +0000 (15:59 +0100)]
Documentation and tests for the `silent' option.

* NEWS: Update.
* doc/automake.texi (Invoking Automake): `silent' turns off some
portability warnings.
(Libtool Flags): `silent' silences libtool.
(Options): Document the `silent' flag.
* tests/dollarvar.test, tests/silent.test, tests/silent2.test,
tests/silent3.test, tests/silent4.test, tests/silent5.test: New
tests.
* tests/Makefile.am: Update.
* Makefile.am (maintainer-check): Ignore `DESTDIR' and `V' when
checking for make variables that should not be overridden from
the command line.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoImplement `silent' build rules.
Jan Engelhardt [Sat, 7 Mar 2009 14:58:07 +0000 (15:58 +0100)]
Implement `silent' build rules.

* automake.in (ccer): New field in the language structure.
Initialize it for all registered languages.
(verbose_var, verbose_flag, verbose_dispatch)
(silent_flag, define_verbose_var, define_verbose_tagvar)
(define_verbose_libtool): New functions.
(handle_languages, handle_programs, handle_libraries)
(handle_ltlibraries, handle_configure)
(define_compiler_variable, define_linker_variable)
(define_per_target_linker_variable): Use them where appropriate
to define variables to implement the silent output machinery.
* lib/Automake/Options.pm (_process_option_list): Accept
`silent', turning off `portability-recursive'.
* lib/am/depend2.am: Add %VERBOSE% and %SILENT% prefixes where
appropriate.
* lib/am/lex.am: Likewise.
* lib/am/library.am: Likewise.
* lib/am/ltlibrary.am: Likewise.
* lib/am/program.am: Likewise.
* lib/am/yacc.am: Likewise.
* m4/init.m4 (AM_INIT_AUTOMAKE): Substitute, but do not define,
AM_BACKSLASH.
* tests/defs.in: Unset `V', to avoid influencing inner tests.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoNew channel `portability-recursive'.
Ralf Wildenhues [Sat, 7 Mar 2009 14:57:22 +0000 (15:57 +0100)]
New channel `portability-recursive'.

Add new channel for portability warnings about recursive make
variable expansions `$(var1$(var2))'.  Enable it alongside
`-Wportability'.

* lib/Automake/ChannelDefs.pm (Automake::ChannelDefs): Register
channel `portability-recursive'.
* lib/Automake/Variable.pm (_VARIABLE_CHARACTERS)
(_VARIABLE_RECURSIVE_PATTERN): New variables.
(check_variable_expansions): Diagnose recursive variable
expansions through the new channel.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoImprove NetBSD 'make -n' output for many standard targets.
Ralf Wildenhues [Sat, 7 Mar 2009 09:42:34 +0000 (10:42 +0100)]
Improve NetBSD 'make -n' output for many standard targets.

* automake.in (handle_tags): Let .MAKE depend on
`tags-recursive' and `ctags-recursive' if appropriate.
(handle_all): Likewise for `all'.
(do_check_merge_target): Likewise for `check-am' and `check'.
* lib/am/ansi2knr.am (.MAKE): Depend on %ANSI2KNR-DIR%/ansi2knr.
* lib/am/install.am [%?maybe_BUILT_SOURCES%] (.MAKE): Depend on
`install'.
* tests/maken3.test, tests/maken4.test: New tests.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoImprove `make -n dist' and `make -n distcheck' for GNU make.
Ralf Wildenhues [Sat, 7 Mar 2009 08:00:19 +0000 (09:00 +0100)]
Improve `make -n dist' and `make -n distcheck' for GNU make.

Ensure that `make -n dist' and `make -n distcheck' do not change
files, due to GNU make executing rules containing `$(MAKE)'.

* lib/am/distdir.am (distdir): Separate the creation of
`$(distdir)/$$subdir' for `$(DIST_SUBDIRS)' and the recursion
into the `$(DIST_SUBDIRS)' in two separate rule commands.
(distcheck): Exit recursive rule early when run with `make -n',
as detected by a witness file.
* tests/maken.test, tests/maken2.test: New tests.
* tests/Makefile.am: Update.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoSolaris make testsuite fixes.
Ralf Wildenhues [Sat, 7 Mar 2009 06:40:06 +0000 (07:40 +0100)]
Solaris make testsuite fixes.

* tests/check10.test: When a rule fails, Solaris make will
output the complete command that failed; in this case the test
suite driver.  Adjust the test to not bogusly match lines from
the driver, rather than its output.
* tests/distcleancheck.test: Avoid triggering VPATH rewriting,
not desirable in this test.
* tests/specflg10.test: Use BUILT_SOURCES to specify an
intermediate target, so Solaris make knows what to do.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agotestsuite: SKIP compile tests if configure found no compiler.
Ralf Wildenhues [Sat, 7 Mar 2009 00:41:29 +0000 (01:41 +0100)]
testsuite: SKIP compile tests if configure found no compiler.

* tests/depend6.test: configure will exit 77 if AC_PROG_CC found
no working compiler.  Allow the test to be SKIPped in that case.
* tests/postproc.test: Likewise.
* tests/pr243.test: Likewise.
* tests/pr266.test: Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix maintainer-check fallout.
Ralf Wildenhues [Sat, 7 Mar 2009 00:27:11 +0000 (01:27 +0100)]
Fix maintainer-check fallout.

* tests/compile2.test: Use `Exit', not `exit'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoExtract correct man section from files in man_MANS.
Peter Breitenlohner [Sat, 7 Mar 2009 00:06:18 +0000 (01:06 +0100)]
Extract correct man section from files in man_MANS.

* lib/am/mans.am: Extract correct man section in the presence of
multiple dots in the file base name and/or directory components.
* tests/man5.test: New test case.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agomanual: Fix logic in AM_MAINTAINER_MODE description.
Ralf Wildenhues [Fri, 6 Mar 2009 06:34:08 +0000 (07:34 +0100)]
manual: Fix logic in AM_MAINTAINER_MODE description.

* doc/automake.texi (maintainer-mode): Fix logic in
AM_MAINTAINER_MODE description.
* THANKS: Update.
Report by Daniel Kahn Gillmor.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years ago* lib/gnupload: Change conffile name to `.gnuploadrc'.
Ralf Wildenhues [Thu, 5 Mar 2009 19:02:03 +0000 (20:02 +0100)]
* lib/gnupload: Change conffile name to `.gnuploadrc'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoReplace bare `automake' with `@command{automake}' or `Automake'.
William Pursell [Mon, 1 Dec 2008 21:06:10 +0000 (21:06 +0000)]
Replace bare `automake' with `@command{automake}' or `Automake'.

* doc/automake.texi: Avoid bare `automake' in the manual,
replacing occurrences with `@command{automake}' when the command
is meant, and `Automake' when speaking about the software
package in general.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years ago* lib/depcomp: Various portability and quoting nits.
Ralf Wildenhues [Wed, 4 Mar 2009 20:19:49 +0000 (21:19 +0100)]
* lib/depcomp: Various portability and quoting nits.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoreformat gnupload script.
Ralf Wildenhues [Wed, 4 Mar 2009 19:41:05 +0000 (20:41 +0100)]
reformat gnupload script.

* lib/gnupload: Reformat and reindent.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agognupload touchups.
Ralf Wildenhues [Wed, 4 Mar 2009 19:40:43 +0000 (20:40 +0100)]
gnupload touchups.

* lib/gnupload (conffile): New variable.  Use throughout.
(dry_run): Use `false' and `:' values.  Show, don't execute,
gpg signing commands upon --dry-run.
(usage): Typo and formatting fixes.  Mention that commands are
applied in order.
(argument loop): Factorize a bit, fix quoting.
(dprint, mkdirective, mksymlink, upload): Formatting and
portability fixes.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoVarious gnupload improvements.
Sergey Poznyakoff [Wed, 4 Mar 2009 19:39:56 +0000 (20:39 +0100)]
Various gnupload improvements.

Add support for uploading to download.gnu.org.ua.
Add support for a .gnupload configuration file.
Support creating and removing symlinks.
Allow for several operations in a single invocation.
Add debugging features.

* lib/gnupload: New options --delete, --symlink, --rmsymlink,
--symlink-regex, --dry-run; support `--' to separate options and
commands from files.  New target download.gnu.org.ua.  Expand
`.gnupload' file contents before command line arguments.
(usage): Expand.
(dprint, mkdirective, mksymlink, upload): New functions.
* THANKS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoAdd depmode=msvcmsys for Microsoft Visual C++ on MSYS.
Peter Rosin [Tue, 3 Mar 2009 21:29:12 +0000 (22:29 +0100)]
Add depmode=msvcmsys for Microsoft Visual C++ on MSYS.

* lib/depcomp [msvisualcpp]: Fork fewer processes. Filter out
libtool in the preprocessor invocation (as is done in
depmode=cpp). Silence compiler stderr.
[msvcmsys]: New depmode as a derivative of depmode=msvisualcpp.
msvcmsys transforms any backslashes into forward slashes to
make the grep in depend.m4 match, instead of the "cygpath -u"
that is used in msvisualcpp.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix w32 path handling in the `compile' script.
Ralf Wildenhues [Tue, 3 Mar 2009 20:10:43 +0000 (21:10 +0100)]
Fix w32 path handling in the `compile' script.

* lib/compile: Handle colons and backslashes in win32 paths.
* tests/compile2.test: New test.
* tests/Makefile.am: Update.
Report and initial patch by Peter Rosin.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoAdd ChangeLog for last commit
Ralf Wildenhues [Tue, 3 Mar 2009 20:03:57 +0000 (21:03 +0100)]
Add ChangeLog for last commit

15 years agoFix `use constant' usage for MSYS Perl 5.6.0.
Ralf Wildenhues [Tue, 3 Mar 2009 19:44:42 +0000 (20:44 +0100)]
Fix `use constant' usage for MSYS Perl 5.6.0.

* automake.in (QUEUE_MESSAGE, QUEUE_CONF_FILE, QUEUE_LOCATION)
(QUEUE_STRING): Define using one `use constant' each; as perl
5.6.0 (on MSYS) does not understand `use constant { ... }'.
* THANKS: Update.
Report by Peter Rosin.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix recursive html and install-* doc rules for BSD make.
Ralf Wildenhues [Sun, 1 Mar 2009 15:51:34 +0000 (16:51 +0100)]
Fix recursive html and install-* doc rules for BSD make.

* automake.in (%required_targets): Add html-am,
install-html-am, install-dvi-am, install-pdf-am, install-ps-am,
install-info-am.
* tests/txinfo32.test: New test.
* tests/Makefile.am: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix comment typo.
Ralf Wildenhues [Sun, 1 Mar 2009 15:47:45 +0000 (16:47 +0100)]
Fix comment typo.

* lib/am/distdir.am (distcheck): Fix typo in comment.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoIgnore generated files below doc/amhello for git.
Ralf Wildenhues [Sun, 1 Mar 2009 14:01:44 +0000 (15:01 +0100)]
Ignore generated files below doc/amhello for git.

* doc/amhello/.gitignore: New file.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoCross-reference `Flag Variables Ordering' from `Program variables'.
Ralf Wildenhues [Tue, 17 Feb 2009 06:29:04 +0000 (07:29 +0100)]
Cross-reference `Flag Variables Ordering' from `Program variables'.

* doc/automake.texi (Program variables): Add cross reference to
`Flag Variables Ordering' node.
Report by Karl Berry.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15 years agoFix mmodely.test to work on Solaris 10.
Ralf Wildenhues [Sat, 31 Jan 2009 09:33:00 +0000 (10:33 +0100)]
Fix mmodely.test to work on Solaris 10.

* tests/mmodely.test: Define yylex, to satisfy needed symbol in
libfl.  Return from main instead of using exit, undeclared.
* THANKS: Update.
Report by Chris Hoogendyk.

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