1 include ../../run-make-fulldeps/tools.mk
3 # Different optimization levels imply different values for `-Zshare-generics`,
4 # so try out a whole bunch of combinations to make sure everything is compatible
6 # First up, try some defaults
7 $(RUSTC) --crate-type rlib foo.rs
8 $(RUSTC) --crate-type dylib bar.rs -C opt-level=3
10 # Next try mixing up some things explicitly
11 $(RUSTC) --crate-type rlib foo.rs -Z share-generics=no
12 $(RUSTC) --crate-type dylib bar.rs -Z share-generics=no
13 $(RUSTC) --crate-type rlib foo.rs -Z share-generics=no
14 $(RUSTC) --crate-type dylib bar.rs -Z share-generics=yes
15 $(RUSTC) --crate-type rlib foo.rs -Z share-generics=yes
16 $(RUSTC) --crate-type dylib bar.rs -Z share-generics=no
17 $(RUSTC) --crate-type rlib foo.rs -Z share-generics=yes
18 $(RUSTC) --crate-type dylib bar.rs -Z share-generics=yes
20 # Now combine a whole bunch of options together
21 $(RUSTC) --crate-type rlib foo.rs
22 $(RUSTC) --crate-type dylib bar.rs
23 $(RUSTC) --crate-type dylib bar.rs -Z share-generics=no
24 $(RUSTC) --crate-type dylib bar.rs -Z share-generics=yes
25 $(RUSTC) --crate-type dylib bar.rs -C opt-level=1
26 $(RUSTC) --crate-type dylib bar.rs -C opt-level=1 -Z share-generics=no
27 $(RUSTC) --crate-type dylib bar.rs -C opt-level=1 -Z share-generics=yes
28 $(RUSTC) --crate-type dylib bar.rs -C opt-level=2
29 $(RUSTC) --crate-type dylib bar.rs -C opt-level=2 -Z share-generics=no
30 $(RUSTC) --crate-type dylib bar.rs -C opt-level=2 -Z share-generics=yes
31 $(RUSTC) --crate-type dylib bar.rs -C opt-level=3
32 $(RUSTC) --crate-type dylib bar.rs -C opt-level=3 -Z share-generics=no
33 $(RUSTC) --crate-type dylib bar.rs -C opt-level=3 -Z share-generics=yes
34 $(RUSTC) --crate-type dylib bar.rs -C opt-level=s
35 $(RUSTC) --crate-type dylib bar.rs -C opt-level=s -Z share-generics=no
36 $(RUSTC) --crate-type dylib bar.rs -C opt-level=s -Z share-generics=yes
37 $(RUSTC) --crate-type dylib bar.rs -C opt-level=z
38 $(RUSTC) --crate-type dylib bar.rs -C opt-level=z -Z share-generics=no
39 $(RUSTC) --crate-type dylib bar.rs -C opt-level=z -Z share-generics=yes