about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2013-09-03 23:47:13 -0700
committerAlex Crichton <alex@alexcrichton.com>2013-09-03 23:47:13 -0700
commit44be4a47372a1e2d791db2fbacf4543e6eaeacbf (patch)
treebff7037b9eaab546da7110e143a31cbf377cf9a4
parent1fbbc71a335996a1a8e5560117bde956a54816cb (diff)
downloadrust-44be4a47372a1e2d791db2fbacf4543e6eaeacbf.tar.gz
rust-44be4a47372a1e2d791db2fbacf4543e6eaeacbf.zip
Move the llvm auto-clean stamp into $target/llvm
-rw-r--r--Makefile.in11
-rw-r--r--mk/llvm.mk12
2 files changed, 12 insertions, 11 deletions
diff --git a/Makefile.in b/Makefile.in
index 0575f48c4c4..ecccddb0cfa 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -574,19 +574,10 @@ ALL_TARGET_RULES = $(foreach target,$(CFG_TARGET_TRIPLES), \
 	$(foreach host,$(CFG_HOST_TRIPLES), \
  all-target-$(target)-host-$(host)))
 
-all: rustllvm/llvm-auto-clean-stamp \
-     $(ALL_TARGET_RULES) $(GENERATED) docs
+all: $(ALL_TARGET_RULES) $(GENERATED) docs
 
 endif
 
-# This is used to independently force an LLVM clean rebuild
-# when we changed something not otherwise captured by builtin
-# dependencies. In these cases, commit a change that touches
-# the stamp in the source dir.
-rustllvm/llvm-auto-clean-stamp: $(S)src/rustllvm/llvm-auto-clean-trigger
-	$(Q)$(MAKE) clean-llvm
-	touch $@
-
 
 ######################################################################
 # Re-configuration
diff --git a/mk/llvm.mk b/mk/llvm.mk
index 12ccc55d4fa..9e024ffa9f4 100644
--- a/mk/llvm.mk
+++ b/mk/llvm.mk
@@ -24,12 +24,22 @@ define DEF_LLVM_RULES
 # If CFG_LLVM_ROOT is defined then we don't build LLVM ourselves
 ifeq ($(CFG_LLVM_ROOT),)
 
-$$(LLVM_CONFIG_$(1)): $$(LLVM_DEPS)
+LLVM_STAMP_$(1) = $$(CFG_LLVM_BUILD_DIR_$(1))/llvm-auto-clean-stamp
+
+$$(LLVM_CONFIG_$(1)): $$(LLVM_DEPS) $$(LLVM_STAMP_$(1))
 	@$$(call E, make: llvm)
 	$$(Q)$$(MAKE) -C $$(CFG_LLVM_BUILD_DIR_$(1)) $$(CFG_LLVM_BUILD_ENV)
 	$$(Q)touch $$(LLVM_CONFIG_$(1))
 endif
 
+# This is used to independently force an LLVM clean rebuild
+# when we changed something not otherwise captured by builtin
+# dependencies. In these cases, commit a change that touches
+# the stamp in the source dir.
+$$(LLVM_STAMP_$(1)): $(S)src/rustllvm/llvm-auto-clean-trigger
+	$(Q)$(MAKE) clean-llvm
+	touch $$@
+
 endef
 
 $(foreach host,$(CFG_HOST_TRIPLES), \