|
8a8890a9
|
2011-05-29T11:04:08
|
|
build: the user can override AUTOM4TE, AUTORECONF and AUTOUPDATE too
Our build system allows the user to override AUTOCONF and AUTOHEADER
at configure time, and honours these overrides in our testsuite.
But it didn't do the same with AUTOM4TE, AUTORECONF and AUTOUPDATE.
This change fixes that inconsistency.
* configure.ac (am_AUTOM4TE, am_AUTOUPDATE, am_AUTORECONF): New
AC_SUBSTitutions. Update comments.
* tests/defs.in ($AUTOUPDATE): Default to `@am_AUTOUPDATE@' now.
($AUTOM4TE): New variable, defaulting to `@am_AUTOM4TE@'.
($AUTORECONF): New variable, defaulting to `@am_AUTORECONF@'.
* doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Update.
|
|
d51e7b79
|
2011-02-24T10:21:19
|
|
libtool: suggest LT_INIT if LTLIBRARIES primary is used
When the LTLIBRARIES primary was used, but $(LIBTOOL) wasn't
defined, automake suggested to add a call to AC_PROG_LIBTOOL
in configure.ac. But that macro is deprecated since Libtool
version 1.9b (2004-08-29), in favor of the newer LT_INIT. So
suggest the use of this latter macro instead.
* lib/Automake/Variable.pm (%_am_macro_for_var): Pair 'LIBTOOL'
with 'LT_INIT', not with 'AC_PROG_LIBTOOL'.
* libtool4.test: Adjust and extend. Also, add a call to macro
AC_PROG_CC in configure.in, to help ensuring that automake does
not fail for the wrong reasons.
* ltinit.test: New test, ensure that automake's libtool support
works with LT_INIT-based interface.
Thanks to Jack Kelly for the suggestion.
|
|
080efc94
|
2011-01-16T13:48:17
|
|
parallel-tests: work around Tru64/OSF 5.1 sh read bugs.
* lib/am/check.am ($(TEST_SUITE_LOG), recheck, recheck-html):
Test file readability before redirecting input from it, to avoid
exiting Tru64/OSF 5.1 sh which treats read as special builtin.
* tests/parallel-tests-unreadable-log.test: New test.
* tests/Makefile.am (TESTS): Update.
* NEWS: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
36bd4534
|
2011-01-09T19:05:07
|
|
Fix another typo in Rule.pm comment.
* lib/Automake/Rule.pm: Fix typo.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
ece3872f
|
2011-01-09T18:54:36
|
|
Fix another typo in Rule.pm comment.
* lib/Automake/Rule.pm: Fix typo.
Report by Peter Rosin.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
0d93356e
|
2011-01-09T10:53:04
|
|
Fix typos in Rule.pm comments.
* lib/Automake/Rule.pm: Fix typos in comments.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
511ccb16
|
2011-01-02T05:31:41
|
|
Bump copyright years.
* aclocal.in (write_aclocal, version): Bump copyright years.
* automake.in (gen_copyright, version): Likewise.
* doc/automake.texi: Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
15cd54c0
|
2010-11-19T20:24:28
|
|
Automake::Config: remove extra trailing semicolon.
* lib/Automake/Config.in: Remove extra trailing semicolon.
|
|
a6da48d3
|
2010-11-14T17:53:49
|
|
Fix install-strip when $(STRIP) contains several words.
* lib/am/install.am (install-strip): Update comment. Use
separate sub-make invocations for empty and nonempty $(STRIP),
to fix quoting issues.
* tests/strip2.test, tests/strip3.test: New tests.
* tests/Makefile.am (TESTS): Adjust.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
7a020d66
|
2010-11-06T12:46:52
|
|
Fix a bug in variable concatanation with `+='.
* lib/Automake/VarDef.pm (append): Remove extra backslash-escaped
newlines from the end of the variable's content, before appending
to it.
* tests/pluseq11.test: New test, exposing the bug.
* tests/Makefile.am (TESTS): Update.
Reported by Andy Wingo.
|
|
b8c1325a
|
2010-10-03T11:42:12
|
|
Document and fix expansion of variables before rules.
* doc/automake.texi (General Operation): Document that variables
are expanded before rules.
* lib/am/check.am (am__check_post): Reword a bit so it does not
get matched as a rule.
Suggestion by Ben Pfaff.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
9e126f15
|
2010-10-02T18:38:34
|
|
Merge branch 'fix-tests-empty-regression' into maint
* fix-tests-empty-regression:
Revert "parallel-tests: avoid command-line length limit issue."
|
|
614b643e
|
2010-09-26T09:21:14
|
|
Revert "parallel-tests: avoid command-line length limit issue."
This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
because it re-opened the bug fixed by v1.11-10-g218e678.
2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
parallel-tests: avoid command-line length limit issue.
* automake.in (handle_tests): New argument $makefile, new
substitution %MAKEFILE%.
(generate_makefile): Adjust.
* lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
sanitized TEST_LOGS value as makefile snippet on standard
input to $(MAKE), to avoid exceeding the command line limit on
w32 (MSYS).
* NEWS: Update.
Report by Bob Friesenhahn.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
627f0a91
|
2010-09-22T21:35:58
|
|
Perl modules: remove references to "Automake CVS repository".
* lib/Automake/Channels.pm: Update comments to refer to "Automke's
git repository" rather than to "Automake's CVS repository".
* lib/Automake/Configure_ac.pm: Likewise.
* lib/Automake/FileUtils.pm: Likewise.
* lib/Automake/Struct.pm: Likewise.
* lib/Automake/XFile.pm: Likewise.
* lib/Automake/Version.pm (=head1 DESCRIPTION): Refer to "git
branches" rather than "CVS branches".
|
|
c423cdb4
|
2010-09-22T21:26:09
|
|
Remove obsolete .cvsignore files.
* .cvsignore, doc/.cvsignore, lib/.cvsignore, lib/am/.cvsignore,
lib/Automake/.cvsignore, lib/Automake/tests/.cvsignore,
m4/.cvsignore, tests/.cvsignore: Files deleted. Even when using
savannah's CVS readonly mirror there's no way to commit back to
the real repository, so this files are not worth maintaining or
keeping around.
|
|
978dfcf5
|
2010-09-17T06:31:33
|
|
Avoid triple-space after period.
* automake.in (handle_single_transform): Avoid 3 spaces at
sentence end.
* ChangeLog.03: Likewise.
* lib/Automake/ChannelDefs.pm: Likewise.
* lib/Automake/Channels.pm (_print_message): Likewise.
* lib/Automake/Rule.pm (rule): Likewise.
* lib/Automake/Variable.pm (var): Likewise.
* lib/am/distdir.am: Likewise.
* tests/insthook.test: Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
24e3b4ee
|
2010-09-07T04:38:08
|
|
parallel-tests: avoid command-line length limit issue.
* automake.in (handle_tests): New argument $makefile, new
substitution %MAKEFILE%.
(generate_makefile): Adjust.
* lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
sanitized TEST_LOGS value as makefile snippet on standard
input to $(MAKE), to avoid exceeding the command line limit on
w32 (MSYS).
* NEWS: Update.
Report by Bob Friesenhahn.
|
|
ccb31f6a
|
2010-09-07T04:35:49
|
|
Posix 2008 requires make to set errexit.
* lib/am/check.am: Update comment.
|
|
e7aa360a
|
2010-08-06T00:40:55
|
|
Work around a nasty bug (segfault) of Solaris make.
* lib/am/check.am (recheck, recheck-html): Trim trailing spaces
from $list, to avoid triggering a nasty bug (potential segfault)
on Solaris make.
|
|
9b72d668
|
2010-06-26T22:10:21
|
|
Update program --help output to match current GCS.
* configure.ac: Set and substitute PACKAGE_URL if AC_PACKAGE_URL
is not defined, for compatibility to Autoconf < 2.64.
* Makefile.am (do_subst): Substitute PACKAGE_BUGREPORT and
PACKAGE_URL.
(sc_diff_automake_in_automake): Update number of diff lines for
additional substitutions.
* aclocal.in (usage): Use PACKAGE_BUGREPORT. Point to Automake
home page and GNU general help page.
* automake.in (usage): Likewise.
* doc/automake.texi: New flag PACKAGE_BUGREPORT, to factor email
address.
(Introduction, Creating amhello, amhello Explained, Options):
Use it throughout.
* lib/Automake/Makefile.am (do_subst): Substitute
PACKAGE_BUGREPORT.
* lib/Automake/Config.in ($PACKAGE_BUGREPORT): New global.
* lib/Automake/ChannelDefs.pm: Use it for footer of fatal
messages.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
53ac1719
|
2010-04-20T07:43:59
|
|
Fix -Werror handling for presence of configure.in and configure.ac.
* lib/Automake/Variable.pm (Automake::Variable): Do not initialize
$configure_ac at the global level, before command-line arguments
have been parsed.
(require_variables): Initialize it here.
* tests/configure.test: New test.
* tests/Makefile.am: Update.
Report by Stefano Lattarini.
|
|
74be0c27
|
2010-04-17T15:40:35
|
|
Fix typo in POD documentation of Automake::Channels.
* lib/Automake/Channels.pm: Fixed typo in POD documentation:
@<...> was used instead of C<...>.
|
|
b3d9df07
|
2010-04-11T19:56:21
|
|
Fix per-Makefile.am setting of -Werror.
Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one
Makefile.am would carry over to other Makefile.am files
treated afterwards by the same thread, causing inconsistent
and unstable exit status values.
* lib/Automake/Channels.pm (dup_channel_setup)
(drop_channel_setup): Save and restore the setting of
$warnings_are_errors.
* tests/werror3.test: New test.
* tests/Makefile.am: Adjust.
* NEWS: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
18546c2c
|
2010-03-06T09:14:06
|
|
Formatting cleanups in macro comments.
* automake.in, lib/Automake/Channels.pm,
lib/Automake/FileUtils.pm, lib/Automake/Options.pm,
lib/Automake/Variable.pm, lib/Automake/XFile.pm,
m4/options.m4, m4/substnot.m4: Fix macro comment format.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
dbfabdfc
|
2010-01-30T22:21:19
|
|
Fix exit status of signal handlers in shell scripts.
The value of `$?' on entrance to signal handlers in shell scripts
cannot be relied upon, so set the exit code explicitly to
128 + SIG<SIGNAL>.
* lib/am/check.am (am__check_pre): Use `exit 143' in signal handler.
* lib/elisp-comp: Likewise.
* lib/install-sh: Likewise.
* lib/ylwrap: Likewise. Also, fix script to trap signal 13, not 3.
* NEWS, THANKS: Update.
Bug report, analysis, and initial patch by Dmitry V. Levin.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
72c9d14d
|
2010-01-17T12:08:19
|
|
Bump copyright years.
* aclocal.in (write_aclocal, version): Bump copyright years.
* automake.in (gen_copyright, version): Likewise.
* doc/automake.texi: Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
f1175f85
|
2009-12-29T19:42:41
|
|
Fix and complete copyright notices in Makefile.am files.
* Makefile.am: Use single-`#' comment for copyright notice, so
that it also appears in the generated Makefile.in file.
* doc/Makefile.am: Likewise.
* doc/amhello/Makefile.am: Likewise.
* doc/amhello/src/Makefile.am: Likewise.
* lib/Automake/Makefile.am: Likewise.
* lib/Automake/tests/Makefile.am: Likewise.
* lib/Makefile.am: Likewise.
* lib/am/Makefile.am: Likewise.
* m4/Makefile.am: Likewise.
* tests/Makefile.am: Add copyright notice.
Report of missing copyright notice by Stefano Lattarini.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
375912c4
|
2009-11-29T20:35:03
|
|
avoid a warning from perl-5.11
* lib/Automake/Wrap.pm (_tab_length): Remove useless use of tr's
"/d" modifier.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
e58e5b45
|
2009-10-31T17:47:58
|
|
Don't let an envvar setting of "$fail" cause build failure.
Without this change, in a project using an automake-generated
Makefile, "make fail=anything" would fail inappropriately,
due to the `test -z "$$fail"' at the end of this emitted rule:
* lib/am/subdirs.am ($(RECURSIVE_TARGETS)): Initialize "fail=" to keep
an envvar setting of that variable from causing unwarranted failure.
($(RECURSIVE_CLEAN_TARGETS)): Likewise.
* tests/subdir10.test: New test.
* tests/Makefile.am: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
c2594bb5
|
2009-10-11T13:33:43
|
|
Allow variable override of, rather than by, silent variables.
When overriding variables, check the VAR_SILENT status of the
old condition, not the new one: we allow non-silent overrides
of silent variables (these do not hit ordering bugs in the
automake output), but there is no use case for doing so the
other way round. Fixes conditional overrides of variables
annotated AM_SUBST_NOTMAKE in configure.ac.
* lib/Automake/Variable.pm (_check_ambiguous_condition): Check
for VAR_SILENT in $ambig_cond not $cond.
* tests/cond44.test, tests/cond45.test: New tests, analogous to
cond23.test and cond24.test.
* tests/Makefile.am: Update.
Spotted originally in binutils/bfd.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
734beb43
|
2009-10-11T13:28:31
|
|
Fix `make clean check' for the Automake package.
* lib/Automake/Makefile.am (SUBDIRS): Add `.' before `tests',
so that Config.pm is built first.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
f6b3f7fb
|
2009-09-06T13:06:32
|
|
Avoid sleeping for one second most of the time in sanity check.
* m4/sanity.m4 (AM_SANITY_CHECK): Try sanity check first without
sleeping for a second, and only if that failed, sleep and try
again, to avoid the delay in the common case of a configure
script that is older than a second, or a system with sub-second
time stamp granularity.
Report and different patch by Jim Meyering.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
218e678b
|
2009-05-24T09:03:00
|
|
parallel-tests: avoid GNU make 3.80 substitution bug.
* lib/am/check.am [PARALLEL_TESTS] (check-TESTS): Remove any
`.log' entries from `$(TEST_LOGS)' even if the list is nonempty,
to work around GNU make 3.80 substitution reference issue with
trailing white space in the variable.
* tests/parallel-tests10.test: New test.
* tests/parallel-tests6.test: Update comment.
* tests/Makefile.am: Update.
* NEWS: Update.
Report by Bob Friesenhahn.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
32e88686
|
2009-05-23T22:06:07
|
|
Clarify how to enable `silent-rules' and other global options.
* doc/automake.texi (Options): When introducing options, be more
careful to note that not all of them can be specified in
AUTOMAKE_OPTIONS statements, and that some do not make sense in
subdirectories. Note more prominently that `silent-rules' can
only be specified in configure.ac.
* lib/Automake/Options.pm (_process_option_list): Improve error
message for `silent-rules', `tar-v7', `tar-ustar', `tar-pax'
options specified in Makefile.am files.
Report by Bruno Haible.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
2505a3e3
|
2009-05-17T16:25:01
|
|
Version 1.11.
* configure.ac: Bump version to 1.11.
* doc/automake.texi (Releases): Add line for 1.11. Remove line
for 1.10b.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
fcf2f560
|
2009-05-17T15:32:40
|
|
Revert Automake license to GPLv2+.
Automake will move to GPLv3+ once the Exception statement has
been rewritten to use the new GPLv3 exception language. This
change does not impact the COPYING file that may be installed
by `automake --add-missing'.
* COPYING: Revert to GPLv2. All uses changed.
* NEWS: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
553f13a3
|
2009-05-03T09:47:58
|
|
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>
|
|
9fe82598
|
2009-05-03T09:32:44
|
|
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>
|
|
3ebd4b8c
|
2009-04-25T10:48:11
|
|
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>
|
|
68ce3ae9
|
2009-04-25T10:43:09
|
|
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>
|
|
e33f5550
|
2009-04-19T12:46:36
|
|
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>
|
|
ef895abc
|
2009-04-19T08:50:46
|
|
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.
...
|
|
2c74a340
|
2009-04-13T23:17:39
|
|
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>
|
|
610e9c06
|
2009-04-10T16:25:05
|
|
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>
|
|
babf1633
|
2009-04-10T13:31:28
|
|
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>
|
|
79f2c3e2
|
2009-04-10T13:26:16
|
|
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>
|
|
fcf4d469
|
2009-04-06T22:02:58
|
|
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>
|
|
68b7dc1d
|
2009-04-06T07:03:16
|
|
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>
|
|
80853982
|
2009-04-04T12:14:14
|
|
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>
|
|
72bae12c
|
2009-03-31T00:54:04
|
|
Post-release version bump.
* configure.ac, NEWS: Bump version to 1.10c.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
dd363d92
|
2009-03-29T23:23:16
|
|
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>
|
|
b6bcc69d
|
2009-03-29T01:23:30
|
|
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>
|
|
1c503be3
|
2009-03-29T01:21:01
|
|
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.
|
|
83b03f37
|
2009-03-29T01:17:51
|
|
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>
|
|
fe936f64
|
2009-03-29T00:59:46
|
|
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>
|
|
8f33eec4
|
2009-03-28T22:58:34
|
|
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>
|
|
c4e28424
|
2009-03-28T22:52:22
|
|
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>
|
|
868fb045
|
2009-03-28T21:01:43
|
|
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>
|
|
66c2dcaa
|
2009-03-11T23:55:26
|
|
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>
|
|
9bfd7e89
|
2009-03-28T18:04:48
|
|
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>
|
|
3a12ed5e
|
2009-03-22T10:11:14
|
|
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>
|
|
9003cc9b
|
2009-03-22T09:53:19
|
|
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>
|
|
d4cc23b0
|
2009-03-14T11:14:38
|
|
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'.
|
|
9aa1e525
|
2009-03-08T11:29:03
|
|
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>
|
|
26147eac
|
2009-03-12T07:40:20
|
|
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>
|
|
64942dde
|
2009-03-11T20:53:24
|
|
`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>
|
|
c65e0662
|
2009-03-10T22:59:00
|
|
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>
|
|
19e0c0ae
|
2009-03-09T21:20:20
|
|
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>
|
|
e0bd4af1
|
2009-03-07T15:58:07
|
|
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>
|
|
eb3d397f
|
2009-03-07T15:57:22
|
|
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>
|
|
a88a2a27
|
2009-03-07T10:42:34
|
|
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>
|
|
31a0b6b5
|
2009-03-07T09:00:19
|
|
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>
|
|
d22169ba
|
2009-03-01T16:51:34
|
|
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>
|
|
b74717c0
|
2009-01-20T20:58:48
|
|
Bump copyright years.
* aclocal.in (write_aclocal, version): Bump copyright years.
* automake.in (gen_copyright, version): Likewise.
* doc/automake.texi: Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
e9a942a1
|
2008-11-27T21:46:36
|
|
Cope with whitespace in $MISSING and $install_sh.
* configure.ac (am_AUTOHEADER): New substitution, save the value
of $AUTOHEADER before AM_INIT_AUTOMAKE may add $MISSING.
* tests/defs.in: Use am_AUTOHEADER.
* lib/am/install.am: Fix typo.
* m4/install-sh.m4 (AM_PROG_INSTALL_SH): Add suitable
single-quote quoting to install_sh, but only if needed.
* m4/missing.m4 (AM_MISSING_HAS_RUN): Add suitable double-quote
quoting to MISSING, but only if needed.
* m4/sanity.m4 (AM_SANITY_CHECK): Abort configure if `pwd` or
$srcdir contain shell meta-characters that cannot be handled;
space and tab are allowed in the former only.
* tests/sanity.test: New test.
* tests/Makefile.am: Adjust.
* NEWS: Update.
Reports by Jim Meyering and others.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
7e2cfbf0
|
2008-11-22T12:02:36
|
|
Add xz compression support.
* NEWS: Mention xz, as well as lzma (xz will displace lzma).
* automake.in (handle_dist): Recognize dist-xz.
(make_paragraphs): Map XZ to dist-xz.
* doc/automake.texi (Dist): Add dist-xz.
(Options): Likewise.
* lib/Automake/Options.pm (_process_option_list): Accept
dist-xz.
* lib/am/distdir.am (dist-xz): New rule.
(dist dist-all): Add command to create an xz-compressed tarball.
(distcheck): Handle xz-compressed tarballs just like the others.
* tests/xz.test: New file, based on nogzip.test.
* tests/Makefile.am (TESTS): Add xz.test.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
bb9dfbde
|
2008-11-06T21:06:01
|
|
Cope with absent Perl modules threads and Thread::Queue.
* automake.in: Instead of `use threads', use `require threads;
import threads' inside a BEGIN section. Likewise for
Thread::Queue.
* lib/Automake/ChannelDefs.pm (Automake::ChannelDefs): Likewise.
* lib/Automake/tests/Condition-t.pl: Likewise.
* lib/Automake/tests/DisjConditions-t.pl: Likewise.
* configure.ac: Likewise, use `require' and `import'.
Report by Eric Blake, fix suggested by Ben Pfaff.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
be6de492
|
2008-10-26T20:38:06
|
|
Implement serialization for Locations.
* lib/Automake/Location.pm (serialize, deserialize): New
functions. They allows to serialize a Location in an array, and
to restore a Location from a thread queue. The API is
unsymmetric (array vs. queue) because enqueuing data needs to
happen atomically.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
3fd0df9b
|
2008-10-26T20:11:12
|
|
Parallel automake: ordered output messages.
* lib/Automake/Channels.pm (%_default_options): New options
`ordered' default enabled, `queue', default zero (no queue),
`queue_key' default undefined.
(_merge_options): Ensure `ordered' channels cannot have fatal
messages or backtrace output.
(_enqueue, _dequeue): New functions, to push messages onto a
Thread::Queue, and output messages from such a queue, suitably
weeded for duplicates in the same manner as _print_message.
(_print_message): If the channel is ordered and has an
associated queue, then enqueue messages instead of printing
them.
(setup_channel_queue, pop_channel_queue): New functions,
to set a Thread::Queue for channels, and to flush a queue.
* lib/Automake/ChannelDefs.pm: Unset channel option `ordered'
for fatal, automake, and verb channels.
* automake.in (QUEUE_MESSAGE): New global constant, used as
serialization key.
(handle_makefiles_threaded): Create message queues for each
input file; workers queue messages, and the master outputs them
ordered, using the new Channels.pm functions.
* tests/parallel-am.test: Also check for ordered output (in the
absence of --add-missing races).
* tests/parallel-am2.test: New test; check for ordered output of
warning and (regular) error messages.
* tests/Makefile.am: Adjust.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
937775c8
|
2008-10-26T19:29:25
|
|
Parallel automake execution: AUTOMAKE_JOBS.
* lib/Automake/Config.in (perl_threads): New global.
* automake.in: Use it. If the perl supports interpreter-based
threading, then use `threads' and `Thread::Queue'.
(handle_makefile, handle_makefiles_serial): New functions,
factored out from main.
(get_number_of_threads): New function, compute number of threads
to use, based on environment variable `AUTOMAKE_JOBS' and number
of independent makefiles.
(handle_makefiles_threaded): New function. Spawn threads, use
thread queue to distribute handling the different makefiles.
Collect $exit_code values from threads.
(main): Use new functions.
* aclocal.in: No threads here.
* configure.ac: Substitute PERL_THREADS; enabled with perl >=
5.7.2 and when ithreads are available.
* bootstrap (dosubst): Likewise.
* Makefile.am (do_subst): Likewise.
* lib/Automake/Makefile.am (do_subst): Likewise.
* lib/Automake/ChannelDefs.pm: Use `Automake::Config' and
`threads'.
(verb): Prepend thread ID (tid) to verbose messages.
* lib/Automake/Channels.pm (msg): Before exiting, flush stderr,
needed for worker threads.
* lib/Automake/tests/Makefile.am (TESTS_ENVIRONMENT): Also
include the build tree path, so Config.pm is found.
* tests/parallel-am.test: New test.
* tests/Makefile.am: Update.
* doc/automake.texi (Invoking Automake): Document AUTOMAKE_JOBS.
* NEWS, THANKS: Update.
Report about long execution times by Joakim Tjernlund and others.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
2b85923e
|
2008-10-26T18:50:17
|
|
Minor file checking optimization: set_dir_cache_file.
* lib/Automake/FileUtils.pm (set_dir_cache_file): New function.
* automake.in (require_file_internal): Instead of resetting the
cache when a file has been installed, simply correct the cache
using set_dir_cache_file.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
fe385087
|
2008-10-26T16:29:54
|
|
No uniquifying for fatal, prog_error, and verbose messages.
There is no point in dropping critical messages, even if they
are duplicates (unlikely to happen unless they have been sent
as non-critical messages before), and verbose messages should
enable to show progress, even using duplicate statements.
* lib/Automake/ChannelDefs.pm (fatal, automake, verb): Set
`uniq_part' to `UP_NONE' when registering these channels.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
78ed7740
|
2008-10-22T21:59:02
|
|
Drop unused variable.
* lib/Automake/Channels.pm (@chain): Drop unused variable.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
c15d9a8e
|
2008-10-19T19:54:12
|
|
Fix DisjConditions module to be thread-safe for perl >= 5.7.2.
Self-hashes of blessed references are not correctly transported
through thread creation. This patch fixes that by recreating
the hashes upon thread creation with a CLONE special subroutine,
which is automatically invoked by new enough Perl versions.
* lib/Automake/DisjConditions.pm (CLONE): New special
subroutine to fix self hashes upon thread creation.
* lib/Automake/tests/Condition-t.pl: New, sister test to
Condition.pl, but spawns a new threads after each creation of a
new condition; skip test if perl is too old or ithreads are not
available.
* lib/Automake/tests/DisjConditions-t.pl: Likewise.
* lib/Automake/tests/Makefile.am (TESTS): Add them.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
b6af2140
|
2008-10-18T11:09:14
|
|
Fix comment typos.
* automake.in (require_file_internal): Fix typos in comments.
* m4/amversion.in: Likewise.
* lib/Automake/Variable.pm: Likewise.
* lib/Automake/XFile.pm: Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
9c0bda62
|
2008-10-12T22:22:39
|
|
Nicer 'make dist' output.
* lib/am/distdir.am (distdir): Hide the complex script
used for computing the relative subdirs; echo the sub-make
command.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
8f126edc
|
2008-10-12T21:51:18
|
|
Fix grammar w.r.t. plurals in test reports.
* lib/am/check.am: Fix singular/plural forms in test reports.
* tests/check10.test: New test.
* tests/Makefile.am: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
2205fc65
|
2008-10-05T21:15:25
|
|
Fix some comment typos.
* automake.in: Fix some comment typos.
* lib/Automake/Condition.pm: Likewise.
* lib/Automake/DisjConditions.pm: Likewise.
* lib/Automake/Variable.pm: Likewise.
* lib/Automake/tests/DisjConditions.pl: Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
4792c5df
|
2008-09-20T17:33:29
|
|
Remove unneeded per-rule *INSTALL variables.
* NEWS: Update.
* lib/am/data.am (%DIR%%PRIMARY%_INSTALL): Remove.
(install-%DIR%%PRIMARY%): Adjust.
* lib/am/libs.am (%DIR%LIBRARIES_INSTALL): Remove.
(install-%DIR%LIBRARIES): Adjust.
* lib/am/ltlibs.am (%DIR%LTLIBRARIES_INSTALL): Remove.
(install-%DIR%LTLIBRARIES): Adjust.
* lib/am/progs.am (%DIR%PROGRAMS_INSTALL): Remove.
(install-%DIR%PROGRAMS): Adjust.
* lib/am/python.am (%DIR%PYTHON_INSTALL): Remove.
(install-%DIR%PYTHON): Adjust.
* lib/am/scripts.am (%DIR%SCRIPT_INSTALL): Remove.
(install-%DIR%SCRIPTS): Adjust.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
e3209619
|
2008-09-20T11:42:31
|
|
Man pages for automake and aclocal.
* configure.ac (HELP2MAN): New substitution.
* doc/Makefile.am (dist_man1_MANS, MAINTAINERCLEANFILES)
(update_mans): New macros.
($(srcdir)/aclocal-$(APIVERSION).1)
($(srcdir)/automake-$(APIVERSION).1): New rules, generate
man pages from the command line help with help2man.
($(srcdir)/aclocal.1, $(srcdir)/automake.1): New rules, for
`.so' man page links to the versioned pages.
* NEWS: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
7c02797d
|
2008-09-07T09:25:02
|
|
Faster `make uninstall'; fast install for JAVA.
* lib/am/inst-vars.am (am__nobase_strip_setup)
(am__nobase_strip): New macros.
(am__nobase_list): Factorize.
* lib/am/data.am (uninstall-%DIR%%PRIMARY%): Use them, for a
constant number of forks per uninstall.
* lib/am/libs.am (uninstall-%DIR%LIBRARIES): Likewise.
* lib/am/lisp.am (uninstall-%DIR%LISP): Likewise.
* lib/am/progs.am (uninstall-%DIR%PROGRAMS): Fast uninstall.
* lib/am/python.am (uninstall-%DIR%PYTHON): Fast uninstall.
Echo all `rm' commands that are are executed.
* lib/am/java.am (install-%DIR%JAVA, uninstall-%DIR%JAVA):
Fast install and uninstall.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
196abe9a
|
2008-09-07T00:43:38
|
|
Exit upon `install' failure, part one.
* lib/am/data.am (install-%DIR%%PRIMARY%): Exit if any install
command fails.
* lib/am/python.am (install-%DIR%PYTHON): Likewise.
* lib/am/scripts.am (install-%DIR%SCRIPTS): Likewise.
* lib/am/texinfos.am (install-dvi-am, install-html-am)
(install-info-am:, install-pdf-am): Likewise.
* tests/instmany.test: New test, for SCRIPTS, DATA, and HEADERS.
* tests/instmany-python.test: New test, for PYTHON.
* tests/Makefile.am: Adjust.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
92a09f69
|
2008-09-06T23:40:34
|
|
Fix multi-file installation for files in srcdir.
For files that can live in the build tree or the source tree,
we have to expect that prepending `$(srcdir)/' to each name
will let the install command line exceed length limitations.
Thus use a new macro, $(am__base_list), to install in chunks
of 40 files, similar to what we do for nobase_* files. There,
lower the limit to 40, too.
* lib/am/inst-vars.am (am__install_max): Lower to 40.
(am__base_list): New macro.
* lib/am/data.am (install-%DIR%%PRIMARY%) [%?BASE%]: Use it.
* lib/am/texinfos.am (install-dvi-am, install-html-am)
(install-info-am, install-pdf-am, install-ps-am): Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
1fb0f1ce
|
2008-09-04T22:04:37
|
|
For all possibly-relative subdirs, use $(am__cd).
Up to now, $(am__cd) was only used within backquotes, to avoid
extraneous output. This patch also uses it for every `cd' to a
relative subdir, to prevent CDPATH from entering an unwanted
directory.
* Makefile.am (maintainer-check): Fix current check for
$(am__cd) within backquotes a bit. Add new check for `cd' to a
relative subdir.
* automake.in (handle_tags, handle_configure): Adjust rules.
* lib/am/ansi2knr.am: Likewise.
* lib/am/configure.am: Likewise.
* lib/am/distdir.am: Likewise.
* lib/am/remake-hdr.am: Likewise.
* lib/am/subdirs.am: Likewise.
* lib/am/tags.am: Likewise.
* lib/am/texibuild.am: Likewise.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
7456aefd
|
2008-08-22T13:19:04
|
|
Fix rebuilding of removed subdir/Makefile.in files.
* lib/am/configure.am (%MAKEFILE-IN%) [?!TOPDIR_P?]: If
subdir/Makefile.in was removed, am--refresh would not update
it. Fix up for it by running the per-directory rebuild rule.
* tests/remake6.test, tests/remake6.test: New tests.
* tests/Makefile.am: Adjust.
* NEWS, THANKS: Update.
Report and initial patch by Ilya N. Golubev.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
24abcf7f
|
2008-06-18T00:19:16
|
|
New variable am__install_max.
* lib/am/inst-vars.am (am__install_max): New variable.
(am__nobase_list): Use it.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
30105086
|
2008-06-18T00:11:36
|
|
For AC_CONFIG_LINKS(X,X), do not clean X in a non-VPATH build.
* automake.in (rewrite_inputs_into_dependencies): Do distribute
inputs where input and output name are equal. This relies on
the assumption that it only happens with AC_CONFIG_LINKS.
(handle_configure) <CONFIG_CLEAN_VPATH_FILES>: New variable, for
links where source and dest are equal.
* lib/am/clean.am (distclean-generic): Remove, if build tree not
equal source tree.
* tests/conflnk4.test: New test.
* tests/Makefile.am: Adjust.
* NEWS: Update.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
ab4f8d32
|
2008-03-17T06:49:44
|
|
New function xsystem_hint, for autoreconf.
* lib/Autom4te/FileUtils.pm (handle_exec_errors): New argument
$hint, show if the executing program does not exist.
(xsystem_hint): New function, like xsystem but allows to pass
a hint.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
2139f25b
|
2008-03-08T13:58:18
|
|
Exploit `install' with multiple files at once for some file types.
With nobase targets, at most 50 files are installed at once,
to avoid quadratic string concatenation and line length limits.
This isn't yet done with base targets. One hope is that there,
the typical file name length is lower. If this turns out to be
a problem, it should be revisited.
* lib/am/inst-vars.am (am__nobase_list): New helper macro for
installation of multiple nobase files at once: sorts and lists
files keyed by their target directory.
* lib/am/data.am (%DIR%%PRIMARY%_INSTALL): No need to set it to
$(install_sh_DATA) any more, not even for nobase targets.
(install-%DIR%%PRIMARY%): Split base and nobase cases.
Rewrite to pass lists of files which all go in the same
directory to `install'. In the nobase case, make use of
$(am__nobase_list) and $(MKDIR_P) each directory before
populating it. Take care of files in source and build trees,
and avoid creating directories where no files are to be
installed.
* lib/am/libs.am (%DIR%LIBRARIES_INSTALL): Likewise.
(install-%DIR%LIBRARIES): Likewise.
* lib/am/python.am (%DIR%PYTHON_INSTALL): Likewise.
(install-%DIR%PYTHON): Likewise. Also take care to keep note of
a list for byte compilation after installation.
* lib/am/texinfos.am (install-dvi-am, install-html-am)
(install-info-am, install-pdf-am, install-ps-am): Use file lists
to install multiple files at once.
* NEWS: Update.
Suggested by Akim Demaille.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
8aad9804
|
2008-03-08T13:35:05
|
|
Require unreleased Autoconf for fixed AC_PROG_INSTALL.
* m4/init.m4 (AM_INIT_AUTOMAKE): Bump AC_PREREQ to 2.61-341,
regenerate files.
* configure.ac: Also require Autoconf 2.61-341, to catch
failure early and provide a sensible error message.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|