llvmPackages: sed -i 's/--replace /--replace-fail /g'#356120
llvmPackages: sed -i 's/--replace /--replace-fail /g'#356120RossComputerGuy merged 1 commit intoNixOS:stagingfrom
Conversation
|
This found something. This commit introduced a subtle error in the replacement. 7869d16#diff-0cdba49d4ff4923a2e1d9368cc63521811510568ce3e73699fc76157fc9bb57dL143-R157 @@ -134,20 +152,19 @@ in stdenv.mkDerivation (rec {
- substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
- --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
+ substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
+ --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \Looks like a second 'lib/' was retained unintentionally. At least in llvm 18, the text "_IMPORT_PREFIX" doesn't appear, so I'm inclined to drop it. |
|
Looks as though cmake has been changing it's behaviour in this area, it might not be needed anymore. |
5923ac4 to
00af4e9
Compare
Rationale: --replace is deprecated and emits warnings. If these replacements fail it is probably better to know about it early and come up with better fixes than the alternative of letting them silently fail and discover some distal brokenness. Signed-off-by: Peter Waller <[email protected]>
00af4e9 to
269fdda
Compare
|
Rebased onto staging. One month ping. Switching this over did find some residual problems. (also cc @emilazy who I discussed this with at some point). |
|
Bisect says that 269fdda |
|
Thanks for spotting. If necessary please revert or apply obvious patches, we can revisit later, but I'm not going to do so immediately. I'm afk so can't easily do so now. |
|
I've made an attempted fix in #366029. I'm doing a build of the clangs now to see if it's resolved it beyond clang 19. |
|
also has an issue building at least llvm-19 on darwin |
doesn't match with llvm-19 or llvm-12 |
…l.cmake Fix up NixOS#356120 for clang 12. The failing replacement target was removed between llvm 12.0.0 and 12.0.1. Ref: NixOS#348568 (comment) Ref: llvm/llvm-project@3be5dbb Signed-off-by: Peter Waller <[email protected]>
|
Fix for LLVM 12: #367056 |
The target replacement is failing after NixOS#356120. Currently my analysis is that it must be a vestigial replacement, if it was failing recently and the darwin build was nonetheless happy. I'm not a darwin user so can't easily test. Signed-off-by: Peter Waller <[email protected]>
|
@paparodeo: Potential fix for the issue you mentioned: #367059 |
sorry, forgot to mention that I fixed in 71d262c and it is merged into staging |
|
I missed that only because it was in a PR which looked merely like a package bump, and my staging branch was only just behind. Just got a bit unlucky, thanks for fixing anyway! |
…l.cmake Fix up #356120 for clang 12. The failing replacement target was removed between llvm 12.0.0 and 12.0.1. Ref: #348568 (comment) Ref: llvm/llvm-project@3be5dbb Signed-off-by: Peter Waller <[email protected]>
Rationale: --replace is deprecated and emits warnings. If these
replacements fail it is probably better to know about it early
than the alternative of letting them silently fail
and discover some distal brokenness.
The following was removed as it has no matches in the output, at least no x86_64-linux.
Signed-off-by: Peter Waller [email protected]
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-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.