[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#11347: the remake rules in the automake test suite are too greedy
From: |
Eric Blake |
Subject: |
bug#11347: the remake rules in the automake test suite are too greedy |
Date: |
Thu, 26 Apr 2012 08:28:32 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120329 Thunderbird/11.0.1 |
On 04/26/2012 07:10 AM, Stefano Lattarini wrote:
>> >
> And here is a patch. The change itself is obvious, but I'd like a review
> on the long-winded commit message. I will push by tomorrow if there is no
> review by then.
>
>
> The described situation could hinder hinder on-field testing or debugging
s/hinder hinder on-field/hinder in-field/
> 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 23-40-2012, "[ng] build: define $(TESTS)
s/23-40-2012/2012-04-23/ (typo, plus day/month/year can be ambiguous
with month/day/year, whereas the ISO ordering of year/month/day tends to
be unambiguous).
> through a wildcard").
>
> This is not a serious regression in the faithfulness of the Automake
> build systems, since it that already had several undeclared dependencies
s/that /unfortunately /
> unfortunately; e.g., 'Makefile.in' should depend on the automake script,
s/unfortunately//
> 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.
> -$(generated_TESTS) $(srcdir)/t/testsuite-part.am: \
> - $(srcdir)/gen-testsuite-part \
> - t/list-of-tests.mk \
> - Makefile.am \
> - $(handwritten_TESTS)
> +## The dependnecies declared here are not truly complete, but such a
s/dependnecies/dependencies/; s/such a/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)
> -- 1.7.9.5
>
--
Eric Blake address@hidden +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature