summaryrefslogtreecommitdiffstats
path: root/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile')
-rw-r--r--src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile b/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile
new file mode 100644
index 000000000..4cda243ff
--- /dev/null
+++ b/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile
@@ -0,0 +1,26 @@
+include ../tools.mk
+
+# ignore-stage1
+
+# This test both exists as a check that -Zcodegen-backend is capable of loading external codegen
+# backends and that this external codegen backend is only included in the dep info if
+# -Zbinary-dep-depinfo is used.
+
+all:
+ /bin/echo || exit 0 # This test requires /bin/echo to exist
+ $(RUSTC) the_backend.rs --crate-name the_backend --crate-type dylib \
+ -o $(TMPDIR)/the_backend.dylib
+
+ $(RUSTC) some_crate.rs --crate-name some_crate --crate-type lib -o $(TMPDIR)/some_crate \
+ -Z codegen-backend=$(TMPDIR)/the_backend.dylib -Z unstable-options \
+ --emit link,dep-info
+ grep -x "This has been \"compiled\" successfully." $(TMPDIR)/libsome_crate.rlib
+ # don't declare a dependency on the codegen backend if -Zbinary-dep-depinfo isn't used.
+ grep -v "the_backend.dylib" $(TMPDIR)/some_crate.d
+
+ $(RUSTC) some_crate.rs --crate-name some_crate --crate-type lib -o $(TMPDIR)/some_crate \
+ -Z codegen-backend=$(TMPDIR)/the_backend.dylib -Z unstable-options \
+ --emit link,dep-info -Zbinary-dep-depinfo
+ grep -x "This has been \"compiled\" successfully." $(TMPDIR)/libsome_crate.rlib
+ # but declare a dependency on the codegen backend if -Zbinary-dep-depinfo it used.
+ grep "the_backend.dylib" $(TMPDIR)/some_crate.d