After commit 2b619b7c7b53 ("Merge commit 93a67259cf23 from llvm git (by
ShengYi Hung):") Clang invokes ld.lld, but we were not copying it into
the build tools tree.
Extend the host-symlinks toolchain tools logic to check if the tool is a
symlink, and if so invoke ${_WRAP_HOST_TOOL} on the symlink target as
well.
This is more general than having a special-case just for ld.lld, but I
did not want to change the entire host-symlinks target. A future
project could move this logic into a shell or flua script helper.
Event: Halifax Hackathon 2020606
Sponsored by: The FreeBSD FoundationDetails
Details
Diff Detail
Diff Detail
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
Comment Actions
Hm. If the link is absolute, we definitely don't need to do anything to it, and if the link is relative, well, who knows? We might already be linking it, copying it, adding our own wrapper, etc.
There's also a bit of a mismatch here now. bmake thinks (X)LD is ld, but clang thinks it's ld.lld.
Comment Actions
You can't unconditionally add it though. For XLD it's probably ok to just check whether it's "ld" or not, but for LD I don't know what the right thing to do is.
Comment Actions
Maybe for now it should just be "if ${_tool} is ld and a relative symlink to the same directory then wrap that too"?
| tools/build/Makefile | ||
|---|---|---|
| 476 | Oh, should also check for dups | |