]> git.lizzy.rs Git - rust.git/blob - src/test/run-make-fulldeps/reproducible-build/Makefile
Avoid codegen for Result::into_ok in lang_start
[rust.git] / src / test / run-make-fulldeps / reproducible-build / Makefile
1 -include ../tools.mk
2
3 # ignore-musl
4 # Objects are reproducible but their path is not.
5
6 all:  \
7         smoke \
8         debug \
9         opt \
10         link_paths \
11         remap_paths \
12         different_source_dirs \
13         extern_flags
14
15 smoke:
16         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
17         $(RUSTC) linker.rs -O
18         $(RUSTC) reproducible-build-aux.rs
19         $(RUSTC) reproducible-build.rs -C linker=$(call RUN_BINFILE,linker)
20         $(RUSTC) reproducible-build.rs -C linker=$(call RUN_BINFILE,linker)
21         diff -u "$(TMPDIR)/linker-arguments1" "$(TMPDIR)/linker-arguments2"
22
23 debug:
24         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
25         $(RUSTC) linker.rs -O
26         $(RUSTC) reproducible-build-aux.rs -g
27         $(RUSTC) reproducible-build.rs -C linker=$(call RUN_BINFILE,linker) -g
28         $(RUSTC) reproducible-build.rs -C linker=$(call RUN_BINFILE,linker) -g
29         diff -u "$(TMPDIR)/linker-arguments1" "$(TMPDIR)/linker-arguments2"
30
31 opt:
32         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
33         $(RUSTC) linker.rs -O
34         $(RUSTC) reproducible-build-aux.rs -O
35         $(RUSTC) reproducible-build.rs -C linker=$(call RUN_BINFILE,linker) -O
36         $(RUSTC) reproducible-build.rs -C linker=$(call RUN_BINFILE,linker) -O
37         diff -u "$(TMPDIR)/linker-arguments1" "$(TMPDIR)/linker-arguments2"
38
39 link_paths:
40         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
41         $(RUSTC) reproducible-build-aux.rs
42         $(RUSTC) reproducible-build.rs --crate-type rlib -L /b
43         cp $(TMPDIR)/libreproducible_build.rlib $(TMPDIR)/libfoo.rlib
44         $(RUSTC) reproducible-build.rs --crate-type rlib -L /a
45         cmp "$(TMPDIR)/libreproducible_build.rlib" "$(TMPDIR)/libfoo.rlib" || exit 1
46
47 remap_paths:
48         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
49         $(RUSTC) reproducible-build-aux.rs
50         $(RUSTC) reproducible-build.rs --crate-type rlib --remap-path-prefix=/a=/c
51         cp $(TMPDIR)/libreproducible_build.rlib $(TMPDIR)/libfoo.rlib
52         $(RUSTC) reproducible-build.rs --crate-type rlib --remap-path-prefix=/b=/c
53         cmp "$(TMPDIR)/libreproducible_build.rlib" "$(TMPDIR)/libfoo.rlib" || exit 1
54
55 different_source_dirs:
56         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
57         $(RUSTC) reproducible-build-aux.rs
58         mkdir $(TMPDIR)/test
59         cp reproducible-build.rs $(TMPDIR)/test
60         $(RUSTC) reproducible-build.rs --crate-type rlib --remap-path-prefix=$$PWD=/b
61         cp $(TMPDIR)/libreproducible_build.rlib $(TMPDIR)/libfoo.rlib
62         (cd $(TMPDIR)/test && $(RUSTC) reproducible-build.rs \
63                 --remap-path-prefix=$(TMPDIR)/test=/b \
64                 --crate-type rlib)
65         cmp "$(TMPDIR)/libreproducible_build.rlib" "$(TMPDIR)/libfoo.rlib" || exit 1
66
67 extern_flags:
68         rm -rf $(TMPDIR) && mkdir $(TMPDIR)
69         $(RUSTC) reproducible-build-aux.rs
70         $(RUSTC) reproducible-build.rs \
71                 --extern reproducible_build_aux=$(TMPDIR)/libreproducible_build_aux.rlib \
72                 --crate-type rlib
73         cp $(TMPDIR)/libreproducible_build_aux.rlib $(TMPDIR)/libbar.rlib
74         cp $(TMPDIR)/libreproducible_build.rlib $(TMPDIR)/libfoo.rlib
75         $(RUSTC) reproducible-build.rs \
76                 --extern reproducible_build_aux=$(TMPDIR)/libbar.rlib \
77                 --crate-type rlib
78         cmp "$(TMPDIR)/libreproducible_build.rlib" "$(TMPDIR)/libfoo.rlib" || exit 1