about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-10-30 04:32:08 +0000
committerbors <bors@rust-lang.org>2014-10-30 04:32:08 +0000
commitd1fc2dec79689fe6bd37c95f3fe5b7acd476fff6 (patch)
tree8934ee1740d57c9cf1ef2fae816fe9bd7885a850
parent15dd90b6475c7a44c9b95044c91519d9464bbcc4 (diff)
parentb8e7c4fcb9655ff92f8f2feba4ba4221646acc6f (diff)
downloadrust-d1fc2dec79689fe6bd37c95f3fe5b7acd476fff6.tar.gz
rust-d1fc2dec79689fe6bd37c95f3fe5b7acd476fff6.zip
auto merge of #18448 : brson/rust/clean-llvm, r=alexcrichton
When building for multiple targets, the initial 'make' invocation
always fails. The missing build stamp causes clean-llvm to be
invoked, but clean-llvm cleans *all* llvm builds. So what happens
is that 1) all llvm's are cleaned (a no-op), 2) llvm-${target1}
builds, 3) all llvm's are cleaned (deleting llvm-${target1}),
4) llvm-${target2} is built, 5) the remaining build for ${target1}
fails because llvm does not exist.

This makes the clean operation only clean the correct llvm build.
Should greatly reduce bot failures.
-rw-r--r--mk/llvm.mk2
1 files changed, 1 insertions, 1 deletions
diff --git a/mk/llvm.mk b/mk/llvm.mk
index 177e4de3103..bce43902056 100644
--- a/mk/llvm.mk
+++ b/mk/llvm.mk
@@ -38,7 +38,7 @@ endif
 # the stamp in the source dir.
 $$(LLVM_STAMP_$(1)): $(S)src/rustllvm/llvm-auto-clean-trigger
 	@$$(call E, make: cleaning llvm)
-	$(Q)$(MAKE) clean-llvm
+	$(Q)$(MAKE) clean-llvm$(1)
 	@$$(call E, make: done cleaning llvm)
 	touch $$@