Skip to content

Commit 7463b15

Browse files
committed
Print warning if LLVM CMake directory does not exist
1 parent 6847bd0 commit 7463b15

File tree

1 file changed

+10
-5
lines changed
  • src/bootstrap/src/core/build_steps

1 file changed

+10
-5
lines changed

src/bootstrap/src/core/build_steps/llvm.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -925,7 +925,7 @@ impl Step for Enzyme {
925925
}
926926
let target = self.target;
927927

928-
let LlvmResult { host_llvm_config, .. } = builder.ensure(Llvm { target: self.target });
928+
let LlvmResult { host_llvm_config, llvm_cmake_dir } = builder.ensure(Llvm { target });
929929

930930
static STAMP_HASH_MEMO: OnceLock<String> = OnceLock::new();
931931
let smart_stamp_hash = STAMP_HASH_MEMO.get_or_init(|| {
@@ -955,15 +955,20 @@ impl Step for Enzyme {
955955
return out_dir;
956956
}
957957

958+
if !builder.config.dry_run() && !llvm_cmake_dir.is_dir() {
959+
builder.info(&format!(
960+
"WARNING: {} does not exist, Enzyme build will likely fail",
961+
llvm_cmake_dir.display()
962+
));
963+
}
964+
958965
trace!(?target, "(re)building enzyme artifacts");
959966
builder.info(&format!("Building Enzyme for {target}"));
960967
t!(stamp.remove());
961968
let _time = helpers::timeit(builder);
962969
t!(fs::create_dir_all(&out_dir));
963970

964-
builder
965-
.config
966-
.update_submodule(Path::new("src").join("tools").join("enzyme").to_str().unwrap());
971+
builder.config.update_submodule("src/tools/enzyme");
967972
let mut cfg = cmake::Config::new(builder.src.join("src/tools/enzyme/enzyme/"));
968973
configure_cmake(builder, target, &mut cfg, true, LdFlags::default(), &[]);
969974

@@ -983,7 +988,7 @@ impl Step for Enzyme {
983988
.define("LLVM_ENABLE_ASSERTIONS", "ON")
984989
.define("ENZYME_EXTERNAL_SHARED_LIB", "ON")
985990
.define("ENZYME_BC_LOADER", "OFF")
986-
.define("LLVM_DIR", builder.llvm_out(target));
991+
.define("LLVM_DIR", llvm_cmake_dir);
987992

988993
cfg.build();
989994

0 commit comments

Comments
 (0)