Skip to content
This repository was archived by the owner on Mar 24, 2022. It is now read-only.

Commit d4b7ffd

Browse files
author
Pat Hickey
authored
Merge pull request #420 from froydnj/ld-multiple-tokens
be lenient in interpreting LD
2 parents cf53a3b + 71d7c07 commit d4b7ffd

1 file changed

Lines changed: 10 additions & 1 deletion

File tree

lucetc/src/lib.rs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -389,7 +389,16 @@ where
389389
Q: AsRef<Path>,
390390
{
391391
use std::process::Command;
392-
let mut cmd_ld = Command::new(env::var("LD").unwrap_or(LD_DEFAULT.into()));
392+
393+
// Let `LD` be something like "clang --target=... ..." for convenience.
394+
let env_ld = env::var("LD").unwrap_or(LD_DEFAULT.into());
395+
let mut ld_iter = env_ld.split_whitespace();
396+
let ld_prog = ld_iter.next().expect("LD must not be empty");
397+
let mut cmd_ld = Command::new(ld_prog);
398+
for flag in ld_iter {
399+
cmd_ld.arg(flag);
400+
}
401+
393402
cmd_ld.arg(objpath.as_ref());
394403
let env_ldflags = env::var("LDFLAGS").unwrap_or_else(|_| ldflags_default(target));
395404
for flag in env_ldflags.split_whitespace() {

0 commit comments

Comments
 (0)