fn main() {
println!("cargo:rustc-check-cfg=cfg(cuda_runtime_available)");
#[cfg(target_os = "linux")]
{
println!("cargo:rustc-link-lib=numa");
}
#[cfg(feature = "cuda")]
{
let cuda_available = std::process::Command::new("nvcc")
.arg("--version")
.output()
.map(|output| output.status.success())
.unwrap_or(false);
if cuda_available {
println!("cargo:rustc-cfg=cuda_runtime_available");
} else {
println!("cargo:warning=CUDA feature enabled but CUDA toolkit not found - CUDA-dependent tests/examples will be skipped");
println!("cargo:warning=Compilation will likely fail due to missing CUDA libraries");
println!(
"cargo:warning=To fix: either install CUDA toolkit or build without --all-features"
);
}
}
}