From 5ea114083c0362f8d58f967fccb7e4916f02cf06 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Mon, 9 Oct 2023 23:10:53 +0200 Subject: haskell.packages.ghc96.tls: fix missing LLVM tools on aarch64 The original change missed that we used to erroneously provide LLVM on aarch64-linux, but not on aarch64-darwin which was later fixed in #246045. Since the change was tested on aarch64-linux prior to this, tls ended up being broken on both aarch64-linux and aarch64-darwin. This commit resolves the situation by introducing a helper function to achieve the effect of passing -fllvm while ensuring LLVM is provided. Resolves #260013. --- pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix') diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix index e14ad08b9263..0c6320e4f77b 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix @@ -272,7 +272,5 @@ self: super: { # the workaround on 9.6 is to revert to the LLVM backend (which is used # for these sorts of situations even on 9.2 and 9.4). # https://gitlab.haskell.org/ghc/ghc/-/issues/23746#note_525318 - tls = appendConfigureFlags - (lib.optionals pkgs.stdenv.hostPlatform.isAarch64 [ "--ghc-option=-fllvm" ]) - super.tls; + tls = if pkgs.stdenv.hostPlatform.isAarch64 then self.forceLlvmCodegenBackend super.tls else super.tls; } -- cgit 1.4.1