Skip to content

haskell.compiler.*: use wrapped install_name_tool on aarch64#148116

Merged
sternenseemann merged 1 commit intoNixOS:masterfrom
sternenseemann:ghc-aarch6-darwin-use-wrapped
Dec 1, 2021
Merged

haskell.compiler.*: use wrapped install_name_tool on aarch64#148116
sternenseemann merged 1 commit intoNixOS:masterfrom
sternenseemann:ghc-aarch6-darwin-use-wrapped

Conversation

@sternenseemann
Copy link
Member

On aarch64-darwin we have an additional wrapper for install_name_tool to
deal with codesigning requirements. Using the unwrapped variant like on
x86_64-darwin would lead to the Setup binary getting killed by the
kernel in builds of haskell packages.

Testing the build of at least haskellPackages.th-abstraction would be required.

Motivation for this change
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/)
  • 22.05 Release Notes (or backporting 21.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
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@github-actions github-actions bot added the 6.topic: haskell General-purpose, statically typed, purely functional programming language label Dec 1, 2021
@ofborg ofborg bot added 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. labels Dec 1, 2021
@domenkozar
Copy link
Member

@ofborg build ghc

1 similar comment
@domenkozar
Copy link
Member

@ofborg build ghc

@domenkozar
Copy link
Member

@NixOS/darwin-maintainers could someone test this on aarch64-darwin?

@sternenseemann
Copy link
Member Author

@fendor has, seems to fix the regression for th-abstraction.

@sternenseemann
Copy link
Member Author

Gonna squash the commits and then merge, sound good?

On aarch64-darwin we have additional wrappers for install_name_tool and
strip to deal with codesigning requirements (e. g. updating the
signature / checksum after changing a binary). These wrappers don't
exist on x86_64-darwin which is why the unwrapped versions were used
before, causing the kernel to kill (some) executables produced by GHC.
@sternenseemann sternenseemann force-pushed the ghc-aarch6-darwin-use-wrapped branch from f5f5066 to 1b076eb Compare December 1, 2021 16:03
@sternenseemann sternenseemann merged commit 6daa4a5 into NixOS:master Dec 1, 2021
@sternenseemann sternenseemann deleted the ghc-aarch6-darwin-use-wrapped branch December 1, 2021 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: haskell General-purpose, statically typed, purely functional programming language 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