Skip to content

Commit a0650cb

Browse files
committed
imprv
1 parent 4b1cb50 commit a0650cb

File tree

1 file changed

+19
-10
lines changed

1 file changed

+19
-10
lines changed

src/bootstrap/src/core/build_steps/compile.rs

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2217,31 +2217,40 @@ impl Step for Assemble {
22172217
}
22182218

22192219
if builder.config.llvm_offload && !builder.config.dry_run() {
2220+
debug!("`llvm_offload` requested");
22202221
let offload_install = builder.ensure(llvm::OmpOffload { target: build_compiler.host });
22212222
if let Some(llvm_config) = builder.llvm_config(builder.config.host_target) {
22222223
let src_dir = offload_install.join("lib");
2224+
let libdir = builder.sysroot_target_libdir(build_compiler, build_compiler.host);
22232225
let target_libdir =
22242226
builder.sysroot_target_libdir(target_compiler, target_compiler.host);
22252227
let llvm = llvm::get_llvm_version(builder, &llvm_config);
22262228
let llvm_version = llvm.split('.').take(2).collect::<Vec<_>>().join(".");
2227-
let rust_version = builder.rust_version();
2229+
//let rust_version = builder.rust_version();
22282230
// e.g. libLLVMOffload.so.21.1
22292231
let lib_ext = std::env::consts::DLL_EXTENSION;
2230-
let libenzyme = format!("libLLVMOffload.{lib_ext}.{llvm_version}");
2231-
dbg!(&libenzyme);
2232-
let dst_lib = libdir.join(&libenzyme).with_extension(lib_ext);
2233-
let target_dst_lib = target_libdir.join(&libenzyme).with_extension(lib_ext);
2234-
let src_lib = src_dir.join(&libenzyme);
2232+
let liboffload = format!("libLLVMOffload.{lib_ext}.{llvm_version}");
2233+
dbg!(&liboffload);
2234+
let dst_lib = libdir.join(&liboffload);
2235+
let target_dst_lib = target_libdir.join(&liboffload);
2236+
let src_lib = src_dir.join(&liboffload);
2237+
dbg!(&src_lib);
2238+
dbg!(&dst_lib);
2239+
dbg!(&target_dst_lib);
22352240
builder.copy_link(&src_lib, &dst_lib, FileType::NativeLibrary);
22362241
builder.copy_link(&src_lib, &target_dst_lib, FileType::NativeLibrary);
22372242

22382243
// libomp.so, libomptarget.so
22392244
let omp = src_dir.join("libomp").with_extension(lib_ext);
22402245
let tgt = src_dir.join("libomptarget").with_extension(lib_ext);
2241-
builder.copy_link(&omp, &dst_lib, FileType::NativeLibrary);
2242-
builder.copy_link(&omp, &dst_lib, FileType::NativeLibrary);
2243-
builder.copy_link(&tgt, &dst_lib, FileType::NativeLibrary);
2244-
builder.copy_link(&tgt, &dst_lib, FileType::NativeLibrary);
2246+
let dst_omp_lib = libdir.join(&omp);
2247+
let target_dst_omp_lib = target_libdir.join(&omp);
2248+
let dst_tgt_lib = libdir.join(&tgt);
2249+
let target_dst_tgt_lib = target_libdir.join(&tgt);
2250+
builder.copy_link(&omp, &dst_omp_lib, FileType::NativeLibrary);
2251+
builder.copy_link(&omp, &target_dst_omp_lib, FileType::NativeLibrary);
2252+
builder.copy_link(&tgt, &dst_tgt_lib, FileType::NativeLibrary);
2253+
builder.copy_link(&tgt, &target_dst_tgt_lib, FileType::NativeLibrary);
22452254
//[\u@\h:\W]$ ls ../offload-outdir/lib
22462255
// amdgcn-amd-amdhsa libarcher.so libgomp.so libiomp5.so libLLVMOffload.so.21.1 libomp.so libomptarget.so.21.1
22472256
// cmake libarcher_static.a libgomp.so.1 libLLVMOffload.so libompd.so libomptarget.so nvptx64-nvidia-cuda

0 commit comments

Comments
 (0)