Skip to content

Commit

Permalink
Rollup merge of rust-lang#42985 - venkatagiri:issue_42444, r=Mark-Sim…
Browse files Browse the repository at this point in the history
…ulacrum

rustc_llvm: re-run build script when env var LLVM_CONFIG changes

This removes the changes done in rust-lang#42429 and use the newly introduced `cargo:rerun-if-env-changed` in rust-lang/cargo#4125.
As `LLVM_CONFIG` env var points to the `llvm-config` and changes when it gets configured in `config.toml` or removed from it, we can re-run the build script if this env var changes.

closes rust-lang#42444

r? @alexcrichton
  • Loading branch information
GuillaumeGomez committed Jun 30, 2017
2 parents ad914f2 + 4f13da7 commit 209281e
Show file tree
Hide file tree
Showing 6 changed files with 5 additions and 9 deletions.
4 changes: 0 additions & 4 deletions src/bootstrap/compile.rs
Original file line number Diff line number Diff line change
Expand Up @@ -276,10 +276,6 @@ pub fn rustc(build: &Build, target: &str, compiler: &Compiler) {
if build.is_rust_llvm(target) {
cargo.env("LLVM_RUSTLLVM", "1");
}
if let Some(ref cfg_file) = build.flags.config {
let cfg_path = t!(PathBuf::from(cfg_file).canonicalize());
cargo.env("CFG_LLVM_TOML", cfg_path.into_os_string());
}
cargo.env("LLVM_CONFIG", build.llvm_config(target));
let target_config = build.config.target_config.get(target);
if let Some(s) = target_config.and_then(|c| c.llvm_config.as_ref()) {
Expand Down
1 change: 1 addition & 0 deletions src/librustc_asan/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,5 @@ fn main() {
.build_target("asan")
.build();
}
println!("cargo:rerun-if-env-changed=LLVM_CONFIG");
}
6 changes: 1 addition & 5 deletions src/librustc_llvm/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,7 @@ fn main() {
});

println!("cargo:rerun-if-changed={}", llvm_config.display());

if let Some(cfg_toml) = env::var_os("CFG_LLVM_TOML") {
let cfg_path = PathBuf::from(cfg_toml);
println!("cargo:rerun-if-changed={}", cfg_path.display());
}
println!("cargo:rerun-if-env-changed=LLVM_CONFIG");

// Test whether we're cross-compiling LLVM. This is a pretty rare case
// currently where we're producing an LLVM for a different platform than
Expand Down
1 change: 1 addition & 0 deletions src/librustc_lsan/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,5 @@ fn main() {
.build_target("lsan")
.build();
}
println!("cargo:rerun-if-env-changed=LLVM_CONFIG");
}
1 change: 1 addition & 0 deletions src/librustc_msan/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,5 @@ fn main() {
.build_target("msan")
.build();
}
println!("cargo:rerun-if-env-changed=LLVM_CONFIG");
}
1 change: 1 addition & 0 deletions src/librustc_tsan/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,5 @@ fn main() {
.build_target("tsan")
.build();
}
println!("cargo:rerun-if-env-changed=LLVM_CONFIG");
}

0 comments on commit 209281e

Please sign in to comment.