1 include ../../run-make-fulldeps/tools.mk
5 # --emit KIND=PATH should not affect crate hash vs --emit KIND
6 all: $(OUT)/a/libfoo.rlib $(OUT)/b/libfoo.rlib $(OUT)/c/libfoo.rlib \
8 $(RUSTC) -Zls $(TMPDIR)/libfoo.rlib > $(TMPDIR)/base.txt
9 $(RUSTC) -Zls $(OUT)/a/libfoo.rlib > $(TMPDIR)/a.txt
10 $(RUSTC) -Zls $(OUT)/b/libfoo.rlib > $(TMPDIR)/b.txt
11 $(RUSTC) -Zls $(OUT)/c/libfoo.rlib > $(TMPDIR)/c.txt
13 diff $(TMPDIR)/base.txt $(TMPDIR)/a.txt
14 diff $(TMPDIR)/base.txt $(TMPDIR)/b.txt
16 # Different KIND parameters do affect hash.
17 # diff exits 1 on difference, 2 on trouble
18 diff $(TMPDIR)/base.txt $(TMPDIR)/c.txt ; test "$$?" -eq 1
21 $(TMPDIR)/libfoo.rlib: foo.rs
22 $(RUSTC) --emit link foo.rs
24 # Output named with -o
25 $(OUT)/a/libfoo.rlib: foo.rs
27 $(RUSTC) --emit link -o $@ foo.rs
29 # Output named with KIND=PATH
30 $(OUT)/b/libfoo.rlib: foo.rs
32 $(RUSTC) --emit link=$@ foo.rs
34 # Output multiple kinds
35 $(OUT)/c/libfoo.rlib: foo.rs
37 $(RUSTC) --emit link=$@,metadata foo.rs