Skip to content

CoreFoundation: apply hook to correct platform#284706

Merged
vcunat merged 1 commit intoNixOS:staging-23.11from
szlend:core-foundation-hook-role
Feb 8, 2024
Merged

CoreFoundation: apply hook to correct platform#284706
vcunat merged 1 commit intoNixOS:staging-23.11from
szlend:core-foundation-hook-role

Conversation

@szlend
Copy link
Member

@szlend szlend commented Jan 29, 2024

Description of changes

Cross-compiling from darwin to linux is broken if the derivation includes CoreFoundation somewhere in its (native) input deps. This change makes the cf-setup-hook aware of its platform role, replacing NIX_LDFLAGS with NIX_LDFLAGS_FOR_BUILD when necessary.

Fixes #278348 in 23.11 without getting rid of the hook in case anyone was relying on it.

In unstable we probably want to get rid of the hook entirely. See #284629.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • 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/)
  • 24.05 Release Notes (or backporting 23.05 and 23.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.

Add a 👍 reaction to pull requests you find important.

@szlend
Copy link
Member Author

szlend commented Jan 29, 2024

Some checks failed because of API rate-limiting. I don't think I have permissions to rerun them.

Edit: I'll just rebase.

@ofborg ofborg bot added the 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. label Jan 29, 2024
@ofborg ofborg bot requested a review from copumpkin January 29, 2024 07:26
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Jan 29, 2024
@szlend szlend force-pushed the core-foundation-hook-role branch from 8862d89 to 1d8c2f1 Compare January 29, 2024 20:21
@szlend
Copy link
Member Author

szlend commented Jan 29, 2024

Fixed cross-compiling aws-sdk-cpp:

$ nix build -f . pkgsCross.muslpi.aws-sdk-cpp --sandbox -L --print-out-paths
/nix/store/66a4f2bshzysarkf1kdlskbzw0qwn6g5-aws-sdk-cpp-armv6l-unknown-linux-musleabihf-1.11.118

Copy link
Contributor

@reckenrode reckenrode left a comment

Choose a reason for hiding this comment

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

LGTM

@toonn Pinging you for your review.

@delroth delroth added the 12.approvals: 1 This PR was reviewed and approved by one person. label Feb 3, 2024
@szlend szlend requested a review from toonn February 3, 2024 22:51
Copy link
Contributor

@toonn toonn left a comment

Choose a reason for hiding this comment

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

Couple questions that apply to the hook changes, only commented on one of them because the changes are identical AFAICT.

Copy link
Contributor

@toonn toonn left a comment

Choose a reason for hiding this comment

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

LGTM

@vcunat vcunat merged commit 747d058 into NixOS:staging-23.11 Feb 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 12.approvals: 1 This PR was reviewed and approved by one person.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants