summaryrefslogtreecommitdiffstats
path: root/src/test/run-make/raw-dylib-stdcall-ordinal/Makefile
blob: 3360a97b5ff0e5e58d08df473671b75a6896a35e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Test the behavior of #[link(.., kind = "raw-dylib")], #[link_ordinal], and alternative calling conventions on i686 windows.

# only-x86
# only-windows

-include ../../run-make-fulldeps/tools.mk

all:
	$(RUSTC) --crate-type lib --crate-name raw_dylib_test lib.rs
	$(RUSTC) --crate-type bin driver.rs -L "$(TMPDIR)"
	$(call COMPILE_OBJ,"$(TMPDIR)"/exporter.obj,exporter.c)
ifdef IS_MSVC
	$(CC) "$(TMPDIR)"/exporter.obj exporter-msvc.def -link -dll -out:"$(TMPDIR)"/exporter.dll -noimplib
else
	$(CC) "$(TMPDIR)"/exporter.obj exporter-gnu.def -shared -o "$(TMPDIR)"/exporter.dll
endif
	"$(TMPDIR)"/driver > "$(TMPDIR)"/actual_output.txt

ifdef RUSTC_BLESS_TEST
	cp "$(TMPDIR)"/actual_output.txt expected_output.txt
else
	$(DIFF) expected_output.txt "$(TMPDIR)"/actual_output.txt
endif