about summary refs log tree commit diff
path: root/src/test/run-pass/thinlto
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-01-13 15:11:34 -0800
committerAlex Crichton <alex@alexcrichton.com>2017-01-13 15:11:34 -0800
commit36a926a2164f8e7eaed7bbfd261f11976243cb76 (patch)
treec27f6720fcc6fd7dccfba5af8c4d3cde4e5d082f /src/test/run-pass/thinlto
parentb0c52c587fe9ba287053359fff5ed886b7edb27c (diff)
downloadrust-36a926a2164f8e7eaed7bbfd261f11976243cb76.tar.gz
rust-36a926a2164f8e7eaed7bbfd261f11976243cb76.zip
rustbuild: Skip the build_helper crate in tests
I've been noticing some spurious recompiles of the final stage on Travis lately
and in debugging them I found a case where we were a little to eager to update
a stamp file due to the build_helper library being introduced during the testing
phase.

Part of the rustbuild system detects when libstd is recompiled and automatically
cleans out future directories to ensure that dirtyness propagation works. To do
this rustbuild doesn't know the artifact name of the standard library so it just
probes everything in the target directory, looking to see if anything changed.

The problem here happened where:

* First, rustbuild would compile everything (a normal build)
* Next, rustbuild would run all tests
* During testing, the libbuild_helper library was introduced into the target
  directory, making it look like a change happened because a file is newer
  than the newest was before
* Detecting a change, the next compilation would then cause rustbuild to clean
  out old artifacts and recompile everything again.

This commit fixes this problem by correcting rustbuild to just not test the
build_helper crate at all. This crate doesn't have any unit tests, nor is it
intended to. That way the target directories should stay the same throughout
testing after a previous build.
Diffstat (limited to 'src/test/run-pass/thinlto')
0 files changed, 0 insertions, 0 deletions