llvmPackages_{12,13,14,15,16,17,18,git}.clang: fix libLTO.dylib path #304350
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.
Description of changes
Clang assumes that
libLTO.dylib
is located at../lib
in the same prefix asclang
, but that’s not true in nixpkgs.libLTO.dylib
is actually located atlibllvm^lib/lib.libLTO.dylib
.This is the first piece to fixing LTO on Darwin. The other is updating ld64, which I will be doing in a separate PR later this week. This PR does not depend on that PR because there is no harm passing the correct path to ld64. It does not perform LTO by default, and trying to use
-flto
even with the correct path remains broken.Testing was done using my WIP PR for ld64 with clang 16. See #19098 (comment) for output. It can also be validated by setting
NIX_DEBUG=1
when running clang, then confirming that the path passed to-lto_library
actually exists in the store.Note: Testing was done on #302481. I’m building against the common clang branch now.
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.