7ebb4817

Created Started Cancelled

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Compile an instrumented library once, not twice

A library whose test suites this check runs was built twice from the same
source with the same flags: once for its manifest, and once with
'--enable-tests', which is what produces the test executables. Nothing was
shared between them, so a check paid for the whole library twice on a cold
build, and for a large one that is the bulk of what it costs.

The second build writes a manifest of its own, because the plugin runs over
the library there just as it does in the first, and for the same revision the
two are byte-identical. So the manifest comes from whichever build the check
needs anyway, and for a package whose suites are run here the instrument-only
build is never realised. A library whose suites belong to another package has
no such build and is unaffected.