gcc: fix build with new SDK pattern#346949
Merged
emilazy merged 3 commits intoNixOS:stagingfrom Oct 10, 2024
Merged
Conversation
52 tasks
e6dcf10 to
5795365
Compare
183877a to
1fd30e4
Compare
157f201 to
51edbaa
Compare
a240201 to
4112f1a
Compare
Contributor
Author
|
@ofborg eval |
Contributor
Author
|
@ofborg ofborg-eval-lib-tests |
51edbaa to
4c10288
Compare
a1adff0 to
e3f2829
Compare
The original logic was prepending to the array, but this one prepends the array to itself, which breaks the x86_64-linux stdenv bootstrap. The correct thing to do is build up the arguments in a temporary array and prepend it like the original code was doing.
The GCC bootstrap builds each stage with an unwrapped GCC, which needs to correctly handle looking for libraries and headers in sysroot. Setting the native header folder to `/usr/include` will actually cause GCC to search `<sysroot>/usr/include`, which is the SDKROOT in nixpkgs.
4c10288 to
e500744
Compare
emilazy
approved these changes
Oct 10, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
GCC’s bootstrap uses GCC unwrapped. It needs to be able to find the SDK at sysroot to bootstrap properly on Darwin.
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.