kc3-lang/automake

Branch :


Log

Author Commit Date CI Message
85d41431 2012-02-16 11:52:55 fixup: display captured make stdout in 'tap-signal.tap'
ab42f4a4 2012-02-16 11:31:55 tests: avoid spurious failure in 'suffix3.tap' * tests/suffix3.tap (foo.zoo): This C++ file fails to compile with older g++ (3.4.4) on Cygwin 1.5.25 if we #include <iostream>. Don't do that, since it's not strictly required, and the "using namespace" directive is already enough to ensure the file contents is valid C++ but invalid C.
22b28b63 2012-02-16 11:09:50 docs: fix typo in description of AM_YFLAGS Report by Akim Demaille. * doc/automake.texi (Program variables): Don't list "-d -t" twice in the examples of valid ways to specify the '-d' flag to Yacc; instead, use "-d -t" and "-t -d". Add missing period.
a0be1837 2012-02-16 11:04:50 tests: another spurious failure with older autoconf fixed * tests/aclocal8.test (configure.in): Also call 'AC_INIT', it's required by some older autoconf versions (e.g., 2.63). * tests/acloca15.test: Likewise. Add trailing ':' command since we are at it.
ba5a89be 2012-02-16 10:58:03 tests: fix spurious failure with older autoconf * tests/conffile-leading-dot.test: Relax grepping of 'config.status' stderr, to cater for older autoconf. Issue revealed by a failure with autoconf 2.63 on Cygwin 1.5.25.
acde2706 2012-02-16 10:51:23 maint: sync auxiliary files from upstream * lib/texinfo.tex: Synced from upstream, by "make fetch". * lib/config.guess: Likewise. * lib/config.sub: Likewise.
641a5a4b 2012-02-16 10:46:23 maint: run "make update-copyright"
0313d37b 2012-02-16 10:42:38 maint: add some missing copyright notices * tests/ChangeLog-old: Add copyright notice. * tests/aclocal.in: Likewise. * tests/automake.in: Likewise. * tests/extract-testsuite-summary: Likewise. * tests/prove-runner: Likewise.
957b7200 2012-02-16 10:35:19 Merge branch 'maint' * maint: update-copyright: don't touch files synced from external packages
db5ddc2b 2012-02-16 10:33:30 update-copyright: don't touch files synced from external packages * Makefile.am (update-copyright): Do not update copyright years of files synced from external packages, as given by the '$(FETCHFILES)' variable. Silence the recipe since we are at it.
355e607b 2012-02-16 10:09:48 Merge branch 'extra-dist-tests-ksh-bug' * extra-dist-tests-ksh-bug: tests: fix spurious failure when testing wildcards in EXTRA_DIST
9179b6d0 2012-02-16 10:05:35 tests: fix spurious failure when testing wildcards in EXTRA_DIST * tests/extra10.test: Remove the "make distcheck" call, since, at least with GNU make 3.82, it trips on the fact that $(srcdir) is not explicitly used in the wildcard in EXTRA_DIST.
e05e1bed 2012-02-15 19:32:07 Merge branch 'maint' * maint: fixup: distribute 'lib/update-copyright'
8dd50099 2012-02-15 19:00:10 fixup: distribute 'lib/update-copyright' While the 'update-copyright' script shouldn't be needed by final users, that's not a good reason to keep it out by the distribution, as doing so might be unhelpful toward occasional but curious users interested in peeking into the automake build system. * lib/Makefile.am (EXTRA_DIST): Distribute 'update-copyright'.
7726b2e9 2012-02-15 18:47:15 maint: prefer $(GIT) over hard-coded "git" in maintainer recipes * Makefile.am (update-copyright, autodiffs): Use '$(GIT)' instead of hard-coding 'git'.
fd0ca827 2012-02-15 18:40:06 Merge branch 'maint' * maint: maint: add a rule to use gnulib's update-copyright
8f41580e 2012-02-15 18:31:33 Merge branch 'extra-dist-tests-ksh-bug' * extra-dist-tests-ksh-bug: tests: avoid ksh bug for wildcards in EXTRA_DIST
f4d2f3b7 2012-02-15 18:29:57 Merge branch 'yl-work-for-master' * yl-work-for-master: (44 commits) tests: truly use Lex and Yacc selected by configure news: fix grammaros related to Yacc yacc/lex tests: avoid spurious skips with non-GNU make fixup: remove double news entry tests: workaround for shells with broken 'set -e' tests: avoid spurious failure with non-bison yacc tests: fix spurious failures due to missing 'yywrap()' function fixup: list of yacc/lex tests was botched tests: work around bug#7884 in many yacc/lex tests yacc/lex tests: remove an unneeded workaround for bug#8485 yacc/lex tests: avoid too much failures with FreeBSD make yacc-dist-nobuild.test: add reference to bug#7884 yacc tests: fix bug in 'yacc-cxx.test' lex tests: fix spurious link errors on Solaris lex: "make clean" removes .c files from non-distributed .l lex tests: make test on Lex dependency tracking more "semantic" lex tests: remove erroneous check about ylwrap distribution yacc tests: "make clean" removes C++ files from non-distributed .y tests: add a workaround for automake bug#8485 tests: add a couple of inter-tests reference ...
de839e5b 2012-02-15 10:16:36 cscope: is only expected to work with GNU make in VPATH setup The 'cscope' functionality does not properly handle VPATH rewrites; so we explicitly document that, for now, it is only ensured to work with GNU make when doing a VPATH build, and we adjust testsuite requirements accordingly. Issue revealed by a failure of 'cscope.test' with Solaris 10 CCS make. * doc/automake.texi (Tags): Document the limitations of the cscope support. Couple of fixlets to formatting since we are at it. * tests/cscope.test: Converted to TAP, and thus moved ... * tests/cscope.tap: ... here. Only run tests with VPATH builds when using GNU make. Adjust so that no C, C++, Fortran or Java compiler, nor any Emacs program, will be required to run this test. * tests/list-of-tests.mk: Adjust.
43b8af82 2012-02-12 16:57:42 maint: add a rule to use gnulib's update-copyright * lib/update-copyright: New file, from gnulib. * Makefile.am (FETCHFILES): Add update-copyright to the list. (fetch): Fetch it. (update-copyright): New rule.
7604b2ee 2012-02-14 21:30:56 Merge branch 'doc-no-history' * doc-no-history: docs: move chapter on automake history out of main manual
b2c1adfe 2012-02-14 21:23:04 check: fix test-suite.log formatting with NetBSD sed * lib/am/check.am (am__rst_section): Tweak to ensure en extra final newline is printed also with NetBSD sed. Issue revealed by a failure of 'test-metadata-global-result.test'. * tests/rst-formatting.test: New test, checking the internal variables '$(am__rst_title)' and '$(am__rst_section)'. * tests/list-of-tests.mk: Add it.
02ce5d5a 2012-02-14 19:26:29 tests: avoid ksh bug for wildcards in EXTRA_DIST Some shells, like NetBSD 5.1 /bin/ksh, have a bug that causes wildcards resulting from an unquoted parameter expansion not to be expanded as expected in some cases: $ touch a b c d $ /bin/sh -c 'var="[ab]" && echo $var' # As expected. a b $ /bin/ksh -c 'var="[ab]" && echo $var' # Oops. [ab] $ /bin/ksh -c 'var="?" && echo $var' # But this as expected. a b c d This was causing a failure in our testsuite. Work around that. See also: <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00149.html> * tests/extra11.test: Work around the described issue by using the $(wildcard) builtin in the EXTRA_DIST definition. This is not a problem, since this test was assuming GNU make anyway. Since we are at it, enhance coverage a little by also running "make distcheck". * tests/extra10.test: Similarly, enhance coverage by also running "make distcheck", and fix a minor bug in the process. But continue using a "bare" wildcard expression in EXTRA_DIST, without involving the $(wildcard) builtin, to ensure coverage of similar usages "in the wild".
ff8269e1 2012-02-14 14:28:57 Merge branch 'fix-tap-signal-test' * fix-tap-signal-test: fixup: fix test tap-signal.tap to avoid false negatives
df79bb4b 2012-02-14 14:28:34 fixup: fix test tap-signal.tap to avoid false negatives Problem introduced by yesterday commit v1.11-1851-g79b2c6a, "tests: avoid yet other spurious failures on NetBSD" * tests/tap-signal.tap: Truly ensure the exit status of the make call under test is correctly reflected in the TAP result displayed by the corresponding 'command_ok_' invocation.
2a2500ce 2012-02-14 14:07:12 Merge branch 'maint' * maint: fixup: do not tickle makefile-deps.test with the make_dryrun code gitattributes: custom merge driver for ChangeLog not needed anymore gitattributes: use "union" merge driver for NEWS
4ced60d7 2012-02-14 12:55:32 fixup: do not tickle makefile-deps.test with the make_dryrun code * lib/am/header-vars.am (am__make_dryrun): Avoid code matching '^ *:' in the Makefile, as that tickles makefile-deps.test.
06684c51 2012-02-14 13:25:35 gitattributes: custom merge driver for ChangeLog not needed anymore * .gitattributes: We don't maintain a version-controlled ChangeLog file anymore, so we have no need to specify a custom merge driver for it anymore. Update accordingly.
f874f9ee 2012-02-14 13:21:26 gitattributes: use "union" merge driver for NEWS This should help in reducing the spurious merge conflicts for the NEWS file, which have already caused a great deal of confusion and wasted time. Suggestion by Eric Blake: http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00119.html * .gitattributes (NEWS): Use the "union" merge driver.
b42514b4 2012-02-14 10:11:02 tests: truly use Lex and Yacc selected by configure When 'yacc-work' was merged into 'yl-work-for-master' in commit v1.11-1910-ge6c40d4 (12-02-2012), the values for $YACC and $LEX stopped being substituted directly by config.status, and started being substituted by a Makefile rule using the contents of the $(YACC) and $(LEX) makefile variables. Unfortunately, our configure.ac was calling AM_SUBST_NOTMAKE on 'YACC' and 'LEX' (see commit v1.11-284-g34ca92b of 29-01-2011, "tests: don't define YACC and LEX in the Makefiles", for a rationale), so that the $(YACC) and $(LEX) in the Makefile simply hold the default make-provided values (that is, "yacc" and "lex" respectively), independently of what yacc and lex programs were defined at configure time. Apart from reducing coverage and creating confusion, this behaviour also caused spurious failures on systems lacking a yacc and/or lex programs. Problem reported by Peter Rosin. References: <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00131.html> <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00132.html> * configure.ac (AM_SUBST_NOTMAKE): Don't call anymore on 'YACC' nor on 'LEX'.
4933232e 2012-02-14 02:56:39 depcomp tests: do not specify LDFLAGS for static libraries Commit v1.11-1848-gb3f34ca accidentally specified LDFLAGS for libbaz even when built as a static library, which is not allowed. * tests/depcomp.sh (src/Makefile.am): Don't add any LDFLAGS when libbaz is built as a static library.
2c430b16 2012-02-14 02:51:55 depcomp tests: avoid redundant runs for non-libtool test When running the dependency tests without libtool, it's not meaningful to run the tests three-fold, the libtool configure options are simply ignored anyway. * tests/depcomp.sh: Only run the tests three-fold when libtool is in use.
79b2c6a5 2012-02-14 00:14:36 tests: avoid yet other spurious failures on NetBSD * tests/tap-signal.tap: Add a "strategically placed" extra 'echo' command and a temporary silencing of xtraces; they are required to avoid possible garbled output with NetBSD make, which would miss some final newlines in the expected places and thus mess up our TAP output.
ee07d992 2012-02-13 23:54:24 tests: avoid a spurious failure on NetBSD * tests/test-driver-is-distributed.test: Rewrite to avoid having to edit configure.in; such editing was subtly botched on NetBSD (the 'AC_CONFIG_AUX_DIR' call got misplaced, ending up *before* the 'AC_INIT' call), and that caused an hard-to-track bug. Since we are at it, extend coverage a little.
36eef89b 2012-02-13 22:24:35 tests: avoid spurious failure with NetBSD /bin/ksh * tests/parallel-tests-fd-redirect-exeext.test (configure.in): Tweak so that we don't end up with the generated configure script having two nested subshells that start with '((': ((./conftest$EXEEXT 9>&1) | grep "^foobar") >&5 2>&5 which is unportable and could confuse some shells (e.g., NetBSD 5.1 /bin/ksh) into thinking we are trying to perform an arithmetic operation.
b3f34caa 2012-02-13 21:21:48 tests: increase coverage for depcomp tests On platforms requiring that no undefined symbols exist in order to build shared libraries (e.g. Windows DLLs), you have to explicitly declare that the libtool library you are building does not actually have any undefined symbols, for libtool to even try to build it as a shared library. Without that explicit declaration, libtool falls back to a static library only, regardless of any --enable-shared flags etc. tests/depcomp.sh (Makefile.am): Add -no-undefined if a libtool library (.la) is built. (src/Makefile.am): Likewise.
ee29b576 2012-02-13 21:13:12 news: fix grammaros related to Yacc * NEWS: Fix some grammaros and typos.
a2437fee 2012-02-13 19:33:51 yacc/lex tests: avoid spurious skips with non-GNU make * tests/defs (useless_vpath_rebuild): Fix botched logic that was causing this function to always diagnose non-GNU make implementations as being affected by the "useless rebuilds in VPATH setup" bug (that affects FreeBSD make and causes automake bug#7884).
568a1a5e 2012-02-13 16:43:34 fixup: remove double news entry * NEWS: Remove double (stale) news entry introduced by a botched merge.
dae8578e 2012-02-12 18:03:08 tests: workaround for shells with broken 'set -e' * tests/dist-formats.tap: Some versions of the BSD shell wrongly bail out when the 'errexit' shell flag is active and the left-hand command in a "&&" list fails and that list is the *last* command of a "case" statement. This was causing an incorrect initialization of the '$missing_compressors' variable, and thus potential spurious failures when non-existing programs were assumed to be available.
682d5ce5 2012-02-12 17:16:54 tests: workaround for shells with broken 'set -e' * tests/yacc-cxx.test: Some versions of the BSD shell wrongly bail out when the 'errexit' shell flag is active if the left-hand command in a "&&" list fails and such list is the *last* command of a "for" or "while" loop or of an "if" construct. Work around this issue. * tests/check12.test: Likewise.
e0906b7e 2012-02-12 17:02:33 tests: avoid spurious failure with non-bison yacc Issue revealed by a failure on NetBSD 5.1. * tests/suffix10.tap (Makefile.am): Adjust the rule generating the '.y' files so that such files won't use bison-only features.
0b34421d 2012-02-12 16:37:44 tests: fix spurious failures due to missing 'yywrap()' function The AC_PROG_LEX Autoconf macro does not diagnose a failure to find the "lex library" expected to provide a 'yywrap' function (function which is required to link most lex-generated programs). On the contrary, when all the link attempts (i.e., with '-ll' and '-lfl') fail, configure declares that no lex library is needed, and simply proceeds with the configuration process -- only for the build to possibly fail later, at make time. This behaviour is intended; the Autoconf manual reads: You are encouraged to use Flex in your sources, since it is both more pleasant to use than plain Lex and the C source it produces is portable. In order to ensure portability, however, you must either provide a function 'yywrap' or, if you don't use it (e.g., your scanner has no '#include'-like feature), simply include a '%noyywrap' statement in the scanner's source. This AC_PROG_LEX behaviour is causing some spurious failures of the Automake testsuite in environments which lack a proper library providing 'yywrap' (this happens for example on Fedora-based systems). The proper workaround is to simply provide a fall-back implementation of 'yywrap' in our lexers. See also similar commits 'v1.11-546-gca0ba5d' (24-10-2011), 'v1.11-1085-gb5c3968' (24-10-2011) and 'v1.11-871-geb147a1' (25-05-2011). * tests/lex-clean.test: Provide a dummy 'yywrap' function. * tests/lex-line.test: Likewise. * tests/lex-nodist.test: Likewise. * tests/lex-depend.test: Likewise. * tests/lex-clean-cxx.test: Move the dummy 'yywrap' function from the main '.cc' file into the '.lxx' file, so that it won't be subject to the namespace declaration in the '.cc' file (which was causing a spurious link error in systems without a default "lex library").
e6c40d4b 2012-02-12 15:06:17 Merge branch 'yacc-work' into yl-work-for-master * yacc-work: (37 commits) fixup: list of yacc/lex tests was botched tests: work around bug#7884 in many yacc/lex tests yacc/lex tests: remove an unneeded workaround for bug#8485 yacc/lex tests: avoid too much failures with FreeBSD make yacc-dist-nobuild.test: add reference to bug#7884 yacc tests: fix bug in 'yacc-cxx.test' lex tests: fix spurious link errors on Solaris lex: "make clean" removes .c files from non-distributed .l lex tests: make test on Lex dependency tracking more "semantic" lex tests: remove erroneous check about ylwrap distribution yacc tests: "make clean" removes C++ files from non-distributed .y tests: add a workaround for automake bug#8485 tests: add a couple of inter-tests reference lex tests: require just `lex' instead of `flex' fix typo in ChangeLog (2011-05-04) tests defs: use `skip_' for skipping yacc/lex related tests lex/yacc tests: remove redundant $distdir definition coverage: test lex-generated "#line" directives postprocessing tests: minor improvements to a couple of yacc tests tests: fix spurious failure in test 'yacc-d-cxx.test' ... + Extra non-trivial edits: * tests/defs.in: Delete; the differences from maint has been merged into 'tests/defs' and 'tests/defs-static.in'. * tests/defs (yacc, lex): Use 'skip_all_', not 'skip_', to skip the whole test case if yacc (resp. lex) is missing. (bison): New, set up the environment so that 'bison -y' will be used as the yacc program. (useless_vpath_rebuild, yl_distcheck): Moved in from 'tests/defs.in'. * tests/defs-static.in ($YACC, $LEX): Default to the values determined at configure time, and allow them to be overridden by the more namespace-safe variables '$AM_TESTSUITE_YACC' and '$AM_TESTSUITE_LEX' respectively. * tests/Makefile.am (do_subst): Also substitute '@YACC@' and '@LEX@'. * Several tests: Fix requirements declarations, by preferring 'lex' and 'yacc' over 'flex' and 'bison' whenever possible.
abe0587b 2012-02-12 12:06:35 fixup: list of yacc/lex tests was botched * tests/list-of-tests.mk: Update to take into account the addition, renaming, removing or split-ups of Yacc/Lex tests that have taken place in the 'yacc-work' branch. Problem likely introduced by a botched merge of 'maint' into 'yacc-work'.
bdfd2295 2012-02-12 11:02:32 docs: move chapter on automake history out of main manual The chapter on Automake history, while certainly interesting and even fascinating, does not truly pertain to a reference manual, so move it out from there and into its own dedicated file. This change is made more advisable and pressing by the fact that such and "Automake history" chapter hasn't been updated since the 1.9.6 release, so it has been becoming less faithful and useful since then. * doc/history.texi: New, manual on the history of the automake package; extracted from ... * doc/automake.texi: ... this file, with related adjustments. * doc/Makefile.am (info_TEXINFOS): Add 'history.texi'. (history_TEXINFOS): New, list included file 'fdl.texi'. * Makefile.am (release-stats): Remove as obsolete. * HACKING (Release Procedure): Don't advise anymore to run the "release-stats" target and to update the manual with its output. * NEWS: Update. * .gitignore: Likewise.
19bab325 2012-02-08 13:21:58 depcomp tests: avoid redundant runs for libtool tests When running libtool-oriented tests, our 'depcomp.sh' script used to run the same checks thrice: once after having run configure with the '--disable-shared' option, once after having run it with the '--enable-shared' option, and once by allowing configure to automatically select which kind of library (or libraries) to build. This was done to offer extra coverage for the less-common depmodes (like "aix" of "hp2") where the name of the compiler-generated depfiles can depend on whether libtool is in use *and* on which kind of libraries libtool is building (static, shared, or both). About this, see commit 'Release-1-10-24-ge89ec38' of 28-03-2007, "* lib/depcomp (aix): Rewrite depmode in the spirit of the tru64 one". But that extra coverage came at the price of *considerably* slowing down the depcomp libtool-oriented tests, since for each of them the tested source tree was configured and built *twelve* times (rather than "just" four as it is for the non-libtool case). So, to strike a balance between coverage and speed, we now run the libtool-oriented tests with the three different configuration modes *only* when it is possible that the depmode that will get selected is one of those which can actually benefit from the extra coverage. * tests/depcomp.sh: Adjust to only run the threefold libtool tests when that can truly be potentially useful. Add related explanatory comments.
9ac0278a 2012-02-09 19:49:18 tests: avoid wrong skips in dist-formats.tap * tests/dist-formats.tap: The test checking whether the 'compress' program is actually capable of compressing files relied on the assumption that 'compress' exits with status zero if no problem occurs; alas, this reasonable assumption doesn't hold in practice, since 'compress' does (and is documented to) exit with status 2 if the output is larger than the input after (attempted) compression! Fix this by using and input that 'compress' can actually reduce in size when compressing. Do some related reformatting of surrounding code since we are at it.
c1875ea6 2012-02-09 19:06:06 tests: few tweakings and cosmetic changes * tests/dist-formats.tap: Fix botched spacing. * tests/subobjname.test: Prefer spaces to tabs in indentation. * tests/cond43.test: Likewise. * tests/comment7.test: Likewise. * tests/compile_f90_c_cxx.test: Use "$tab" instead of literal tab characters in the grep regexp. * tests/compile_f_c_cxx.test: Likewise. * tests/pluseq3.test: Likewise. * tests/cond-basic.test: Likewise. * tests/acloca16.test: Add empty line before trailing ':' command. * tests/bsource.test: Likewise. * tests/depend5.test: Likewise. * tests/depend6.test: Likewise. * tests/destdir.test: Likewise. * tests/fort2.test: Likewise. * tests/instdir-java.test: Likewise. * tests/instdir-lisp.test: Likewise. * tests/instdir-python.test: Likewise. * tests/instdir.test: Likewise. * tests/instdir2.test: Likewise. * tests/ltinstloc.test: Likewise. * tests/missing.test: Likewise. * tests/missing2.test: Likewise. * tests/nodef.test: Likewise. * tests/nodef2.test: Likewise. * tests/subst4.test: Likewise. * tests/werror3.test: Likewise. * tests/commen11.test: Likewise. Also, make grepping of automake stderr slightly stricter, and properly quote strings with shell metacharacters. * tests/nodep2.test: Add empty line before trailing ':' command. Do not create unneeded dummy source files.
44d95be0 2012-02-09 18:17:54 tests: remove a couple of redundant 'set -e' calls * tests/conffile-leading-dot.test: Do not set the 'errexit' shell flag, as it is already set by 'tests/defs'. * tests/make-dryrun.test: Likewise.
b1d998fb 2012-02-09 18:15:43 Merge branch 'maint' * maint: tests: fix a timestamp-related spurious failures dryrun: fix regression with '$(am__make_dryrun)' test defs: function 'is_newest' now works also with directories
3974270e 2012-02-09 18:07:13 Merge branch 'dryrun-fix' into maint * dryrun-fix: dryrun: fix regression with '$(am__make_dryrun)'
9dfdc96a 2012-02-09 10:25:20 tests: check if 'compress' is real or fake On Cygwin, 'compress' is provided by sharutils and is just a dummy script that is not able to actually compress (it can only decompress). This fake 'compress' is not usable for our purpose - to create compressed tarballs. * tests/dist-formats.tap (missing_compressors): Count 'compress' as missing if it does not support the -c option.
e36b1ad1 2012-02-08 15:12:40 Merge branch 'msvc' * msvc: depcomp: try to prevent whitespace regressions depcomp: recognize tabs as whitespace in the dashmstdout mode depcomp: quote 'like this', not `like this'
0eccd77f 2012-02-08 14:29:01 depcomp tests: avoid spurious failures with 'dashXmstdout' depmode * tests/gen-testsuite-part: The 'dashXmstdout' depmode cannot be truly forced on gcc (like we were trying to do, causing spurious failures in the process); so don't do that. This change shouldn't actually reduce coverage anyway, since, as the comments in 'lib/depcomp' say, the 'dashXmstdout' depmode is just like the 'dashmstdout' one, only with a different argument for the compiler.
6fca3afa 2012-02-03 16:10:52 depcomp: try to prevent whitespace regressions Suggested by Stefano Lattarini. * lib/depcomp: Add $tab and $nl variables and use them throughout.
81193035 2012-02-03 08:54:49 depcomp: recognize tabs as whitespace in the dashmstdout mode Commit Release-1-7-2b-2-gf03ceab "Cope with DOS filenames in dependencies." inadvertedly converted tabs into spaces. * lib/depcomp (dashmstdout): Add a tab character to all sets matching whitespace.
1e2ced5c 2012-02-08 14:40:15 depcomp: quote 'like this', not `like this' Cherry-picked from recent changes from master. * lib/depcomp: Quote 'like this', not `like this'.
887ededc 2012-02-08 13:35:32 tests: check the depmodes 'msvisualcpp' and 'msvcmsys' * tests/defs (cygpath): New requirement, checking that cygpath is working. (mingw): New requirement, checking that the build system is MSYS (in its normal MinGW mode). * tests/gen-testsuite-part (depmodes): Add entries for depmodes 'msvisualcpp' and 'msvcmsys'.
96401cb9 2012-02-06 15:48:30 tests: better way to compare lists in Makefile rules With this commit, we introduce a new helper shell script for use in the testsuite, which is meant to allow the test cases to easily check whether two whitespace-separated lists are equal; this ability is particularly useful to check for equality of the contents of make variables that are expected to contain multiple whitespace-separated words, and are defined through line continuations (or are rewritten by automake in this way), or that contain expansion of potentially empty variables. Before this change, a test checking that an usage like this one: VAR = valA if COND1 VAR += val1 # com1 endif COND1 VAR += valC worked as expected, couldn't use rules like: ## Doesn't work because $(VAR) expands to multiple words verify: test $(VAR) = "valA val1 valC" nor like: ## Doesn't work because the final expansion of $(VAR) contains ## repeated contiguous whitespace characters (it actually ## equals "valA val1 valC", not "valA val1 valC"), and this ## is an internal detail which might change and which we don't ## want to explicitly rely on. verify: test "$(VAR)" = "valA val1 valC" Instead, we had to rely on cumbersome workaround such as: ## This works, but is ugly. verify: test "`echo $(VAR)`" = "valA val1 valC" or: ## This works, but is even uglier. verify: echo BEG: $(VAR) :END | grep "BEG: valA val1 valC :END" Now, with the help of the new 'is' script, we can perform such a check in a clearer and more straightforward way, as in: ## Works, and reads clearly. verify: is $(VAR) == valA val1 valC * tests/is: New helper shell script, telling whether two whitespace separated lists are equal. * Makefile.am (EXTRA_DIST): Add it. * tests/colneq2.test: Use the new helper script, and accordingly get rid of older, more cumbersome idioms. * tests/cond11.test: Likewise. * tests/cond16.test: Likewise. * tests/cond18.test: Likewise. * tests/cond22.test: Likewise. * tests/cond31.test: Likewise. * tests/cond38.test: Likewise. * tests/test-logs-repeated.test: Likewise. * tests/objext-pr10128.test: Likewise. * tests/programs-primary-rewritten.test: Likewise. * tests/substre2.test: Likewise. Also ... (configure.in, Makefile.am): Add a couple of hack to avoid having to require (and run) a C compiler; accordingly ... ($required): ... remove this. * tests/exeext4.test: Likewise. * tests/substref.test: Likewise. Also ... (hello.c): Use ": >" rather than "cat <<EOF" to generate it, since it's meant to be empty anyway. * tests/cond4.test: Use the new helper script, and accordingly get rid of older, more cumbersome idioms. Avoid some unnecessary uses of "make -e" since we are at it. * tests/cond19.test: Likewise. * tests/cond32.test: Likewise. * tests/cond6.test: Use the new helper script, and accordingly move some checks in the Makefile.am. Avoid unnecessary execution of automake remake rules by manually "touching" aclocal.m4
5066c1b5 2012-02-03 15:05:48 tests: improve and rework tests on dependency tracking Fixes automake bug#10434. Suggestion by Peter Rosin. The 'depcomp.tap' test case worked by trying to unconditionally force the compiler in use by the testsuite to use, one by one, *all* the dependency modes known by the 'depcomp' script, and, for each such forced mode that was compatible enough with said compiler not to cause breakage in the basic compilation rules, checking that it was *also* good enough not to break remake rules in VPATH builds. This seemed a good approach when this test was first introduced, as it apparently increased coverage for the less used and less tested dependency-tracking modes. But in the log run it turned out the approach was actually in part too brittle, causing some annoying spurious failures (as with the Tru64 depmode forced on GCC, see automake bug#10434), and partly too forgiving, since, for some of the more corner-case dependency modes, the 'depcomp' script simply reverts to silently disabling dependency tracking when an error is encountered (this happened e.g., with the Tru64 depmode forced on the Sun C compiler 5.9), so that a passing test means nothing, and only gives a false sense of security. As Peter Rosin put it, "it's just dead wrong to assume that feeding -M or -xM to the compiler (or whatever other random stuff 'depcomp' might do) and not get an error is the same as dependencies magically appearing". So we get rid of this wrong approach, and in the process proceed to a complete overhaul of many of the tests on automatic dependency tracking, extending the offered coverage and rationalizing their organization. * tests/depcomp.sh: New helper script, used by several new autogenerated tests. * tests/gen-testsuite-part: Generate several tests based on the new 'depcomp.sh' script. Emit makefile code that declares their dependency on that script, and that extends EXTRA_DIST in order to distribute it. * tests/depmod.tap: Remove. * tests/depend2.test: Remove, it has been subsumed by the new autogenerated test 'depcomp-disabled.tap'. * tests/depcomp3.test: Remove, it has been subsumed by the new autogenerated test 'depmod-dashmstdout.tap'. * tests/depcomp3.test: Remove, it has been subsumed by the new autogenerated test 'depmod-lt-makedepend.tap'. * tests/depcomp6.test: Remove, it has been subsumed by the new autogenerated test 'depmod-auto.tap'. * tests/depcomp7.test: Remove, it has been subsumed by the new autogenerated test 'depmod-lt-auto.tap'. * tests/depcomp5.test: Remove as obsolescent. * test/list-of-tests.mk: Adjust. * .gitignore: List the new autogenerated tests.
f5f838a2 2012-02-07 19:53:49 tests: fix a timestamp-related spurious failures Fixes automake bug#10737. Report from Larry Daniel. See also automake bug#8365 and commit 'v1.11-329-gd4df619' of 30-03-2011, "tests: fix timestamp-related failures". * tests/aclocal5.test: Sleep before modifying m4 files that should trigger remake rules. This fixes an hard-to-hit timestamp-related race condition. * THANKS: Update.
947ce0ed 2012-02-07 11:12:59 dryrun: fix regression with '$(am__make_dryrun)' In commit v1.11-683-gda0964e of 05-02-2012, we introduced a new variable '$(am__make_dryrun)' that could be used in recipes to determine whether make is running in dry mode (e.g., as with "make -n"). Unfortunately, the idiom we used fails to take into account the case in which $(MAKEFLAGS) contains one or more variable definitions whose value is a whitespace-separated list; for example, if we invoke make as: make check TESTS="n1.test n2.test" then the better make implementations out there (at least modern GNU make and BSD make) will export MAKEFLAGS to the following value: TESTS=n1.test\ n2.test So a shell loop like the one we used in $(am__make_dryrun): for flag in $$MAKEFLAGS; do ... won't behave as expected: the shell word-splitting rules will break up the entry for TESTS into the two distinct entries "TESTS=n1.test\" and "n2.test", and this second entry will goad our $(am__make_dryrun) code into thinking that make is performing a dry run! So now we simply loop over the expanded value of $(MAKEFLAGS). This solves the regression, but alas, is more brittle in case the users passes on the command line a macro value containing unbalanced " or ' quotes, or shell metacharacters like, say, '`' or '('. This should almost never happen though, so we don't worry about it now; we will revisit the issue only when and if we receive bug reports in this area. * lib/am/header-vars.am (am__make_dryrun): Fix. * tests/make-dryrun.test: New test. * tests/list-of-tests.mk: Add it.
818bc406 2012-02-07 09:30:37 tests: work around bug#7884 in many yacc/lex tests Due to automake bug#7884, many test cases on Yacc/Lex support are failing when run with FreeBSD make. Since these failures are all due to the same bug, and that bug is well understood and already explicitly exposed in the dedicated 'yacc-dist-nobuild.test' test, the reported failures are mostly noise, that not only is annoying, but which might end up covering different real bugs or regressions. Thus we minimize such spurious failures, by ensuring the commands triggering them (most of them being "make distcheck" invocations) will be skipped when $MAKE suffers of the bug/limitation that triggers automake bug#7884. * tests/defs.in (useless_vpath_rebuild): New function. (yl_distcheck): Likewise. * tests/lex3.test, tests/subpkg-yacc.test, tests/yacc-basic.test, tests/yacc-cxx.test, tests/yacc-d-basic.test, tests/yacc-d-cxx.test, tests/yacc-dist-nobuild-subdir.test : Use them to avoid extra failures caused by automake bug#7884. Where possible, throw in some related simplifications.
df6841b7 2012-02-06 23:17:32 Merge branch 'maint' into yacc-work * maint: (75 commits) test defs: function 'is_newest' now works also with directories refactor: new variable telling whether make is running in "dry mode" ...
dec3c382 2012-02-06 23:02:32 test defs: avoid spurious XPASS results with NetBSD make * tests/defs (make_can_chain_suffix_rules): Ensure to properly declare the '.SUFFIXES:' in the temporary Makefile used to check whether $MAKE is able to automatically chain suffix rules. This avoids spurious XPASS results with (at least) NetBSD make in some 'suffix*.tap' tests; in a sense also, this also makes the probing of $MAKE capabilities more faithful, since the Automake-generated Makefiles are expected to properly declare the '.SUFFIXES:' as well.
21f97935 2012-02-06 22:45:47 cosmetics: few whitespace fixlets
d7dca5af 2012-02-06 22:06:18 cosmetics: various typofixes Several typofixes in documentation and comments, as suggested by the "codespell.py" script. Reference: <http://git.profusion.mobi/cgit.cgi/lucas/codespell/>
ce2c543e 2012-02-06 21:54:36 cosmetics: convert encoding from ISO-8859 to UTF-8 in some tests The changed files have been converted using iconv; specifically, the command "iconv --from-code=ISO-8859-1 --to-code=UTF-8". * tests/block.test, tests/tagsub.test: Converted to UTF-8 encoding.
a66a0be8 2012-02-06 22:28:20 test defs: remove obsolete requirement 'rst2html' * tests/defs (rst2html): Remove, it's not needed anymore now that the old code supporting the ".log -> .html" conversion for the parallel-tests harness has been moved in contrib. This removal should have actually be done in commit v1.11-1757-g0a9d201 of 17-01-2012, 'check: move ".log -> .html" conversion in contrib'.
3522166d 2012-02-06 19:43:34 tests: workaround for shells with broken 'set -e' * tests/defs (gmake, native, rst2html): Some versions of the BSD shell wrongly bail out when the 'errexit' shell flag is active and the left-hand command in a "&&" list fails, if that list is the *last* command of a "for" or "while" loop. Work around this issue. * tests/lex3.test: Likewise. * tests/check12.test: Likewise. * tests/yacc-basic.test: Likewise. * tests/lex-noyywrap.test: Likewise. * tests/parallel-tests2.test: Likewise. * tests/lex-lib-external.test: Likewise. * tests/check-no-test-driver.test: Likewise. * tests/test-metadata-recheck.test: Likewise. * tests/parallel-tests-dry-run-1.test: Likewise. * tests/parallel-tests-dry-run-2.test: Likewise. * tests/parallel-tests-unreadable.test: Likewise. * tests/test-driver-custom-no-extra-driver.test: Likewise. Problem revealed by spurious testsuite failures on a NetBSD 5.1 system and an OpenBSD 5.0 system.
2506b393 2012-02-06 19:26:12 cosmetics: fix a typo in comments * tests/extra-programs-empty.test: Fix typo in heading comments.
ea4f1a91 2011-07-23 13:55:20 test defs: function 'is_newest' now works also with directories Reported by Jim Meyering against automake master (see bug#9147) and by Adam Sampson against automake 1.11.3 (see bug#10730). * tests/defs (is_newest): Call 'find' with the '-prune' option, so that it won't descend in the directories (which could cause spurious results). * THANKS: Update. Backported from commit v1.11-914-gb6a40fa (originally on master).
d029740b 2012-02-05 21:22:01 parallel-tests: more uses for '$(am__make_dryrun)' With this change we refactor some recipes of the parallel-tests harness to make them use, where appropriate, the new internal variable '$(am__make_dryrun)' (introduced in the 'maint' branch) when they need to determine whether make is running in "dry mode", i.e., with "make -n". This allows for some simplifications and for improved uniformity. * lib/am/check.am (check-TESTS recheck): Use $(am__make_dryrun) and simplify accordingly. (am--redo-logs): Delete this internal helper recipe, merged into ... ($(TEST_SUITE_LOG)): ... this, with the help of $(am__make_dryrun). recipe accordingly.
d2d18dca 2012-02-05 18:37:45 Merge branch 'maint' * maint: refactor: new variable telling whether make is running in "dry mode" tests: do not clobber the modified CC
da0964eb 2012-01-23 21:02:05 refactor: new variable telling whether make is running in "dry mode" We define a new variable '$(am__make_dryrun)', that can be used in recipes to determine whether make is running in "dry mode" (as with "make -n") or not. This is useful in rules that invoke make recursively, and are thus executed also with "make -n" -- either because they are declared as dependencies to '.MAKE' (NetBSD make) or because their recipes contain the "$(MAKE)" string (GNU and Solaris make). * lib/am/header-vars.am (am__make_dryrun): New variable. * lib/am/check.am (check-TESTS recheck): Use it, and simplify recipe accordingly. * lib/am/distdir.am (distdir): Likewise. * lib/am/lisp.am ($(am__ELCFILES)): Likewise.
d51da57f 2012-02-02 21:08:46 tests: do not clobber the modified CC If CC is originally a losing compiler, AM_PROG_CC_C_O will modify CC. "$MAKE -e" will then clobber this modified CC and reintroduce the raw losing compiler causing the test to fail, as subdir-objects is in effect. tests/check8.test: Drop -e from the $MAKE invocation, since AM_COLOR_TESTS is not specified in the Makefile and -e is therefore not needed.
6b819187 2012-02-02 20:14:30 cosmetics: fix indentation and typos in perl TAP driver * lib/tap-driver.pl (get_test_exit_message): Fix botched indentation. Fix typo in error message: s/ststus/status/.
87f2058a 2012-02-02 19:07:51 test defs: fix typo in variable name ($AM_TESTSUITE_PERL) * tests/defs-static.in: Fix typo: it's '$AM_TESTSUITE_PERL', not '$AM_TESTUITE_PERL'.
2077a044 2012-02-02 14:51:59 tap/perl: handle missing or non-executable scripts better This change improves how our Perl-based TAP driver handles non-runnable test scripts (meaning they might be not executable, or not readable, or even not exist). In particular, it makes the driver deterministically display a clear "ERROR" result instead of possibly dying with diagnostic from 'TAP::Parser' internals, and prevents it from displaying spurious "missing TAP plan" errors. Moreover, with this change, some testsuite failures present only with newer perl versions (e.g., 5.14) are fixed. See automake bug#10418. * tests/tap-bad-prog.tap: When testing the perl implementation of the TAP driver, and when the perl interpreter offers a good-enough 'IPC::Open3::open3' function, expect it not to display spurious "missing TAP plan" diagnostic if the error is actually due to a non-runnable test script. * lib/tap-driver.pl (start): Removed, broken up into ... (setup_io): ... this ... (setup_parser): ... and this, which now tries to catch and report errors in launching the test scripts. (finish): New, used by both 'main' and 'setup_parser'. (main): Adjust.
dde91c54 2012-02-01 16:28:48 Merge branch 'maint'
85cadc4e 2012-02-01 15:47:45 tests: put AM_PROG_CC_C_O before AC_OUTPUT to help losing compilers When AM_PROG_CC_C_O is after AC_OUTPUT, the compile script is not used even if needed, causing testsuite fails if libtool is not used. * tests/depcomp8a.test: Uncomment the AM_PROG_CC_C_O macro in its correct location, as indicated... (configure.in): ...with this comment. * tests/depcomp8b.test: Sync with tests/depcomp8a.test.
c3e4962a 2012-01-31 12:52:24 cleanup: remove unused .am file * lib/am/comp-vars.am: Remove. This file has stopped being useful since commit 'Release-1-4d-206-g3334f9a' of 09-04-2001, and should have been removed back then. But apparently only its contents were removed, leaving the file empty but still present in the repository. Or maybe this situation is the consequence of a minor blunder in the conversion from CVS to Git; either way, this is not a big deal.
3c66523f 2012-01-31 08:31:59 Merge branch 'maint' * maint: tests: do not assume the object file extension is .o tests: avoid spurious failure of 'transform2.test' on Cygwin tests: avoid spurious failure of deleted-am.test with FreeBSD make tests: avoid possibly undeserved PASS from check8.test warnings: more precise category and message for one warning release: revamp rules to tag and upload the releases amversion: add missing dependency hacking: update advice w.r.t. synced files hacking: don't reference ChangeLog anymore + Extra non-trivial edits: * tests/suffix8.tap: Copy in (by hand) the modifications done to 'suffix8.test' on maint, i.e., the addition of an explicit '.y_.obj:' suffix rule to Makefile.am.
a6c17113 2012-01-30 23:27:06 Merge branch 'msvc' * msvc: ar-lib: ignore the verbose modifier instead of erroring out scripts: cherry-pick recent changes from master tests: add missing dependency for some 'ar-lib*.test' tests
2a2f57fc 2012-01-30 23:19:03 ar-lib: ignore the verbose modifier instead of erroring out * lib/ar-lib: A number of tests uses the v modifier when listing the archive content, ignore it to make them pass.
41404a8f 2012-01-30 23:16:37 scripts: cherry-pick recent changes from master * lib/ar-lib: prefer the term "Windows" over "Win32" and quote 'like this', not `like this'. * lib/compile: Likewise.
ef20e28b 2012-01-28 13:23:16 maintcheck: fix real and spurious warnings * lib/Makefile.am (install-data-hook): Correctly quote $(DESTDIR) occurrences. * Makefile.am (install-exec-hook, uninstall-hook): Likewise. (autodiffs): Prefer '$(am__cd)' to plain 'cd', where warranted. * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Likewise. Also, prefer using AC_SUBST'd $(abs_top_builddir) over obtaining it at runtime from $(top_builddir). * syntax-check.mk (sc_mkinstalldirs): Tweak to whitelist known harmless occurrences of the checked-against usages. (sc_no_for_variable_in_macro): Likewise. * tests/CheckListOfTests.am (maintainer-check-list-of-tests): Tweak to avoid spuriously triggering the 'sc_no_for_variable_in_macro' maintainer check. Prefer '$(am__cd)' to plain 'cd' when warranted.
25d3adb1 2012-01-28 12:38:07 maintcheck: take advantage of some GNU make features We can do so now that our maintainer checks require GNU make unconditionally. * syntax-check.mk (ams, xtests): Redefine as "immediate variables", using the GNU make $(shell ...) builtin. (maintainer-check-list-of-tests): Take advantage of GNU make "-C" option. Don't use $(AM_MAKEFLAGS), we shouldn't need it with GNU make.
e508e09d 2012-01-28 10:05:18 build: require GNU make in order to run the maintainer checks This is not a real regression in portability, since most maintainer check rules already assumed GNU grep, and were anyway only meant to run on the developers' systems (where we can safely assume the presence of GNU make). This change will allow us to take advantage, in future changes, of more GNU make features, thus simplifying or optimizing some of our maintainer rules. * GNUmakefile: New, including 'Makefile' and 'syntax-checks.mk'. * configure.ac (AC_CONFIG_LINKS): Link it in the builddir. * Makefile.am (EXTRA_DIST): Distribute 'GNUmakefile' and 'syntax-checks.mk'. Move all syntax-check rules and auxiliary variables into ... * syntax-checks.mk: ... this new file, with some adjustments.
0da74499 2012-01-28 09:21:29 maintcheck: refactor rules checking '*.am' files A small refactoring in our syntax-check to avoid code duplication and to ensure more uniform checking. This change introduces some new failures in syntax-check rules (both real and spurious), that will be fixed in follow-up changes and code reorganizations. * Makefile.am (ams): New variable, holding the list of all the '*.am' fragments in he automake source tree. (sc_no_brace_variable_expansions): Use it. (sc_rm_minus_f): Likewise. (sc_no_for_variable_in_macro): Likewise. (sc_mkinstalldirs): Likewise. (sc_pre_normal_post_install_uninstall): Likewise. (sc_cd_in_backquotes): Likewise. (sc_cd_relative_dir): Likewise. (sc_tests_make_without_am_makeflags): Likewise. (sc_tests_plain_egrep_fgrep): Likewise. (sc_mkdir_p): Likewise.
32cde2a4 2012-01-30 20:57:12 tests: do not assume the object file extension is .o * tests/specflg7.test: Dig out the object file extension from the OBJEXT makefile variable. * tests/substref.test: Likewise. * tests/specflg8.test: Likewise. Also check that the false-true object is created instead of checking the true-true object twice. * tests/suffix8.test: Add a chain rule for the case where the object file extension is .obj.
925c6bdd 2012-01-30 20:33:17 tests: fetch the 'compile' script for subdir objects * tests/libobj19.test: Subdir objects are used, so the 'compile' script needs to be present for inferior hosts. Fetch it.
87272667 2012-01-30 20:32:53 tests: fetch the 'ar-lib' script for archiver usage * tests/libobj10.test: The archiver is used, so the 'ar-lib' script needs to be present for inferior hosts. Fetch it.
0436a1ed 2012-01-27 18:35:28 tests: avoid spurious failure of 'transform2.test' on Cygwin On newer Cygwin versions (at least 1.7.x), the 'transform2.test' test has been failing spuriously; the gist is the following: some *purposefully* rigged install rules there try something like: install bla.exe .../inst/bin/foo.exe install script.sh .../inst/bin/foo and the second install command fails (trying to overwrite the '.../inst/bin/foo.exe' file, likely due to overly aggressive appending of '.exe' suffix when copying/renaming Windows executables). Since this is a Cygwin issue rather than an Automake one (and since the use case we are testing is a really corner-case anyway, making it unworthy to attempt to work around it in automake proper), we simply hack the test case to avoid the failure. Analysis by Peter Rosin and Ralf Wildenhues. References: <http://lists.gnu.org/archive/html/automake-patches/2010-08/msg00153.html> <http://thread.gmane.org/gmane.os.cygwin/119380> * tests/transform2.test: Skip the affected part of the test if the described Cygwin behaviour is detected.
d55b9302 2012-01-27 21:03:45 tests: avoid spurious failure of deleted-am.test with FreeBSD make * tests/deleted-am.test: Sleep between the removal of the included '.am' fragments and the subsequent "make" calls, to ensure that the remake rules kick in. This is required to avoid racy spurious failures (~ 60% of the time) with FreeBSD make.
be0a696a 2012-01-27 14:14:46 tests: avoid possibly undeserved PASS from check8.test * tests/check8.test: Strengthen grepping of "make check" output where we know no problem with VPATH rewrites can take place. This has the advantage of ensuring that we won't match also "sub/bar" when looking for "bar" during the uncolorized tests. Suggestion by Peter Rosin.
53339f86 2012-01-10 20:27:08 tests: work around MinGW/MSYS issue in fd redirections Some checks on $(AM_TESTS_FD_REDIRECT) were failing on MSYS, likely because system calls like "write(9, ...)" simply doesn't work for MinGW-compiled programs. Similar usages work for the shell scripts though, since /bin/sh is an MSYS program and thus is a lot more POSIX-ish than most MinGW-compiled programs. The best fix for this issue is to separate the checks using shell scripts as dummy test cases from the checks using compiled programs for the same purpose, and skip these latter checks on MinGW. This change fixes automake bug#10466. Report by Peter Rosin. * tests/parallel-tests-fd-redirect.test: Move checks using compiled C programs as test cases to ... * tests/parallel-tests-fd-redirect-exeext.test: ... this new test. * tests/list-of-tests.mk: Update.
b6c3ed5e 2012-01-26 18:00:40 warnings: more precise category and message for one warning If automake detected an usage like "AC_CONFIG_FILES([./Makefile])" in configure.ac, it warned that such an usage was unportable to non-GNU make implementations. But the truth is actually worse: that is actually *unportable to GNU make* itself, since it breaks the automatic remake rules in subtle ways. So we now reveal this breakage in a new test case, and enhance the warning by giving it a more precise and correct wording, and by moving it from the category 'portability' to the category 'unsupported'. * automake.in (scan_autoconf_config_files): Improve the warning. * tests/conffile-leading-dot.test: New test. * tests/list-of-tests.mk: Add it.
af5f9390 2012-01-25 12:18:43 release: revamp rules to tag and upload the releases The older Makefile rules used to create and tag the releases were based on an approach we now consider flawed: they over-mechanized some delicate operations that are better performed manually *and* double-checked by a developer, and at the same time they did not run enough safety checks. * Makefile.am (GIT, version_rx, stable_version_rx, beta_version_rx, match_version, git_must_have_clean_workdir, determine_release_type): New variables. (git-release, git-dist): Remove, they are superseded by ... (git-tag-release, git-upload-release): ... these new targets.