提交 269f7000 编写于 作者: S Scott Olson

Get the sysroot (like compiletest) in Miri itself.

上级 d69ffa0b
......@@ -113,12 +113,6 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
err.emit();
}
fn main() {
init_logger();
let args: Vec<String> = std::env::args().collect();
rustc_driver::run_compiler(&args, &mut MiriCompilerCalls);
}
fn init_logger() {
const NSPACES: usize = 40;
let format = |record: &log::LogRecord| {
......@@ -142,3 +136,28 @@ fn init_logger() {
builder.init().unwrap();
}
fn find_sysroot() -> String {
// Taken from https://github.com/Manishearth/rust-clippy/pull/911.
let home = option_env!("RUSTUP_HOME").or(option_env!("MULTIRUST_HOME"));
let toolchain = option_env!("RUSTUP_TOOLCHAIN").or(option_env!("MULTIRUST_TOOLCHAIN"));
match (home, toolchain) {
(Some(home), Some(toolchain)) => format!("{}/toolchains/{}", home, toolchain),
_ => option_env!("RUST_SYSROOT")
.expect("need to specify RUST_SYSROOT env var or use rustup or multirust")
.to_owned(),
}
}
fn main() {
init_logger();
let mut args: Vec<String> = std::env::args().collect();
let sysroot_flag = String::from("--sysroot");
if !args.contains(&sysroot_flag) {
args.push(sysroot_flag);
args.push(find_sysroot());
}
rustc_driver::run_compiler(&args, &mut MiriCompilerCalls);
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册