about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/tools/run-make-support/src/rustc.rs2
-rw-r--r--src/tools/tidy/src/allowed_run_make_makefiles.txt1
-rw-r--r--tests/run-make/crate-data-smoke/Makefile10
-rw-r--r--tests/run-make/crate-data-smoke/rmake.rs43
4 files changed, 44 insertions, 12 deletions
diff --git a/src/tools/run-make-support/src/rustc.rs b/src/tools/run-make-support/src/rustc.rs
index 1c83b630861..0cd588a1eb3 100644
--- a/src/tools/run-make-support/src/rustc.rs
+++ b/src/tools/run-make-support/src/rustc.rs
@@ -205,7 +205,7 @@ impl Rustc {
 
     /// Get the [`Output`][::std::process::Output] of the finished process.
     #[track_caller]
-    pub fn command_output(&mut self) -> ::std::process::Output {
+    pub fn command_output(&mut self) -> Output {
         // let's make sure we piped all the input and outputs
         self.cmd.stdin(Stdio::piped());
         self.cmd.stdout(Stdio::piped());
diff --git a/src/tools/tidy/src/allowed_run_make_makefiles.txt b/src/tools/tidy/src/allowed_run_make_makefiles.txt
index 2329b8b44de..a51a6932ef2 100644
--- a/src/tools/tidy/src/allowed_run_make_makefiles.txt
+++ b/src/tools/tidy/src/allowed_run_make_makefiles.txt
@@ -24,7 +24,6 @@ run-make/compiler-rt-works-on-mingw/Makefile
 run-make/compressed-debuginfo/Makefile
 run-make/const-prop-lint/Makefile
 run-make/const_fn_mir/Makefile
-run-make/crate-data-smoke/Makefile
 run-make/crate-hash-rustc-version/Makefile
 run-make/crate-name-priority/Makefile
 run-make/cross-lang-lto-clang/Makefile
diff --git a/tests/run-make/crate-data-smoke/Makefile b/tests/run-make/crate-data-smoke/Makefile
deleted file mode 100644
index a453f65ff3e..00000000000
--- a/tests/run-make/crate-data-smoke/Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-include ../tools.mk
-
-all:
-	[ `$(RUSTC) --print crate-name crate.rs` = "foo" ]
-	[ `$(RUSTC) --print file-names crate.rs` = "$(call BIN,foo)" ]
-	[ `$(RUSTC) --print file-names --crate-type=lib \
-		--test crate.rs` = "$(call BIN,foo)" ]
-	[ `$(RUSTC) --print file-names --test lib.rs` = "$(call BIN,mylib)" ]
-	$(RUSTC) --print file-names lib.rs
-	$(RUSTC) --print file-names rlib.rs
diff --git a/tests/run-make/crate-data-smoke/rmake.rs b/tests/run-make/crate-data-smoke/rmake.rs
new file mode 100644
index 00000000000..9c9b1c334c0
--- /dev/null
+++ b/tests/run-make/crate-data-smoke/rmake.rs
@@ -0,0 +1,43 @@
+use std::process::Output;
+
+use run_make_support::{bin_name, rust_lib, rustc};
+
+fn compare_stdout<S: AsRef<str>>(output: Output, expected: S) {
+    assert_eq!(
+        String::from_utf8(output.stdout).unwrap().trim(),
+        expected.as_ref()
+    );
+}
+
+fn main() {
+    compare_stdout(rustc().print("crate-name").input("crate.rs").run(), "foo");
+    compare_stdout(
+        rustc().print("file-names").input("crate.rs").run(),
+        bin_name("foo"),
+    );
+    compare_stdout(
+        rustc()
+            .print("file-names")
+            .crate_type("lib")
+            .arg("--test")
+            .input("crate.rs")
+            .run(),
+        bin_name("foo"),
+    );
+    compare_stdout(
+        rustc()
+            .print("file-names")
+            .arg("--test")
+            .input("lib.rs")
+            .run(),
+        bin_name("mylib"),
+    );
+    compare_stdout(
+        rustc().print("file-names").input("lib.rs").run(),
+        rust_lib("mylib").file_name().unwrap().to_string_lossy(),
+    );
+    compare_stdout(
+        rustc().print("file-names").input("rlib.rs").run(),
+        rust_lib("mylib").file_name().unwrap().to_string_lossy(),
+    );
+}