]> git.lizzy.rs Git - rust.git/blob - tests/run-make/raw-dylib-c/Makefile
Auto merge of #106711 - albertlarsan68:use-ci-llvm-when-lld, r=jyn514
[rust.git] / tests / run-make / raw-dylib-c / Makefile
1 # Test the behavior of #[link(.., kind = "raw-dylib")] on windows-msvc
2
3 # only-windows
4
5 include ../../run-make-fulldeps/tools.mk
6
7 all:
8         $(RUSTC) --crate-type lib --crate-name raw_dylib_test lib.rs
9         $(RUSTC) --crate-type bin driver.rs -L "$(TMPDIR)"
10         $(RUSTC) --crate-type bin --crate-name raw_dylib_test_bin lib.rs
11         $(call COMPILE_OBJ,"$(TMPDIR)"/extern_1.obj,extern_1.c)
12         $(call COMPILE_OBJ,"$(TMPDIR)"/extern_2.obj,extern_2.c)
13 ifdef IS_MSVC
14         $(CC) "$(TMPDIR)"/extern_1.obj -link -dll -out:"$(TMPDIR)"/extern_1.dll -noimplib
15         $(CC) "$(TMPDIR)"/extern_2.obj -link -dll -out:"$(TMPDIR)"/extern_2.dll -noimplib
16 else
17         $(CC) "$(TMPDIR)"/extern_1.obj -shared -o "$(TMPDIR)"/extern_1.dll
18         $(CC) "$(TMPDIR)"/extern_2.obj -shared -o "$(TMPDIR)"/extern_2.dll
19 endif
20         "$(TMPDIR)"/driver > "$(TMPDIR)"/output.txt
21         "$(TMPDIR)"/raw_dylib_test_bin > "$(TMPDIR)"/output_bin.txt
22
23 ifdef RUSTC_BLESS_TEST
24         cp "$(TMPDIR)"/output.txt output.txt
25 else
26         $(DIFF) output.txt "$(TMPDIR)"/output.txt
27         $(DIFF) output.txt "$(TMPDIR)"/output_bin.txt
28 endif