Skip to content

Comments

haskellPackages: Pass ghc-options in generic-builder when cross-compiling#317181

Merged
sternenseemann merged 1 commit intoNixOS:masterfrom
wolfgangwalther:ghc-options-cross
Jun 8, 2024
Merged

haskellPackages: Pass ghc-options in generic-builder when cross-compiling#317181
sternenseemann merged 1 commit intoNixOS:masterfrom
wolfgangwalther:ghc-options-cross

Conversation

@wolfgangwalther
Copy link
Contributor

The following sequence of operations loses ghc-options:

  Setup.hs configure --ghc-options
  Setup.hs build --with-ghc=...

This is described in 1.

The fix is simple: Don't pass --with-ghc in the build phase. The values are taken from the configure step anyway. This seems to have been introduced all the way back in 64ec4dd about 8 years ago for unknown reasons.

@sternenseemann since you're already holding fireworks in #286285, please have a look.

Things done

Built pkgsStatic.hello.

  • 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.

…ling

The following sequence of operations loses ghc-options:
  Setup.hs configure --ghc-options
  Setup.hs build --with-ghc=...

This is described in [1].

The fix is simple: Don't pass --with-ghc in the build phase. The values
are taken from the configure step anyway. This seems to have been
introduced all the way back in 64ec4dd
about 8 years ago for unknown reasons.

Resolves NixOS#286285

[1]: haskell/cabal#10069
@github-actions github-actions bot added the 6.topic: haskell General-purpose, statically typed, purely functional programming language label Jun 4, 2024
@sternenseemann sternenseemann self-assigned this Jun 4, 2024
@ofborg ofborg bot added 6.topic: cross-compilation Building packages on a different platform than they will be used on 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 Jun 4, 2024
@sternenseemann sternenseemann merged commit a24f97b into NixOS:master Jun 8, 2024
@sternenseemann sternenseemann added the 9.needs: port to stable A PR needs a backport to the stable release. label Jun 10, 2024
@wolfgangwalther wolfgangwalther deleted the ghc-options-cross branch June 12, 2024 07:04
@sternenseemann sternenseemann added backport staging-24.05 and removed 9.needs: port to stable A PR needs a backport to the stable release. labels Jun 20, 2024
@github-actions
Copy link
Contributor

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: 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