Skip to content

libpsl: fix Darwin cross-compilation#347007

Merged
emilazy merged 1 commit intoNixOS:stagingfrom
reckenrode:push-kxspnlrursow
Oct 11, 2024
Merged

libpsl: fix Darwin cross-compilation#347007
emilazy merged 1 commit intoNixOS:stagingfrom
reckenrode:push-kxspnlrursow

Conversation

@reckenrode
Copy link
Contributor

Don’t include Python in libpsl’s build inputs when cross compiling to Darwin. Python does not support cross-compilation to Darwin (see python/cpython#90905), which prevents cross-compiling anything that depends on libpsl (such as curl).

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.11 Release Notes (or backporting 23.11 and 24.05 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.

@ofborg ofborg bot added 6.topic: cross-compilation Building packages on a different platform than they will be used on 6.topic: darwin Running or building packages on Darwin 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 Oct 7, 2024
Copy link
Member

Choose a reason for hiding this comment

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

This should be &&, right? Otherwise static non‐Darwin starts including Python 3.

It might be nice to set broken on Darwin cross Python and base this on python3.meta.broken instead, since I think the other conditional here is because static Python also broke recently…

@reckenrode reckenrode force-pushed the push-kxspnlrursow branch 3 times, most recently from cd35593 to 1550fc9 Compare October 9, 2024 02:15
@ofborg ofborg bot added 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. and removed 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Oct 9, 2024
Don’t include Python in libpsl’s build inputs when cross compiling to
Darwin. Python does not support cross-compilation to Darwin, which
prevents cross-compiling anything that depends on libpsl (such as curl).
Copy link
Member

@emilazy emilazy left a comment

Choose a reason for hiding this comment

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

I hope we can fix this and if not then the conditional should be in python3, but LGTM to unblock this for now.

@emilazy emilazy merged commit 986659b into NixOS:staging Oct 11, 2024
@reckenrode reckenrode deleted the push-kxspnlrursow branch October 11, 2024 13:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: cross-compilation Building packages on a different platform than they will be used on 6.topic: darwin Running or building packages on Darwin 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants