cctools-llvm: use cctools assembler on LLVM 11 and x86_64-darwin#242202
cctools-llvm: use cctools assembler on LLVM 11 and x86_64-darwin#242202vcunat merged 2 commits intoNixOS:staging-nextfrom
Conversation
|
Converting to draft because it’s late, and I don’t have any more time tonight to dig into the ofborg failure. |
|
Looks like |
3d4a5f1 to
7e76bbc
Compare
|
@ofborg build gcc gcc.passthru.tests |
Shouldn’t that have caused an evaluation failure in the bootstrap PR? I’ll look at this more today. There’s also a Rust build failure I was trying to proactively fix that needs fixed too. |
|
Since the fix has been merged into staging-next for the build failure, I’m going to retarget staging since this also touches a separate issue. |
|
I checked the failure of |
|
#242519 is the PR to fix the icu issue. I’m waiting on that PR because there are differences between x86_64-darwin and aarch64-darwin in how Libsystem and CF are built, which could cause unwanted paths in the output. I feel pretty confident, but I don’t want to mark it ready when x86_64-darwin could still be broken. |
Clang 11 performs an optimization on x86_64 that is sensitive to the presence of debug information. This results in GCC’s bootstrap failing because it builds stage 2 with debug information and stage 3 without, and the resulting objects do not match. This patch uses the cctools assembler on LLVM 11 and x86_64-darwin while using the integrated assembler on newer versions, which matches the platform tools (Apple has uses the integrated assembler since Xcode 12).
This reverts commit b39481b.
d5b2efe to
937f472
Compare
|
I pushed a commit to revert the GCC change since this PR addresses the issue generally for clang 11 on x86_64-darwin. |
|
@ofborg build gcc gcc.passthru.tests |
|
@wegank I updated the description since the scope of the PR changed and rebased it on staging-next. The x86_64-darwin stdend still has 460 packages to build on my system before I can confirm there are no issues with the final stdenv. |
|
#242519 is ready for review. It fixes the ICU issue. |
|
You have still time for reviewing this; I believe it's possible to include in the current Given our situation, I made Hydra build only |
Description of changes
This PR addresses the build failure in #241951 (comment) more generally by using the cctools assembler with LLVM 11 on x86_64-darwin (in case there are other packages that are sensitive to the differences in output it can produce depending on debug information).
Things done
sandbox = trueset innix.conf? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)