about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFelix S. Klock II <pnkfelix@pnkfx.org>2013-09-01 00:53:56 +0200
committerFelix S. Klock II <pnkfelix@pnkfx.org>2013-09-01 00:53:56 +0200
commitb1a22518f0c687db008c4abf5e8e0411fb58c2f5 (patch)
tree1650ecc86745300d1b9e77f0899f5ff2642fc0c0
parentf61713a5eb91b7cb9d11405e1bb1c7d94504a41b (diff)
downloadrust-b1a22518f0c687db008c4abf5e8e0411fb58c2f5.tar.gz
rust-b1a22518f0c687db008c4abf5e8e0411fb58c2f5.zip
small cleanup of previous commit with mucho comments.
-rw-r--r--mk/stage0.mk4
-rw-r--r--mk/target.mk14
2 files changed, 14 insertions, 4 deletions
diff --git a/mk/stage0.mk b/mk/stage0.mk
index 7d0255db4ac..b11dca3aa06 100644
--- a/mk/stage0.mk
+++ b/mk/stage0.mk
@@ -6,7 +6,9 @@ $(HBIN0_H_$(CFG_BUILD_TRIPLE))/:
 $(HLIB0_H_$(CFG_BUILD_TRIPLE))/:
 	mkdir -p $@
 
-$(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD_TRIPLE)):		\
+SNAPSHOT_RUSTC_POST_CLEANUP=$(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD_TRIPLE))
+
+$(SNAPSHOT_RUSTC_POST_CLEANUP):						\
 		$(S)src/snapshots.txt					\
 		$(S)src/etc/get-snapshot.py $(MKFILE_DEPS)		\
 		| $(HBIN0_H_$(CFG_BUILD_TRIPLE))/
diff --git a/mk/target.mk b/mk/target.mk
index 2d6074c5a05..0ddeb84e06a 100644
--- a/mk/target.mk
+++ b/mk/target.mk
@@ -27,20 +27,28 @@ WFLAGS_ST2 = -D warnings
 # $(2) is the target triple
 # $(3) is the host triple
 
+# Every recipe in TARGET_STAGE_N outputs to $$(TLIB$(1)_T_$(2)_H_$(3),
+# a directory that can be cleaned out during the middle of a run of
+# the get-snapshot.py script.  Therefore, every recipe needs to have
+# an order-only dependency either on $(SNAPSHOT_RUSTC_POST_CLEANUP) or
+# on $$(TSREQ$(1)_T_$(2)_H_$(3)), to ensure that no products will be
+# put into the target area until after the get-snapshot.py script has
+# had its chance to clean it out; otherwise the other products will be
+# inadvertantly included in the clean out.
 
 define TARGET_STAGE_N
 
 $$(TLIB$(1)_T_$(2)_H_$(3))/libmorestack.a: \
 		rt/$(2)/stage$(1)/arch/$$(HOST_$(2))/libmorestack.a \
 		| $$(TLIB$(1)_T_$(2)_H_$(3))/ \
-		  $(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD_TRIPLE))
+		  $(SNAPSHOT_RUSTC_POST_CLEANUP)
 	@$$(call E, cp: $$@)
 	$$(Q)cp $$< $$@
 
 $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_RUNTIME_$(2)): \
 		rt/$(2)/stage$(1)/$(CFG_RUNTIME_$(2)) \
 		| $$(TLIB$(1)_T_$(2)_H_$(3))/ \
-		  $(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD_TRIPLE))
+		  $(SNAPSHOT_RUSTC_POST_CLEANUP)
 	@$$(call E, cp: $$@)
 	$$(Q)cp $$< $$@
 
@@ -80,7 +88,7 @@ ifneq ($$(findstring $(2),$$(CFG_HOST_TRIPLES)),)
 $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_RUSTLLVM_$(3)): \
 		rustllvm/$(2)/$(CFG_RUSTLLVM_$(3)) \
 		| $$(TLIB$(1)_T_$(2)_H_$(3))/ \
-		  $(HBIN0_H_$(CFG_BUILD_TRIPLE))/rustc$(X_$(CFG_BUILD_TRIPLE))
+		  $(SNAPSHOT_RUSTC_POST_CLEANUP)
 	@$$(call E, cp: $$@)
 	$$(Q)cp $$< $$@