Only no-op ld64.lld on Apple hosts #9698
Open
+8
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Following #8119, invoking
ld64.lld
results in the errorThis version of lld does not support linking for platform [macOS/iOS/...]
.The rationale behind the original change was to make sure people don't accidentally use lld instead of dyld's ld64 on macOS, given that new macOS toolchains ship with lld for linking ELF binaries. However, this had the unintended effect of also making it impossible to cross-compile MachO binaries on Linux hosts with the Swift toolchain — a use case that is otherwise fully possible with Swift SDKs.
This PR updates the patch such that we only abort when linking Darwin binaries on Apple host platforms.