]> git.lizzy.rs Git - rust.git/blob - tests/run-make/emit-path-unhashed/Makefile
Rollup merge of #106692 - eggyal:mv-binary_heap.rs-binary_heap/mod.rs, r=Mark-Simulacrum
[rust.git] / tests / run-make / emit-path-unhashed / Makefile
1 include ../../run-make-fulldeps/tools.mk
2
3 OUT=$(TMPDIR)/emit
4
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 \
7                 $(TMPDIR)/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
12
13         diff $(TMPDIR)/base.txt $(TMPDIR)/a.txt
14         diff $(TMPDIR)/base.txt $(TMPDIR)/b.txt
15
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
19
20 # Default output name
21 $(TMPDIR)/libfoo.rlib: foo.rs
22         $(RUSTC) --emit link foo.rs
23
24 # Output named with -o
25 $(OUT)/a/libfoo.rlib: foo.rs
26         mkdir -p $(OUT)/a
27         $(RUSTC) --emit link -o $@ foo.rs
28
29 # Output named with KIND=PATH
30 $(OUT)/b/libfoo.rlib: foo.rs
31         mkdir -p $(OUT)/b
32         $(RUSTC) --emit link=$@ foo.rs
33
34 # Output multiple kinds
35 $(OUT)/c/libfoo.rlib: foo.rs
36         mkdir -p $(OUT)/c
37         $(RUSTC) --emit link=$@,metadata foo.rs