2021-06-08 15:56:06 -05:00
|
|
|
# Test the behavior of #[link(.., kind = "raw-dylib")] with alternative calling conventions.
|
|
|
|
|
2021-11-29 13:28:41 -06:00
|
|
|
# only-x86
|
|
|
|
# only-windows
|
2021-06-08 15:56:06 -05:00
|
|
|
|
2023-03-30 07:58:50 -05:00
|
|
|
include ../tools.mk
|
2021-06-08 15:56:06 -05:00
|
|
|
|
|
|
|
all:
|
2022-07-01 15:01:41 -05:00
|
|
|
$(RUSTC) --crate-type lib --crate-name raw_dylib_alt_calling_convention_test lib.rs
|
|
|
|
$(RUSTC) --crate-type bin driver.rs -L "$(TMPDIR)"
|
2021-06-08 15:56:06 -05:00
|
|
|
$(call COMPILE_OBJ,"$(TMPDIR)"/extern.obj,extern.c)
|
2021-11-29 13:28:41 -06:00
|
|
|
ifdef IS_MSVC
|
2022-07-01 15:01:41 -05:00
|
|
|
$(CC) "$(TMPDIR)"/extern.obj -link -dll -out:"$(TMPDIR)"/extern.dll -noimplib
|
2021-11-29 13:28:41 -06:00
|
|
|
else
|
|
|
|
$(CC) "$(TMPDIR)"/extern.obj -shared -o "$(TMPDIR)"/extern.dll
|
|
|
|
endif
|
2021-06-08 15:56:06 -05:00
|
|
|
|
2022-07-19 12:40:26 -05:00
|
|
|
"$(TMPDIR)"/driver > "$(TMPDIR)"/output.txt
|
2021-06-08 15:56:06 -05:00
|
|
|
ifdef RUSTC_BLESS_TEST
|
|
|
|
cp "$(TMPDIR)"/output.txt output.txt
|
|
|
|
else
|
|
|
|
$(DIFF) output.txt "$(TMPDIR)"/output.txt
|
|
|
|
endif
|
2022-07-19 12:40:26 -05:00
|
|
|
|
|
|
|
ifdef IS_MSVC
|
|
|
|
"$(TMPDIR)"/driver true > "$(TMPDIR)"/output.msvc.txt
|
|
|
|
ifdef RUSTC_BLESS_TEST
|
|
|
|
cp "$(TMPDIR)"/output.msvc.txt output.msvc.txt
|
|
|
|
else
|
|
|
|
$(DIFF) output.msvc.txt "$(TMPDIR)"/output.msvc.txt
|
|
|
|
endif
|
|
|
|
endif
|