rewrite relocation-model to rmake · rust-lang/rust@75ee1d7 (original) (raw)

File tree

3 files changed

lines changed

3 files changed

lines changed

Original file line number Diff line number Diff line change
@@ -164,7 +164,6 @@ run-make/raw-dylib-inline-cross-dylib/Makefile
164 164 run-make/raw-dylib-link-ordinal/Makefile
165 165 run-make/raw-dylib-stdcall-ordinal/Makefile
166 166 run-make/redundant-libs/Makefile
167 -run-make/relocation-model/Makefile
168 167 run-make/relro-levels/Makefile
169 168 run-make/remap-path-prefix-dwarf/Makefile
170 169 run-make/remap-path-prefix/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
1 +// Generation of position-independent code (PIC) can be altered
2 +// through use of the -C relocation-model rustc flag. This test
3 +// uses varied values with this flag and checks that compilation
4 +// succeeds.
5 +// See https://github.com/rust-lang/rust/pull/13340
6 +
7 +//@ ignore-cross-compile
8 +
9 +use run_make_support::{run, rustc};
10 +
11 +fn main() {
12 +// FIXME(Oneirical): This first one will likely fail on MSVC due to #28026.
13 +// Remove this after try-job
14 +rustc().arg("-Crelocation-model=static").input("foo.rs").run();
15 +run("foo");
16 +rustc().arg("-Crelocation-model=dynamic-no-pic").input("foo.rs").run();
17 +run("foo");
18 +rustc().arg("-Crelocation-model=default").input("foo.rs").run();
19 +run("foo");
20 +rustc()
21 +.arg("-Crelocation-model=dynamic-no-pic")
22 +.crate_type("dylib")
23 +.emit("link,obj")
24 +.input("foo.rs")
25 +.run();
26 +}