[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.12.1-109
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.12.1-109-g5197aba |
Date: |
Fri, 06 Jul 2012 22:24:36 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".
http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=5197aba1d5e1895c28d66703b0b407c991f608fb
The branch, maint has been updated
via 5197aba1d5e1895c28d66703b0b407c991f608fb (commit)
via 2d1f1043e900a746f57c34467d4de8b48e4efc8b (commit)
via a5edf3d61c28f0c9702dd012bf8d0623310e19c5 (commit)
via cca426348a05caf190c3ef60f2f54d1a590b4459 (commit)
via 2634d5d8ba99a52023f25bb6ea6b038f76e55a7f (commit)
from fc21a888343751b9fbd2bc35fe1ffc96f4f310f2 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 5197aba1d5e1895c28d66703b0b407c991f608fb
Author: Stefano Lattarini <address@hidden>
Date: Fri Jul 6 23:42:11 2012 +0200
cosmetics: rename t/ax/test-runner => t/ax/runtest
The latter is shorter and clearer. Better to do the rename early,
before other developers or contributors begin to get used to the
'test-runner' name.
* t/ax/test-runner.in: Rename ...
* t/ax/runtest.in: ... like this.
* Makefile.am, t/README, .gitignore: Adjust.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 2d1f1043e900a746f57c34467d4de8b48e4efc8b
Author: Stefano Lattarini <address@hidden>
Date: Fri Jul 6 23:22:03 2012 +0200
fixup: another "make recheck" failure with BSD make
* t/parallel-tests-log-override-recheck.sh: Here, add a proper $sleep
before calling "make recheck". This should ideally have been done
in the earlier commit 'v1.12.1-100-g19d84bc', but it somehow slipped
through the cracks.
* t/test-metadata-recheck.sh: Likewise.
Signed-off-by: Stefano Lattarini <address@hidden>
commit a5edf3d61c28f0c9702dd012bf8d0623310e19c5
Author: Stefano Lattarini <address@hidden>
Date: Fri Jul 6 22:17:59 2012 +0200
test runner: work correctly in VPATH setups
Due to a "feature" of AC_CONFIG_FILES, because 't/ax/test-runner.in'
is in a subdirectory, the '@srcdir@' value that is AC_SUBST'd in it
gets tweaked to contain as much '..' components as are the directory
components of 't/ax/test-runner'. Because our build system operates
in a non-recursive setup, this substitution is wrong; for example,
the final 't/ax/test-runner' build in a VPATH builds where the source
directory is ".." contains the line:
: ${srcdir='../../../t/ax'}
instead of the expected (and correct):
: ${srcdir='../t/ax'}
We solve the issue by building 't/ax/test-runner' with a Makefile
recipe instead of config.status substitutions; this is already done
for other testsuite-related files, like 'defs-static'.
* configure.ac (AC_CONFIG_FILES): Don't build 't/ax/test-runner'
anymore.
* Makefile.am (t/ax/test-runner): New rule.
(EXTRA_DIST): Add 't/ax/test-runner.in'.
(CLEANFILES, noinst_SCRIPTS): Add 't/ax/test-runner'.
Signed-off-by: Stefano Lattarini <address@hidden>
commit cca426348a05caf190c3ef60f2f54d1a590b4459
Author: Stefano Lattarini <address@hidden>
Date: Fri Jul 6 10:12:30 2012 +0200
compat: automake should define $(mkdir_p), for backward compatibility
That has been unwittingly broken by commit 'v1.12-19-g7a1eb9f'
of 2012-04-28, "AM_PROG_MKDIR_P: deprecate, to be removed in
Automake 1.13".
Report from Benoit Sigoure and Diego Elio Pattenò:
<http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
* lib/am/header-vars.am (mkdir_p): Define as an alias for $(MKDIR_P).
* t/list-of-tests.mk (XFAIL_TESTS): Remove 't/mkdir_p.sh'.
* NEWS: Update.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 2634d5d8ba99a52023f25bb6ea6b038f76e55a7f
Author: Stefano Lattarini <address@hidden>
Date: Fri Jul 6 09:59:23 2012 +0200
coverage: test that AM_PROG_MKDIR_P and $(mkdir_p) still works
They are deprecated, but should continue to work in the 1.12.x
release series. Report from Benoit Sigoure and Diego Elio Pattenò:
<http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
* t/mkdirp-deprecation.sh: Enhance.
* t/mkdir_p.sh: New test, check that AM_INIT_AUTOMAKE still defines
the $(mkdir_p) make variable. Currently xfailing.
* t/list-of-tests.mk (handwritten_TESTS, XFAIL_TESTS): Add the new
test.
Signed-off-by: Stefano Lattarini <address@hidden>
-----------------------------------------------------------------------
Summary of changes:
.gitignore | 2 +-
Makefile.am | 11 +++++++
NEWS | 17 +++++++++++-
configure.ac | 1 -
lib/am/header-vars.am | 5 +++
t/README | 8 +++---
t/ax/{test-runner.in => runtest.in} | 0
t/list-of-tests.mk | 1 +
t/{dist-included-parent-dir.sh => mkdir_p.sh} | 32 +++++++++++-----------
t/mkdirp-deprecation.sh | 36 ++++++++++++++++++++----
t/parallel-tests-log-override-recheck.sh | 2 +
t/test-metadata-recheck.sh | 1 +
12 files changed, 87 insertions(+), 29 deletions(-)
rename t/ax/{test-runner.in => runtest.in} (100%)
copy t/{dist-included-parent-dir.sh => mkdir_p.sh} (66%)
diff --git a/.gitignore b/.gitignore
index 2b9edac..4eec957 100644
--- a/.gitignore
+++ b/.gitignore
@@ -37,7 +37,7 @@
/t/wrap/automake-1.*
/defs-static
/t/testsuite-part.am
-/t/ax/test-runner
+/t/ax/runtest
/t/*-w.tap
/t/*-w.sh
/t/depcomp-*.tap
diff --git a/Makefile.am b/Makefile.am
index f55f6fb..9ef2f48 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -400,6 +400,17 @@ defs-static: defs-static.in Makefile
EXTRA_DIST += defs-static.in
CLEANFILES += defs-static
+t/ax/runtest: t/ax/runtest.in Makefile
+ $(AM_V_at)rm -f $@ address@hidden
+ $(AM_V_GEN)in=t/ax/runtest.in \
+ && $(MKDIR_P) t/ax \
+ && $(do_subst) <$(srcdir)/t/ax/runtest.in >address@hidden \
+ && chmod a+x address@hidden
+ $(generated_file_finalize)
+EXTRA_DIST += t/ax/runtest.in
+CLEANFILES += t/ax/runtest
+noinst_SCRIPTS = t/ax/runtest
+
# If two test scripts have the same basename, they will end up sharing
# the same log file, leading to all sort of undefined and undesired
# behaviours.
diff --git a/NEWS b/NEWS
index ee16961..d38554d 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,11 @@ New in 1.12.2:
long-deprecated 'configure.in' name for the Autoconf input file.
You are advised to use the recommended name 'configure.ac' instead.
+ - The long-obsolete (since automake 1.10) @mkdir_p@ configure-time
+ substitution and AM_PROG_MKDIR m4 macro will be removed in Automake
+ 1.13. The $(mkdir_p) should still remain available for the moment
+ though.
+
- Autoconf 2.65 or later will be required by the next major Automake
version (1.13). Until now, Automake has required Autoconf version
2.62 or later.
@@ -100,6 +105,16 @@ Bugs fixed in 1.12.2:
compilation fails, it will still be rerun by further "make recheck"
invocations. See automake bug#11791.
+* Bugs introduced by 1.12.1:
+
+ - Automake generated Makefiles define once again the $(mkdir_p) make
+ variable (simple ans an alias for $(MKDIR_P)), for better backward
+ compatibility. The '@mkdir_p@' substitution is however not enabled
+ by default anymore; anyone needing it should call the AM_PROG_MKDIR
+ m4 macro explicitly (beware that this macro has been deprecated since
+ the previous Automake release 1.12.1, and will be removed in Automake
+ 1.13).
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New in 1.12.1:
@@ -123,7 +138,7 @@ New in 1.12.1:
- The long-obsolete (since 1.10) automake-provided $(mkdir_p) make
variable, @mkdir_p@ configure-time substitution and AM_PROG_MKDIR
m4 macro are deprecated, eliciting a warning in the 'obsolete'
- category. They will be removed in the next major version (1.13).
+ category.
* Miscellaneous changes:
diff --git a/configure.ac b/configure.ac
index 10fa93d..7d30762 100644
--- a/configure.ac
+++ b/configure.ac
@@ -559,7 +559,6 @@ AC_SUBST([EXEEXT])
## ---------------------- ##
AC_CONFIG_FILES([Makefile])
-AC_CONFIG_FILES([t/ax/test-runner], [chmod +x t/ax/test-runner])
AC_CONFIG_LINKS([GNUmakefile:GNUmakefile])
AC_CONFIG_LINKS([defs:defs])
diff --git a/lib/am/header-vars.am b/lib/am/header-vars.am
index ba4aa0b..c65e08c 100644
--- a/lib/am/header-vars.am
+++ b/lib/am/header-vars.am
@@ -77,6 +77,11 @@ NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
+# For better backward compatibility. To be removed once Automake 1.9.x
+# dies out for good. For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+mkdir_p = $(MKDIR_P)
+
## dejagnu.am uses these variables. Some users might rely on them too.
?BUILD?build_triplet = @build@
?HOST?host_triplet = @host@
diff --git a/t/README b/t/README
index f96fefe..1039d10 100644
--- a/t/README
+++ b/t/README
@@ -73,10 +73,10 @@ About the tests
with the '.tap' suffix use the TAP protocol.
If you want to run a test by hand, you should be able to do so using the
- 'test-runner' script:
+ 'runtest' script:
- ./t/ax/test-runner t/nogzip.sh
- ./t/ax/test-runner t/add-missing.tap
+ ./t/ax/runtest t/nogzip.sh
+ ./t/ax/runtest t/add-missing.tap
This will run the test using the correct shell, and should also work in
VPATH builds. Note that, to run the TAP tests this way, you'll need to
@@ -95,7 +95,7 @@ Supported shells
AM_TEST_RUNNER_SHELL=/bin/my-sh make -e check (non-GNU make)
# Run a test directly from the command line.
- AM_TEST_RUNNER_SHELL=/bin/my-sh ./t/ax/test-runner t/foo.sh
+ AM_TEST_RUNNER_SHELL=/bin/my-sh ./t/ax/runtest t/foo.sh
The test scripts are written with portability in mind, and should run
diff --git a/t/ax/test-runner.in b/t/ax/runtest.in
similarity index 100%
rename from t/ax/test-runner.in
rename to t/ax/runtest.in
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index 53b2439..78d7d9b 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -689,6 +689,7 @@ t/missing5.sh \
t/missing6.sh \
t/am-missing-prog.sh \
t/missing-auxfile-stops-makefiles-creation.sh \
+t/mkdir_p.sh \
t/mkdirp-deprecation.sh \
t/mkinstall.sh \
t/mkinst2.sh \
diff --git a/t/dist-included-parent-dir.sh b/t/mkdir_p.sh
similarity index 66%
copy from t/dist-included-parent-dir.sh
copy to t/mkdir_p.sh
index aed1051..624365c 100755
--- a/t/dist-included-parent-dir.sh
+++ b/t/mkdir_p.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002-2012 Free Software Foundation, Inc.
+# Copyright (C) 2012 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -14,7 +14,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Make sure included files in parent directory are distributed.
+# AM_INIT_AUTOMAKE should still define $(mkdir_p), for backward
+# compatibility.
. ./defs || exit 1
@@ -25,27 +26,26 @@ END
cat > Makefile.am << 'END'
SUBDIRS = sub
-test: distdir
- test -f $(distdir)/foo
- test -f $(distdir)/bar
- test 2 -gt `find $(distdir)/sub -type d | wc -l`
+all-local:
+ $(mkdir_p) . dir1/dir2
+check-local: all
+ test -d dir1/dir2
+ test -d dir1/dir3
END
-: > foo
-: > bar
-
mkdir sub
cat > sub/Makefile.am << 'END'
-include $(top_srcdir)/foo
-include ../bar
+# '$(mkdir_p)' should continue to work even in subdir makefiles.
+all-local:
+ $(mkdir_p) .. ../dir1/dir3
END
$ACLOCAL
-$AUTOCONF
+$AUTOCONF -Werror -Wall
$AUTOMAKE
-# Use --srcdir with an absolute path because it's harder
-# to support in 'distdir'.
-./configure --srcdir "$(pwd)"
-$MAKE test
+
+./configure
+$MAKE check-local
+$MAKE distcheck
:
diff --git a/t/mkdirp-deprecation.sh b/t/mkdirp-deprecation.sh
index 8482dea..0257391 100755
--- a/t/mkdirp-deprecation.sh
+++ b/t/mkdirp-deprecation.sh
@@ -14,13 +14,33 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Check that the AM_PROG_MKDIR_P macro is deprecated. It will be
-# be removed in the next major Automake release.
+# Check that the AM_PROG_MKDIR_P macro is deprecated; it will be
+# be removed in the next major Automake release. But also check
+# that it still works as expected in the current release series.
. ./defs || exit 1
-echo AM_PROG_MKDIR_P >> configure.ac
-: > Makefile.am
+cat >> configure.ac << 'END'
+AM_PROG_MKDIR_P
+AC_CONFIG_FILES([sub/Makefile])
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+SUBDIRS = sub
+all-local:
+ $(mkdir_p) . dir1/dir2
+check-local: all
+ test -d dir1/dir2
+ test -d dir1/dir3
+END
+
+mkdir sub
+cat > sub/Makefile.am << 'END'
+# '$(mkdir_p)' should continue to work even in subdir makefiles.
+all-local:
+ $(mkdir_p) .. ../dir1/dir3
+END
grep_err ()
{
@@ -38,11 +58,15 @@ grep_err
$AUTOCONF -Werror -Wno-obsolete
-#AUTOMAKE_fails
-#grep_err
+AUTOMAKE_fails
+grep_err
AUTOMAKE_fails --verbose -Wnone -Wobsolete
grep_err
$AUTOMAKE -Wno-obsolete
+./configure
+$MAKE check-local
+$MAKE distcheck
+
:
diff --git a/t/parallel-tests-log-override-recheck.sh
b/t/parallel-tests-log-override-recheck.sh
index 79c16fc..a6ab216 100755
--- a/t/parallel-tests-log-override-recheck.sh
+++ b/t/parallel-tests-log-override-recheck.sh
@@ -64,6 +64,8 @@ filter_stdout ()
$MAKE check >stdout && { cat stdout; exit 1; }
cat stdout
+using_gmake || $sleep # Required by BSD make.
+
chmod a-rw test-suite.log
TEST_SUITE_LOG=my.log $MAKE -e recheck >stdout \
&& { cat stdout; exit 1; }
diff --git a/t/test-metadata-recheck.sh b/t/test-metadata-recheck.sh
index 8675747..4f2d29b 100755
--- a/t/test-metadata-recheck.sh
+++ b/t/test-metadata-recheck.sh
@@ -153,6 +153,7 @@ rm -f *.run
# fields indicating success, so "make recheck" must pass. Still, the
# next "make recheck" call should still re-run the same set of tests.
for iteration in 1 2; do
+ using_gmake || $sleep # Required by BSD make.
$MAKE recheck
ls -l
for t in $rechecked; do test -f $t.run; done
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.12.1-109-g5197aba,
Stefano Lattarini <=