Skip to content

Commit c542db4

Browse files
committed
Print warning if LLVM CMake directory does not exist
1 parent f28fd21 commit c542db4

File tree

1 file changed

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

1 file changed

+11
-5
lines changed

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

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -925,7 +925,8 @@ 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 } =
929+
builder.ensure(Llvm { target: self.target });
929930

930931
static STAMP_HASH_MEMO: OnceLock<String> = OnceLock::new();
931932
let smart_stamp_hash = STAMP_HASH_MEMO.get_or_init(|| {
@@ -955,15 +956,20 @@ impl Step for Enzyme {
955956
return out_dir;
956957
}
957958

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

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

@@ -983,7 +989,7 @@ impl Step for Enzyme {
983989
.define("LLVM_ENABLE_ASSERTIONS", "ON")
984990
.define("ENZYME_EXTERNAL_SHARED_LIB", "ON")
985991
.define("ENZYME_BC_LOADER", "OFF")
986-
.define("LLVM_DIR", builder.llvm_out(target));
992+
.define("LLVM_DIR", llvm_cmake_dir);
987993

988994
cfg.build();
989995

0 commit comments

Comments
 (0)