Skip to content

Commit 6cad5f0

Browse files
committed
Use join_paths and var_os to build ld_lib_path
1 parent 897200d commit 6cad5f0

File tree

1 file changed

+10
-3
lines changed
  • src/tools/run-make-support/src

1 file changed

+10
-3
lines changed

src/tools/run-make-support/src/lib.rs

+10-3
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,17 @@ pub fn add_host_rpath_env(cmd: &mut Command) {
99
let ld_lib_path_envvar = env::var("LD_LIB_PATH_ENVVAR").unwrap();
1010
let ld_lib_path_value = env::var(&ld_lib_path_envvar).unwrap();
1111

12-
let temp = env::var("TMPDIR").unwrap();
13-
let host_rpath_dir = env::var("HOST_RPATH_DIR").unwrap();
12+
let temp = env::var_os("TMPDIR").unwrap();
13+
let host_rpath_dir = env::var_os("HOST_RPATH_DIR").unwrap();
1414

15-
cmd.env(ld_lib_path_envvar, format!("{temp}:{host_rpath_dir}:{ld_lib_path_value}"));
15+
let mut paths = Vec::from([temp, host_rpath_dir]);
16+
for p in env::split_paths(&ld_lib_path_value) {
17+
paths.push(p.into_os_string());
18+
}
19+
20+
let path = std::env::join_paths(paths).unwrap();
21+
22+
cmd.env(ld_lib_path_envvar, path);
1623
}
1724

1825
pub fn out_dir() -> PathBuf {

0 commit comments

Comments
 (0)