Skip to content

Commit

Permalink
rewrite suspicious-library in rmake
Browse files Browse the repository at this point in the history
  • Loading branch information
Oneirical committed Jun 4, 2024
1 parent d553d5b commit 59e2074
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 28 deletions.
1 change: 1 addition & 0 deletions src/tools/compiletest/src/header.rs
Original file line number Diff line number Diff line change
Expand Up @@ -798,6 +798,7 @@ const KNOWN_DIRECTIVE_NAMES: &[&str] = &[
"ignore-none",
"ignore-nto",
"ignore-nvptx64",
"ignore-nvptx64-nvidia-cuda",
"ignore-openbsd",
"ignore-pass",
"ignore-remote",
Expand Down
1 change: 0 additions & 1 deletion src/tools/tidy/src/allowed_run_make_makefiles.txt
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,6 @@ run-make/static-pie/Makefile
run-make/staticlib-blank-lib/Makefile
run-make/staticlib-dylib-linkage/Makefile
run-make/std-core-cycle/Makefile
run-make/suspicious-library/Makefile
run-make/symbol-mangling-hashed/Makefile
run-make/symbol-visibility/Makefile
run-make/symbols-include-type-name/Makefile
Expand Down
31 changes: 13 additions & 18 deletions tests/run-make/incr-prev-body-beyond-eof/rmake.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,21 @@
// was hashed by rustc in addition to the span length, and the fix still
// works.

// FIXME: Ignore flags temporarily disabled for the test.
// ignore-none
// ignore-nvptx64-nvidia-cuda
//@ ignore-none
// reason: no-std is not supported

use run_make_support::{rustc, target, tmp_dir};
//@ ignore-nvptx64-nvidia-cuda
// FIXME: can't find crate for `std`

use run_make_support::{rustc, tmp_dir};
use std::fs;

fn main() {
fs::create_dir(tmp_dir().join("src"));
fs::create_dir(tmp_dir().join("incr"));
fs::copy("a.rs", tmp_dir().join("main.rs"));
rustc()
.incremental(tmp_dir().join("incr"))
.input(tmp_dir().join("src/main.rs"))
.target(target())
.run();
fs::copy("b.rs", tmp_dir().join("main.rs"));
rustc()
.incremental(tmp_dir().join("incr"))
.input(tmp_dir().join("src/main.rs"))
.target(target())
.run();
// FIXME(Oneirical): Use run_make_support::fs_wrapper here.
fs::create_dir(tmp_dir().join("src")).unwrap();
fs::create_dir(tmp_dir().join("incr")).unwrap();
fs::copy("a.rs", tmp_dir().join("src/main.rs")).unwrap();
rustc().incremental(tmp_dir().join("incr")).input(tmp_dir().join("src/main.rs")).run();
fs::copy("b.rs", tmp_dir().join("src/main.rs")).unwrap();
rustc().incremental(tmp_dir().join("incr")).input(tmp_dir().join("src/main.rs")).run();
}
3 changes: 2 additions & 1 deletion tests/run-make/resolve-rename/rmake.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ use std::fs;
fn main() {
rustc().extra_filename("-hash").input("foo.rs").run();
rustc().input("bar.rs").run();
fs::rename(tmp_dir().join("libfoo-hash.rlib"), tmp_dir().join("libfoo-another-hash.rlib"));
fs::rename(tmp_dir().join("libfoo-hash.rlib"), tmp_dir().join("libfoo-another-hash.rlib"))
.unwrap();
rustc().input("baz.rs").run();
}
8 changes: 0 additions & 8 deletions tests/run-make/suspicious-library/Makefile

This file was deleted.

14 changes: 14 additions & 0 deletions tests/run-make/suspicious-library/rmake.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
// This test creates some fake dynamic libraries with nothing inside,
// and checks if rustc avoids them and successfully compiles as a result.

//@ ignore-cross-compile

use run_make_support::{dynamic_lib, rustc};
use std::fs::File;

fn main() {
rustc().input("foo.rs").arg("-Cprefer-dynamic").run();
File::create(dynamic_lib("foo-something-special")).unwrap();
File::create(dynamic_lib("foo-something-special2")).unwrap();
rustc().input("bar.rs").run();
}

0 comments on commit 59e2074

Please sign in to comment.