| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
We've been in 2014 already for few months now...
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
That implementation was only meant as a standard against which the
portable awk+shell implementation was to be measured. Now, since
Automake 1.12, the latter implementation is fully functional and
already used in the wild, and in fact feature-par with the perl
implementation. So the perl implementation is now just slowing
down and complicating our testsuite. Let's move it to 'contrib/'
(we don't want to remove it, in case someone is actually using it
in the wild).
* lib/tap-driver.pl: Move it ...
* contrib/tap-driver.pl: ... here. While at it, convert quoting
`like this' to quoting 'like this', and remove an obsolescent FIXME
comment.
* lib/Makefile.inc (dist_script_DATA): Drop '%D%/tap-driver.pl'.
* Makefile.am (EXTRA_DIST): Add 'contrib/tap-driver.pl'.
* doc/automake.texi: Remove one stray reference to 'tap-driver.pl',
and reference 'tap-driver.sh' instead, as intended.
* t/ax/am-test-lib.sh ($am_tap_implementation): Delete definition and
uses.
(fetch_tap_driver): Simplify to unconditionally assume the shell+awk
implementation of the TAP driver is used.
(get_shell_script): Make more flexible so that it can cater to the
needs of 'fetch_tap_driver()'.
* t/tap-bad-prog.tap: Likewise.
* t/tap-bailout-leading-space.sh: Likewise.
* t/tap-signal.tap: Likewise.
* t/tap-test-number-0.sh: Likewise.
* t/test-driver-cond.sh: Use 'tap-driver.sh' instead of 'tap-driver.pl'.
* gen-testsuite-part (%test_generators): Do not generate sister tests
that use the perl TAP driver rather than the shell+awk one.
* NEWS: Update.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* micro:
tests: run_make: options to do command redirection
tests: only activate 'unset' alias if required
tests: better idiom to override make macro defs on the cmdline
test-lib: minor style changes
test-lib: fix botched function name in an error message
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We now do so with a new wrapper shell function 'run_make()', which
relies on the use of AM_MAKEFLAGS, avoiding the use of the '-e' make
option. The use of that option (that causes the environment variables
to take precedence over the macro definitions in the Makefile) has
proved to be quite brittle in the past, causing annoying and sometimes
problematic spurious failures. This has worsened in some still
unpublished work going on in development branches. It's time to solve
the issue once and for all.
Note that we do not convert all uses of $MAKE in the testsuite right
away; we might do so in follow-up changes, with leisure, to avoid a
"patch bomb" effect (this commit is already too much of a bomb itself).
What we do in this commit is to get rid of all "$MAKE -e" invocations.
We admit that the implementation and feature-set of 'run_make()' are
far from perfect, but good enough for our current purposes. We'll
improve 'run_make()' if and when the need arises.
* syntax-checks.mk (sc_tests_no_make_e): New syntax check, guard against
the use of "$MAKE -e".
(syntax_check_rules): Add it.
(sc_tests_overriding_macros_on_cmdline): Adjust.
(lint): New, alias for 'maintainer-check', for lazy typists. Idea
backported from the 'maint' branch (Automake 1.13a).
* t/ax/am-test-lib.sh (run_make): New function. Run $MAKE with the
given command-line arguments, handling command-line override of variable
definitions in a smart way (using AM_MAKEFLAGS if a non-GNU make
implementation is detected to be in use).
(useless_vpath_rebuild): Adjust to use 'run_make', to avoid a spurious
maintainer check failure.
(yl_distcheck): Use 'run_make' rather than bare '$MAKE'.
(single_quote, append_single_quoted, is_valid_varname): New auxiliary
function, used, directly or indirectly, by it.
* Many tests: Adjust to avoid the use of "$MAKE -e", and prefer the
use of 'run_make' in few other contexts as well, where it makes sense.
Other minor fixlets while at it.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is convenient to do, now that we have improved "relative directory"
support with the '%reladir%' (a.k.a. '%D%') and '%canon_reladir%' (a.k.a.
'%C%') Automake-time substitutions for included makefile fragments.
This move also satisfy our philosophy of using new Automake features in
our own build system, as a way of facilitating early discovery of possible
bugs or interface warts.
* Makefile.am: Break up ...
* doc/Makefile.inc, lib/Automake/Makefile.inc, lib/Makefile.inc,
lib/am/Makefile.inc, m4/Makefile.inc, t/Makefile.inc): ... in this
new included fragments. Adjust as needed, and make deliberate use
of the '%D%' substitution.
* contrib/t/local.am: Rename ...
* contrib/t/Makefile.inc: ... like this.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
| |
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow-up to today's commit v1.12.4-22-g0610fc8,
"tests: prepare to move ./defs to t/ax/test-init.sh"
* All tests: To run the common setup, use the command:
. test-init.sh
instead of the older, "historical" one:
. ./defs || exit 1
Note that the "|| exit 1" wasn't really useful, since the 'errexit'
shell flag is in effect in both './defs' and 'test-init.sh', and all
the known shells that are good enough to run the automake testsuite
do automatically exit with error when a sourced file cannot be found
(at least, they do so in non-interactive mode, which is the only
mode that concerns us in the testsuite).
* t/ax/tap-summary-aux.sh, t/ax/testsuite-summary-checks.sh: Likewise.
* gen-testsuite-part: Do the same in the generated tests.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Related to automake bug#11287.
* contrib/t/check-html.am (.log.html): Here, passing $(AM_RST2HTMLFLAGS)
and $(RST2HTMLFLAGS) (in that order).
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Related to automake bug#11287.
* contrib/t/check-html.am (.log.html): Do not look for $RST2HTML in
the environment, looking for $(RST2HTML) should be enough (also, the
pre-existing code was broken, because it single-quoted $RST2HTML).
Fix the loop-and-search implementation to be more similar to the
one in 'contrib/t/parallel-tests-html.sh'. Prefer 'mv -f' over bare
'mv'. Do not break the recipe in
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Addresses the main part of Automake bug#11287.
* contrib/t/parallel-tests-html-recursive.sh: New test.
* contrib/t/local.am: Add it.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* t/help-multilib.sh: Move ...
* contrib/t/help-multilib.sh: .. here. Remove a now-obsolete
"FIXME" comment.
* t/multlib.sh: Move ...
* contrib/t/multilib.sh: .. here. Remove a now-obsolete
"FIXME" comment.
* t/parallel-test2.sh: Move ...
* contrib/t/parallel-tests-html.sh: .. here. Remove a
now-obsolete "FIXME" comment.
* contrib/t/local.am: New, basically defining the list of
tests for stuff in 'contrib/'.
* t/list-of-tests.mk, Makefile.am: Adjust.
* .gitignore: Update.
* syntax-checks.mk (xtests): Likewise.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recursive make-based build systems tend to be slower, more fragile
and less faithful than "flat" ones. See Peter Miller's article
"Recursive Make Considered Harmful" for more a more in-depth
discussion:
<http://miller.emu.id.au/pmiller/books/rmch/>
While in the case of automake this isn't a big problem (given the
small size of its build systems), it still creates occasional
glitches and annoyances.
With this change, the use of recursion in Automake's own build
system is eliminated *but for the testsuite*. Converting that
is a little more tricky, and better left for a later change (or
series of changes).
See also commit v1.11-769-gfeeb7f6 of 28-03-2012.
* contrib/Makefile.am, lib/Makefile.am, m4/Makefile.am,
doc/Makefile.am: Removed, their content merged ...
* Makefile.am: ... here, with required adjustments and few
other "opportunistic" changes.
(SUBDIRS): Update.
* configure.ac (AC_CONFIG_FILES): Likewise.
* .gitignore: Likewise.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This follows up on commit v1.11-665-gc5df21e of 2012-01-17,
"multilib: deprecate, will be moved to contrib". See also:
<http://lists.gnu.org/archive/html/automake-patches/2012-01/msg00109.html>
* NEWS: Update.
* automake.in ($seen_multilib): Remove.
(scan_autoconf_traces): Don't trace 'AM_ENABLE_MULTILIB', and don't
handle it anymore.
(handle_multilib): Remove.
(generate_makefile): Don't call it anymore.
* doc/automake.texi: Remove documentation about multilib support,
related macros, and helper files.
* m4/multi.m4: Delete.
* m4/Makefile.am (dist_automake_ac_DATA): Remove it.
* lib/am/multilib.am: Delete.
* lib/am/Makefile.am (dist_am_DATA): Remove it.
* contrib/multilib/multilib.am: New file, adapted from extracts of
a Makefile.in generated with automake multilib support. We did
this instead of moving and editing 'lib/am/multilib.am' because it
allows us to license this file with a liberal license that will
permit users to copy-and-paste it in non-GPLed Makefile.am files
too).
* lib/symlink-tree, lib/config-ml.in: Move ...
* contrib/multilib: ... in here.
* lib/Makefile.am (dist_script_DATA, dist_pkgvdata_DATA): Update.
* contrib/multilib/README: New file.
* contrib/Makefile.am (EXTRA_DIST): Add the files created or moved
in 'contrib/multlib'.
* tests/multilib.test: Update and enhance a little.
* tests/help-multilib.test: Likewise.
|
|\
| |
| |
| |
| |
| |
| |
| | |
* maint:
fixup: distribute 'contrib/multilib/multi.m4'
multilib: deprecate, will be moved to contrib
fixlet: flags for Fortran77 compiler are in FFLAGS, not F77FLAGS
cosmetics: fix a botched comment in a maintainer check
|
| |
| |
| |
| |
| |
| |
| | |
This fix up a blunder in commit v1.11-665-gc5df21e of 2012-01-17,
"multilib: deprecate, will be moved to contrib".
* contrib/Makefile.am (EXTRA_DIST): Add 'multilib/multi.m4'.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As of 2012-01-17, according to Google codesarch, almost no active
package is using the 'multilib' feature offered by automake.
The only major exception seems to be GCC... But on a closer look,
it become clear that GCC basically carries its own version of
multilib support. In fact, Automake syncs its 'config-ml.in' and
'symlink-tree' scripts from GCC; and the GCC repository contains a
version of the 'multi.m4' file that is *more* updated than the one
in the automake repository (the former having being modified the
last time in 2008, the latter only in 2006).
The 'multilib' feature was anyway hardly documented at all, only
being briefly cited in the manual as an "obscure feature", "still
experimental", that was only for users "familiar with multilibs"
and which "can debug problems they might encounter". We expect
such users to be motivated and knowledgeable enough to make the
minor adjustments required to start using the contrib version of
multilib, if they really need to.
* NEWS (Future backward incompatibility): Update.
* doc/automake.texi: Deprecate multilib support. State that it
will be removed from automake core in the next major release.
* m4/multi.m4 (AM_ENABLE_MULTILIB): Deprecate. If called, now
gives a proper warning in the 'obsolete' category (while still
retaining its former behaviour for the rest).
* tests/multilib.test: Update.
* contrib/multilib/multi.m4: New, verbatim copy of the earlier
version of multi.m4, without the new deprecation warning.
* Makefile.am (fetch): Don't sync the 'config-ml.in' file nor
the 'symlink-tree' script from GCC SVN repository anymore.
(FETCHFILES): Adjust.
(WGET_GCC): Remove, it's not needed anymore.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
That feature has been deprecated in the 1.11.x series, and marked
for removal from the automake core in the 1.12 release. Here we
implement such removal.
Reference:
<http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>
See also commit 'v1.11-650-g20f2ac9'.
* doc/automake.texi, NEWS: Update.
* lib/am/check.am: Don't include 'check-html.am' anymore.
* lib/am/check-html.am: Move ...
* contrib/check-html.am: ... to this, and adjust comments.
* lib/am/Makefile.am (dist_am_DATA): Update.
* contrib/Makefile.am (EXTRA_DIST): Likewise.
* tests/parallel-tests2.test: Adjust.
* tests/parallel-tests-dryrun.test: Remove checks on the
".log -> .html" conversion.
* tests/test-driver-custom-html.test: Remove as obsolete.
* tests/test-driver-custom-no-html.test: Likewise.
* tests/tap-html.test: Likewise.
* tests/list-of-tests.mk: Don't list removed tests anymore.
|
|
This new 'contrib' hierarchy will be a good place were to move
implementation/support for obsolescent features we are not yet
ready to remove completely, or were to leave experimental or
third-party features to cook before their eventual inclusion in
the automake core.
* contrib: New directory.
* contrib/README: New file.
* contrib/Makefile.am: New file.
(EXTRA_DIST): Distribute README.
|