Skip to content

Commit 759e495

Browse files
committed
bump Miri, update for cargo-miri being a separate project
1 parent d3cba25 commit 759e495

File tree

6 files changed

+34
-15
lines changed

6 files changed

+34
-15
lines changed

Cargo.lock

+16-9
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,19 @@ dependencies = [
345345
"winapi 0.3.8",
346346
]
347347

348+
[[package]]
349+
name = "cargo-miri"
350+
version = "0.1.0"
351+
dependencies = [
352+
"cargo_metadata 0.9.1",
353+
"directories",
354+
"rustc-workspace-hack",
355+
"rustc_version",
356+
"serde",
357+
"serde_json",
358+
"vergen",
359+
]
360+
348361
[[package]]
349362
name = "cargo-platform"
350363
version = "0.1.1"
@@ -2220,22 +2233,17 @@ name = "miri"
22202233
version = "0.1.0"
22212234
dependencies = [
22222235
"byteorder",
2223-
"cargo_metadata 0.9.1",
22242236
"colored",
22252237
"compiletest_rs",
2226-
"directories",
22272238
"env_logger 0.7.1",
22282239
"getrandom",
22292240
"hex 0.4.0",
2241+
"libc",
22302242
"log",
2231-
"num-traits",
22322243
"rand 0.7.3",
22332244
"rustc-workspace-hack",
22342245
"rustc_version",
2235-
"serde",
2236-
"serde_json",
22372246
"shell-escape",
2238-
"vergen",
22392247
]
22402248

22412249
[[package]]
@@ -5555,13 +5563,12 @@ checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
55555563

55565564
[[package]]
55575565
name = "vergen"
5558-
version = "3.0.4"
5566+
version = "3.1.0"
55595567
source = "registry+https://github.com/rust-lang/crates.io-index"
5560-
checksum = "6aba5e34f93dc7051dfad05b98a18e9156f27e7b431fe1d2398cb6061c0a1dba"
5568+
checksum = "4ce50d8996df1f85af15f2cd8d33daae6e479575123ef4314a51a70a230739cb"
55615569
dependencies = [
55625570
"bitflags",
55635571
"chrono",
5564-
"failure",
55655572
]
55665573

55675574
[[package]]

Cargo.toml

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ members = [
2222
"src/tools/rls",
2323
"src/tools/rustfmt",
2424
"src/tools/miri",
25+
"src/tools/miri/cargo-miri",
2526
"src/tools/rustdoc-themes",
2627
"src/tools/unicode-table-generator",
2728
"src/tools/expand-yaml-anchors",

src/bootstrap/builder.rs

+2
Original file line numberDiff line numberDiff line change
@@ -344,10 +344,12 @@ impl<'a> Builder<'a> {
344344
tool::Rls,
345345
tool::Rustdoc,
346346
tool::Clippy,
347+
tool::CargoClippy,
347348
native::Llvm,
348349
native::Sanitizers,
349350
tool::Rustfmt,
350351
tool::Miri,
352+
tool::CargoMiri,
351353
native::Lld
352354
),
353355
Kind::Check | Kind::Clippy | Kind::Fix | Kind::Format => {

src/bootstrap/test.rs

+11-4
Original file line numberDiff line numberDiff line change
@@ -360,7 +360,12 @@ impl Step for Miri {
360360

361361
let miri =
362362
builder.ensure(tool::Miri { compiler, target: self.host, extra_features: Vec::new() });
363-
if let Some(miri) = miri {
363+
let cargo_miri = builder.ensure(tool::CargoMiri {
364+
compiler,
365+
target: self.host,
366+
extra_features: Vec::new(),
367+
});
368+
if let (Some(miri), Some(_cargo_miri)) = (miri, cargo_miri) {
364369
let mut cargo = builder.cargo(compiler, Mode::ToolRustc, host, "install");
365370
cargo.arg("xargo");
366371
// Configure `cargo install` path. cargo adds a `bin/`.
@@ -378,14 +383,16 @@ impl Step for Miri {
378383
Mode::ToolRustc,
379384
host,
380385
"run",
381-
"src/tools/miri",
386+
"src/tools/miri/cargo-miri",
382387
SourceType::Submodule,
383388
&[],
384389
);
385-
cargo.arg("--bin").arg("cargo-miri").arg("--").arg("miri").arg("setup");
390+
cargo.arg("--").arg("miri").arg("setup");
386391

387392
// Tell `cargo miri setup` where to find the sources.
388393
cargo.env("XARGO_RUST_SRC", builder.src.join("src"));
394+
// Tell it where to find Miri.
395+
cargo.env("MIRI", &miri);
389396
// Debug things.
390397
cargo.env("RUST_BACKTRACE", "1");
391398
// Overwrite bootstrap's `rustc` wrapper overwriting our flags.
@@ -437,7 +444,7 @@ impl Step for Miri {
437444
// miri tests need to know about the stage sysroot
438445
cargo.env("MIRI_SYSROOT", miri_sysroot);
439446
cargo.env("RUSTC_LIB_PATH", builder.rustc_libdir(compiler));
440-
cargo.env("MIRI_PATH", miri);
447+
cargo.env("MIRI", miri);
441448

442449
cargo.arg("--").args(builder.config.cmd.test_args());
443450

src/bootstrap/tool.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -649,12 +649,14 @@ macro_rules! tool_extended {
649649
}
650650
}
651651

652+
// Note: tools need to be also added to `Builder::get_step_descriptions` in `build.rs`
653+
// to make `./x.py build <tool>` work.
652654
tool_extended!((self, builder),
653655
Cargofmt, rustfmt, "src/tools/rustfmt", "cargo-fmt", {};
654656
CargoClippy, clippy, "src/tools/clippy", "cargo-clippy", {};
655657
Clippy, clippy, "src/tools/clippy", "clippy-driver", {};
656658
Miri, miri, "src/tools/miri", "miri", {};
657-
CargoMiri, miri, "src/tools/miri", "cargo-miri", {};
659+
CargoMiri, miri, "src/tools/miri/cargo-miri", "cargo-miri", {};
658660
Rls, rls, "src/tools/rls", "rls", {
659661
builder.ensure(Clippy {
660662
compiler: self.compiler,

0 commit comments

Comments
 (0)