File tree 4 files changed +29
-16
lines changed
raw-dylib-inline-cross-dylib
4 files changed +29
-16
lines changed Original file line number Diff line number Diff line change @@ -119,7 +119,6 @@ run-make/profile/Makefile
119
119
run-make/prune-link-args/Makefile
120
120
run-make/raw-dylib-alt-calling-convention/Makefile
121
121
run-make/raw-dylib-c/Makefile
122
- run-make/raw-dylib-custom-dlltool/Makefile
123
122
run-make/raw-dylib-import-name-type/Makefile
124
123
run-make/raw-dylib-link-ordinal/Makefile
125
124
run-make/raw-dylib-stdcall-ordinal/Makefile
Load Diff This file was deleted.
Original file line number Diff line number Diff line change
1
+ // Instead of using the default dlltool, the rust compiler can also accept a custom
2
+ // command file with the -C dlltool flag. This test uses it to compile some rust code
3
+ // with the raw_dylib Windows-exclusive feature, and checks that the output contains
4
+ // the string passed from the custom dlltool, confirming that the default dlltool was
5
+ // successfully overridden.
6
+ // See https://github.com/rust-lang/rust/pull/109677
7
+
8
+ //@ only-windows
9
+ //@ only-gnu
10
+ //@ needs-dlltool
11
+ // Reason: this test specifically checks the custom dlltool feature, only
12
+ // available on Windows-gnu.
13
+
14
+ use run_make_support:: { diff, rustc} ;
15
+
16
+ fn main ( ) {
17
+ let out = rustc ( )
18
+ . crate_type ( "lib" )
19
+ . crate_name ( "raw_dylib_test" )
20
+ . input ( "lib.rs" )
21
+ . arg ( "-Cdlltool=script.cmd" )
22
+ . run ( )
23
+ . stdout_utf8 ( ) ;
24
+ diff ( ) . expected_file ( "output.txt" ) . actual_text ( "actual_text" , out) . run ( ) ;
25
+ }
Original file line number Diff line number Diff line change @@ -32,8 +32,8 @@ fn main() {
32
32
// Make sure we do find an import to the functions we expect to be imported.
33
33
. assert_stdout_contains ( "library_function" ) ;
34
34
if is_msvc ( ) {
35
- cc ( ) . arg ( "-c" ) . out_exe ( "extern_1.obj " ) . input ( "extern_1.c" ) . run ( ) ;
36
- cc ( ) . arg ( "-c" ) . out_exe ( "extern_2.obj " ) . input ( "extern_2.c" ) . run ( ) ;
35
+ cc ( ) . arg ( "-c" ) . out_exe ( "extern_1" ) . input ( "extern_1.c" ) . run ( ) ;
36
+ cc ( ) . arg ( "-c" ) . out_exe ( "extern_2" ) . input ( "extern_2.c" ) . run ( ) ;
37
37
cc ( ) . input ( "extern_1.obj" )
38
38
. arg ( "-link" )
39
39
. arg ( "-dll" )
@@ -47,8 +47,8 @@ fn main() {
47
47
. arg ( "-noimplib" )
48
48
. run ( ) ;
49
49
} else {
50
- cc ( ) . arg ( "-v" ) . arg ( "-c" ) . out_exe ( "extern_1.obj " ) . input ( "extern_1.c" ) . run ( ) ;
51
- cc ( ) . arg ( "-v" ) . arg ( "-c" ) . out_exe ( "extern_2.obj " ) . input ( "extern_2.c" ) . run ( ) ;
50
+ cc ( ) . arg ( "-v" ) . arg ( "-c" ) . out_exe ( "extern_1" ) . input ( "extern_1.c" ) . run ( ) ;
51
+ cc ( ) . arg ( "-v" ) . arg ( "-c" ) . out_exe ( "extern_2" ) . input ( "extern_2.c" ) . run ( ) ;
52
52
cc ( ) . input ( "extern_1.obj" ) . out_exe ( "extern_1.dll" ) . arg ( "-shared" ) . run ( ) ;
53
53
cc ( ) . input ( "extern_2.obj" ) . out_exe ( "extern_2.dll" ) . arg ( "-shared" ) . run ( ) ;
54
54
}
You can’t perform that action at this time.
0 commit comments