[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-11-g0
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.12-11-g018a186 |
Date: |
Thu, 26 Apr 2012 18:16:31 +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=018a186636ba4078496f56a945d25087bca127a3
The branch, maint has been updated
via 018a186636ba4078496f56a945d25087bca127a3 (commit)
via ab14841acb906346345c9298ef50621d298f4a28 (commit)
from ae3d5dfc50f05470b791ec7f67ca8b401915c3ee (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 018a186636ba4078496f56a945d25087bca127a3
Author: Stefano Lattarini <address@hidden>
Date: Thu Apr 26 17:47:14 2012 +0200
maint: don't use "union" merge driver for NEWS anymore
The use of the "union" merge driver to avoid conflicts in NEWS has
proven to be problematic, as it often silently produced mis-merges
(instead of spurious conflicts, but a spurious conflict is better
than a mis-merge). Also, our new branching policy (see automake
bug#11153 for a description) should greatly mitigate the problem of
merge conflicts in NEWS. For further discussion, see:
<http://lists.gnu.org/archive/html/automake-patches/2012-04/msg00148.html>
Signed-off-by: Stefano Lattarini <address@hidden>
commit ab14841acb906346345c9298ef50621d298f4a28
Author: Stefano Lattarini <address@hidden>
Date: Thu Apr 26 15:05:05 2012 +0200
build: avoid too greedy rebuilds in the testsuite
The autogenerated makefile fragment 't/testsuite-part.am' used to depend
on the list of *all* the hand-written files. This was technically correct,
since that makefile fragment was (and still is) generated by the script
'gen-testsuite-part', which scans all the hand-written files to detect
implicit dependencies and to decide for which tests a further wrapper test
should be generated.
However, the presence of such a dependency implied that, whenever *any*
test case was modified (no matter how slightly), the 't/testsuite-part.am'
file was rebuilt, and since that is included by our 'Makefile.am', the
'Makefile.in' file was rebuilt as well by automake. In order to do so,
automake scanned our 'configure.ac' file, which requires the latest
Autoconf version (2.69 at the time of writing), and the casual user can
easily lack that on his machine (and that should be allowed, as automake
currently supports any autoconf version >= 2.62).
The described situation could hinder in-field testing or debugging by
users (even experienced ones) that are not automake developers; see for
example automake bug#11347.
So we drop the explicit dependency of 't/testsuite-part.am' on the
hand-written test cases. (As an aside, note that this has already
been done in Automake-NG, albeit for other reasons; see the commit
'v1.11b-129-g1690aca' of 2012-04-23, "[ng] build: define $(TESTS)
through a wildcard").
This is not a serious regression in the faithfulness of the Automake
build systems, since it unfortunately already had several undeclared
dependencies; e.g., 'Makefile.in' should depend on the automake script,
and 'aclocal.m4' should depend on the aclocal script (but this isn't
possible, as it would mean that distributed files depend on ones generated
at make time). Similarly, 'Makefile.in' should depend on some of the
'lib/am/*.am' files, but does not.
Currently, the workaround to get a faithful and correct rebuild is to run
./bootstrap && ./config.status --recheck && make clean all
and the present commit does not change that.
* Makefile.am ($(srcdir)/t/testsuite-part.am): Don't depend on
't/list-of-tests.mk' nor on '$(handwritten_TESTS)' anymore.
($(generated_TESTS)): Likewise, and don't depend on 'Makefile.am'
either.
Signed-off-by: Stefano Lattarini <address@hidden>
-----------------------------------------------------------------------
Summary of changes:
.gitattributes | 1 -
Makefile.am | 10 +++++-----
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/.gitattributes b/.gitattributes
index 5126add..0d86adb 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,2 +1 @@
-NEWS merge=union
*.texi* diff=texinfo
diff --git a/Makefile.am b/Makefile.am
index dc8932d..0d02de7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -379,11 +379,11 @@ $(srcdir)/t/testsuite-part.am:
$(AM_V_at)mv -f t/testsuite-part.tmp $@
EXTRA_DIST += gen-testsuite-part
-$(generated_TESTS) $(srcdir)/t/testsuite-part.am: \
- $(srcdir)/gen-testsuite-part \
- t/list-of-tests.mk \
- Makefile.am \
- $(handwritten_TESTS)
+## The dependecies declared here are not truly complete, but such
+## completeness would cause more issues than it would solve. See
+## automake bug#11347.
+$(generated_TESTS): $(srcdir)/gen-testsuite-part
+$(srcdir)/t/testsuite-part.am: $(srcdir)/gen-testsuite-part Makefile.am
# Static dependencies valid for each test case.
check_SCRIPTS = t/wrap/aclocal-$(APIVERSION) t/wrap/automake-$(APIVERSION)
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.12-11-g018a186,
Stefano Lattarini <=