]> git.proxmox.com Git - rustc.git/blob - src/test/run-make-fulldeps/issue-14500/Makefile
New upstream version 1.26.0+dfsg1
[rustc.git] / src / test / run-make-fulldeps / issue-14500 / Makefile
1 -include ../tools.mk
2
3 # Test to make sure that reachable extern fns are always available in final
4 # productcs, including when LTO is used. In this test, the `foo` crate has a
5 # reahable symbol, and is a dependency of the `bar` crate. When the `bar` crate
6 # is compiled with LTO, it shouldn't strip the symbol from `foo`, and that's the
7 # only way that `foo.c` will successfully compile.
8
9 ifeq ($(UNAME),Bitrig)
10 EXTRACFLAGS := -lc $(EXTRACFLAGS) $(EXTRACXXFLAGS)
11 endif
12
13 all:
14 $(RUSTC) foo.rs --crate-type=rlib
15 $(RUSTC) bar.rs --crate-type=staticlib -C lto -L. -o $(TMPDIR)/libbar.a
16 $(CC) foo.c $(TMPDIR)/libbar.a $(EXTRACFLAGS) $(call OUT_EXE,foo)
17 $(call RUN,foo)