diff options
| author | bors <bors@rust-lang.org> | 2013-08-31 17:35:39 -0700 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2013-08-31 17:35:39 -0700 |
| commit | 617850131b795312c4dd404ae7d853b54d883105 (patch) | |
| tree | 493f3c83e8d7c1cb2d4e6740625599042bc8ae1b | |
| parent | a60c6a8b18b4b3ff3426076a7511938a72fe9d19 (diff) | |
| parent | b1a22518f0c687db008c4abf5e8e0411fb58c2f5 (diff) | |
| download | rust-617850131b795312c4dd404ae7d853b54d883105.tar.gz rust-617850131b795312c4dd404ae7d853b54d883105.zip | |
auto merge of #8907 : pnkfelix/rust/fsk-fix-makefile-8865, r=thestinger
Fix #8865.
| -rw-r--r-- | mk/stage0.mk | 4 | ||||
| -rw-r--r-- | mk/target.mk | 17 |
2 files changed, 17 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 0d798f4cc1b..0ddeb84e06a 100644 --- a/mk/target.mk +++ b/mk/target.mk @@ -27,18 +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))/ + | $$(TLIB$(1)_T_$(2)_H_$(3))/ \ + $(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))/ + | $$(TLIB$(1)_T_$(2)_H_$(3))/ \ + $(SNAPSHOT_RUSTC_POST_CLEANUP) @$$(call E, cp: $$@) $$(Q)cp $$< $$@ @@ -77,7 +87,8 @@ 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))/ + | $$(TLIB$(1)_T_$(2)_H_$(3))/ \ + $(SNAPSHOT_RUSTC_POST_CLEANUP) @$$(call E, cp: $$@) $$(Q)cp $$< $$@ |
