Skip to content

Commit 75e98cc

Browse files
committed
Include hash also in ar and lib symlink paths
1 parent b4e0ffb commit 75e98cc

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

src/zig.rs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1386,10 +1386,10 @@ pub fn prepare_zig_linker(target: &str) -> Result<ZigWrapper> {
13861386
write_linker_wrapper(&current_exe, &zig_ranlib, "ranlib", "")?;
13871387

13881388
let exe_ext = if cfg!(windows) { ".exe" } else { "" };
1389-
let zig_ar = zig_linker_dir.join(format!("ar{exe_ext}"));
1390-
symlink_wrapper(&zig_ar)?;
1391-
let zig_lib = zig_linker_dir.join(format!("lib{exe_ext}"));
1392-
symlink_wrapper(&zig_lib)?;
1389+
let zig_ar = zig_linker_dir.join(format!("ar-{:x}{exe_ext}", hash));
1390+
symlink_wrapper(&current_exe, &zig_ar)?;
1391+
let zig_lib = zig_linker_dir.join(format!("lib-{:x}{exe_ext}", hash));
1392+
symlink_wrapper(&current_exe, &zig_lib)?;
13931393

13941394
Ok(ZigWrapper {
13951395
cc: zig_cc,
@@ -1400,12 +1400,7 @@ pub fn prepare_zig_linker(target: &str) -> Result<ZigWrapper> {
14001400
})
14011401
}
14021402

1403-
fn symlink_wrapper(target: &Path) -> Result<()> {
1404-
let current_exe = if let Ok(exe) = env::var("CARGO_BIN_EXE_cargo-zigbuild") {
1405-
PathBuf::from(exe)
1406-
} else {
1407-
env::current_exe()?
1408-
};
1403+
fn symlink_wrapper(current_exe: &Path, target: &Path) -> Result<()> {
14091404
#[cfg(windows)]
14101405
{
14111406
if !target.exists() {

0 commit comments

Comments
 (0)