-
-
Notifications
You must be signed in to change notification settings - Fork 15.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gcc: Darwin cross-compiler build fixes #271787
Conversation
Using the host bintools results in evaluation errors when building an AVR cross-compiler due to trying to build cctools for AVR.
Building a cross-compiler fails due to register storage class specifier errors when building with clang 16 due to its defaulting to C++17. Downgrading the error allows the older cross-compilers to build.
Result of |
Result of 2 packages built:
|
Result of |
I also confirmed the following
|
Out of curiosity, why is aarch64-darwin cross compiling broken on gcc11 only? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks so much for this! lgtm. this will get qmk
building on x86_64-darwin
again which is good enough for me. qmk on aarch64-darwin
has pretty much never worked and i can look into that later.
I think this will have to be manually backported due to #266193. |
It’s broken on that and older. The reason for calling out GCC 11 is the native compiler builds and works on aarch64-darwin. |
Tested QMK builds on x86_64-darwin and ofborg is good. Lets go! 🚀 |
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin release-23.11
git worktree add -d .worktree/backport-271787-to-release-23.11 origin/release-23.11
cd .worktree/backport-271787-to-release-23.11
git switch --create backport-271787-to-release-23.11
git cherry-pick -x db20831951cebae92b8e630b61bf5ca3c1bdad11 fe27958aed65ac531732544dd6a8b9c20da4d813 4a538d6b3df931c87fb38b14fa1d0038d39f45e5 f2a7764cab5799d2a68e6771679780303b5b3afa |
Description of changes
Building cross-compilers on Darwin is currently broken. This PR was prompted by #270986, but it does not fix that issue because GCC 8 does not build on aarch64-darwin. qmk will need to be updated to use a newer version of GCC.
All supported GCC versions on Darwin except for GCC 11 on aarch64-darwin should be buildable as cross-compilers.
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/
)Priorities
Add a 👍 reaction to pull requests you find important.