@@ -70,7 +70,8 @@ ifdef CFG_WINDOWSY
70
70
CFG_LIB_NAME =$(1 ) .dll
71
71
CFG_LDPATH :=$(CFG_LDPATH ) :$(CFG_LLVM_BINDIR )
72
72
CFG_LDPATH :=$(CFG_LDPATH ) :$$PATH
73
- CFG_RUN_TARG=PATH =$(CFG_LDPATH ) $(1 )
73
+ CFG_RUN_TEST=PATH ="$(CFG_LDPATH ) " $(1 )
74
+ CFG_RUN_TARG=PATH ="$(CFG_LDPATH ) " $(1 )
74
75
75
76
CFG_PATH_MUNGE := $(strip | perl -p \
76
77
-e 's@\\(.) @/\1@go;' \
@@ -88,6 +89,8 @@ ifdef CFG_UNIXY
88
89
CFG_EXE_SUFFIX :=
89
90
CFG_LDPATH :=$(CFG_LDPATH ) :$(CFG_LLVM_LIBDIR )
90
91
CFG_RUN_TARG =\
92
+ LD_LIBRARY_PATH=$(dir $(1 ) ) :$(CFG_LDPATH ) $(1 )
93
+ CFG_RUN_TEST =\
91
94
LD_LIBRARY_PATH=$(dir $(1 ) ) :$(CFG_LDPATH ) $(CFG_VALGRIND ) $(1 )
92
95
93
96
CFG_BOOT_NATIVE := 1
@@ -98,6 +101,7 @@ ifdef CFG_UNIXY
98
101
CFG_LDPATH :=$(CFG_LDPATH ) :$(CFG_LLVM_BINDIR )
99
102
CFG_LDPATH :=$(CFG_LDPATH ) :$$PATH
100
103
CFG_RUN_TARG=PATH =$(CFG_LDPATH ) $(1 )
104
+ CFG_RUN_TEST=PATH =$(CFG_LDPATH ) $(1 )
101
105
102
106
CFG_INFO := $(info cfg: mingw-cross)
103
107
CFG_GCC_CROSS := i586-mingw32msvc-
@@ -116,7 +120,7 @@ ifdef CFG_UNIXY
116
120
CFG_VALGRIND += --leak-check=full \
117
121
--error-exitcode=1 \
118
122
--quiet --vex-iropt-level=0 \
119
- --suppressions=$(S ) src/etc/x86.supp
123
+ --suppressions=$(CFG_SRC_DIR ) src/etc/x86.supp
120
124
endif
121
125
endif
122
126
179
183
endif
180
184
181
185
R := $(CFG_RUN_TARG )
186
+ T := $(CFG_RUN_TEST )
182
187
S := $(CFG_SRC_DIR )
183
188
X := $(CFG_EXE_SUFFIX )
184
189
@@ -187,8 +192,8 @@ VPATH := $(S)doc $(S)src
187
192
188
193
# Compilers we build, we now know how to run.
189
194
BOOT := $(Q ) OCAMLRUNPARAM="b1" boot/rustboot$(X ) $(CFG_BOOT_FLAGS ) -L boot
190
- STAGE0 := $(Q )$(CFG_RUN_TARG ) stage0/rustc$(X ) $(CFG_RUSTC_FLAGS ) -L stage0
191
- STAGE1 := $(Q )$(CFG_RUN_TARG ) stage1/rustc$(X ) $(CFG_RUSTC_FLAGS ) -L stage1
195
+ STAGE0 := $(Q )$(R ) stage0/rustc$(X ) $(CFG_RUSTC_FLAGS ) -L stage0
196
+ STAGE1 := $(Q )$(R ) stage1/rustc$(X ) $(CFG_RUSTC_FLAGS ) -L stage1
192
197
193
198
# "Source" files we generate in builddir along the way.
194
199
GENERATED := boot/fe/lexer.ml boot/version.ml
@@ -554,27 +559,27 @@ llvmext/%.o: llvmext/%.cpp $(MKFILES)
554
559
test/run-pass/% .out.tmp : test/run-pass/% $(CFG_EXE_SUFFIX ) rt/$(CFG_RUNTIME )
555
560
$(Q ) rm -f $< .tmp
556
561
@$(call E, run: $@ )
557
- $(Q )$(call CFG_RUN_TARG , $< ) > $@
562
+ $(Q )$(call T , $< ) > $@
558
563
559
564
test/bench/shootout/% .out.tmp : test/bench/shootout/% $(X ) \
560
565
rt/$(CFG_RUNTIME)
561
566
$(Q)rm -f $<.tmp
562
567
@$(call E, run: $@)
563
- $(Q)$(call CFG_RUN_TARG , $<) > $@
568
+ $(Q)$(call T , $<) > $@
564
569
565
570
test/bench/99-bottles/% .out.tmp : test/bench/99-bottles/% $(X ) \
566
571
rt/$(CFG_RUNTIME)
567
572
$(Q)rm -f $<.tmp
568
573
@$(call E, run: $@)
569
- $(Q)$(call CFG_RUN_TARG , $<) > $@
574
+ $(Q)$(call T , $<) > $@
570
575
571
576
test/run-fail/% .out.tmp : test/run-fail/% $(X ) \
572
577
rt/$(CFG_RUNTIME)
573
578
$(Q)rm -f $<.tmp
574
579
@$(call E, run: $@)
575
580
$(Q)grep -q error-pattern $(S)src/test/run-fail/$(basename $*).rs
576
581
$(Q)rm -f $@
577
- $(Q)$(call CFG_RUN_TARG , $<) >$@ 2>&1 ; X=$$? ; \
582
+ $(Q)$(call T , $<) >$@ 2>&1 ; X=$$? ; \
578
583
if [ $$X -eq 0 ] ; then exit 1 ; else exit 0 ; fi
579
584
$(Q)grep --text --quiet \
580
585
"$$(grep error-pattern $(S)src/test/run-fail/$(basename $*).rs \
@@ -596,6 +601,15 @@ test/compile-fail/%.stage0.out.tmp: test/compile-fail/%.rs $(SREQ0)
596
601
$(Q ) grep --text --quiet \
597
602
"$$(grep error-pattern $< | cut -d : -f 2- | tr -d '\n\r')" $@
598
603
604
+ # #####################################################################
605
+ # Distribution
606
+ # #####################################################################
607
+
608
+ PKG_NAME := rust
609
+ PKG_VER = $(shell date +"% Y-% m-% d") -snap
610
+ PKG_DIR = $(PKG_NAME ) -$(PKG_VER )
611
+ PKG_TAR = $(PKG_DIR ) .tar.gz
612
+
599
613
600
614
# #####################################################################
601
615
# Cleanup
@@ -605,12 +619,23 @@ test/compile-fail/%.stage0.out.tmp: test/compile-fail/%.rs $(SREQ0)
605
619
606
620
clean :
607
621
@$(call E, cleaning)
608
- $(Q ) rm -f $(foreach ext, cmx cmi cmo cma bc o a d $(X ) \
609
- h cpp ml s \
610
- out bc dSYM \
611
- , \
612
- $(wildcard *.$(ext) \
613
- */*.$(ext) \
614
- */*/*.$(ext) \
615
- */*/*/*.$(ext) \
616
- ))
622
+ $(Q ) rm -f $(RUNTIME_OBJS )
623
+ $(Q ) rm -f $(LLVMEXT_OBJS )
624
+ $(Q ) rm -f $(BOOT_CMOS ) $(BOOT_CMIS ) $(BOOT_CMXS ) $(BOOT_OBJS )
625
+ $(Q ) rm -f $(ML_DEPFILES ) $(C_DEPFILES ) $(CRATE_DEPFILES )
626
+ $(Q ) rm -f $(ML_DEPFILES:%.d=%.d.tmp )
627
+ $(Q ) rm -f $(C_DEPFILES:%.d=%.d.tmp )
628
+ $(Q ) rm -f $(CRATE_DEPFILES:%.d=%.d.tmp )
629
+ $(Q ) rm -f $(GENERATED )
630
+ $(Q ) rm -f boot/rustboot$(X ) boot/$(CFG_STDLIB )
631
+ $(Q ) rm -f stage0/rustc$(X ) stage0/$(CFG_STDLIB ) stage0/glue*
632
+ $(Q ) rm -f stage1/rustc$(X ) stage1/$(CFG_STDLIB ) stage1/glue*
633
+ $(Q ) rm -f stage2/rustc$(X ) stage2/$(CFG_STDLIB ) stage2/glue*
634
+ $(Q ) rm -f llvmext/$(CFG_LLVMEXT ) rt/$(CFG_RUNTIME )
635
+ $(Q ) rm -Rf $(PKG_NAME ) -* .tar.gz dist
636
+ $(Q ) rm -f $(foreach ext,cmx cmi cmo cma bc o a d exe,\
637
+ $(wildcard boot/*/*.$(ext) boot/*/*/*.$(ext)))
638
+ $(Q)rm -Rf $(foreach ext,out out.tmp \
639
+ boot$(X) stage0$(X) stage1$(X) stage2$(X) \
640
+ bc o s exe dSYM, \
641
+ $(wildcard test/*/*.$(ext)))
0 commit comments