Skip to content

cc-wrapper: when merging gcc32 and gcc64, merge libgcc as well#230470

Merged
3 commits merged intomasterfrom
unknown repository
May 9, 2023
Merged

cc-wrapper: when merging gcc32 and gcc64, merge libgcc as well#230470
3 commits merged intomasterfrom
unknown repository

Conversation

@ghost
Copy link
Copy Markdown

@ghost ghost commented May 7, 2023

Description of changes

Our gcc_multi and glibc_multi expressions merge together a 32-bit-targeted and 64-bit-targeted gcc. However they do not thread through the passthru.libgcc from these merged gccs.

This commit corrects that.

It also extends passthru.libgcc to allow a list rather than just a single outpath.

Resolves part of #221891 (at least getting it back to the error message it gave before).

Edit: pushed two more commits; this now closes #221891.

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.05 Release Notes (or backporting 22.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@ghost ghost mentioned this pull request May 7, 2023
@ghost ghost requested a review from trofi May 7, 2023 08:51
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels May 7, 2023
@mweinelt mweinelt added the 12.approvals: 1 This PR was reviewed and approved by one person. label May 7, 2023
Copy link
Copy Markdown
Member

@RaitoBezarius RaitoBezarius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LLVM: LGTM.

@mweinelt mweinelt added 12.approvals: 2 This PR was reviewed and approved by two persons. and removed 12.approvals: 1 This PR was reviewed and approved by one person. labels May 7, 2023
Adam Joseph added 3 commits May 9, 2023 00:16
Our gcc_multi and glibc_multi expressions merge together a
32-bit-targeted and 64-bit-targeted gcc.  However they do not thread
through the passthru.libgcc from these merged gccs.

This commit corrects that.

It also extends passthru.libgcc to allow a *list* rather than just a
single outpath.

Resolves part of #221891 (at least getting it back to the error
message it gave before).
The phoney gcc that we construct for multilib was missing the
`langCC` attribute, which `cc-wrapper` needs in order to decide
whether or not to add gcc's `libstdc++` headers as an `-isystem` for
`clang`.
The phoney gcc that we construct for multilib was missing the
`$out/include/c++` directory which `cc-wrapper` needs to pass as an
`-isystem` to `clang`.

Closes #221891
@ghost ghost requested review from Artturin and trofi May 9, 2023 07:21
@ghost ghost added the 0.kind: ZHF Fixes Fixes during the Zero Hydra Failures (ZHF) campaign label May 9, 2023
@ghost
Copy link
Copy Markdown
Author

ghost commented May 9, 2023

#230712

@ofborg ofborg bot requested a review from RaitoBezarius May 9, 2023 07:43
@ghost ghost merged commit c74b0ec into NixOS:master May 9, 2023
@ghost ghost deleted the fix/221891 branch January 23, 2024 06:45
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

0.kind: ZHF Fixes Fixes during the Zero Hydra Failures (ZHF) campaign 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 12.approvals: 2 This PR was reviewed and approved by two persons.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

tests.cc-multilib-clang fails

3 participants