From b8594d9b63063c34c1deecbee9f3bda01a507835 Mon Sep 17 00:00:00 2001 From: Sander Date: Sun, 6 Apr 2025 21:57:50 +0000 Subject: [PATCH] haskell.compiler.ghc96{3,4}: fix builds on aarch64-linux Applies an upstream patch that fixes a pointer type mismatch in the RTS. https://gitlab.haskell.org/ghc/ghc/-/issues/24348 Fixed upstream starting with GHC 9.6.5. --- pkgs/development/compilers/ghc/common-hadrian.nix | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/ghc/common-hadrian.nix b/pkgs/development/compilers/ghc/common-hadrian.nix index b5840159f59d..7d56d81ec9aa 100644 --- a/pkgs/development/compilers/ghc/common-hadrian.nix +++ b/pkgs/development/compilers/ghc/common-hadrian.nix @@ -186,9 +186,18 @@ lib.optionals (lib.versionOlder version "9.6.7") [ ./docs-sphinx-7.patch ] - + ++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.6.5") [ + # Fix aarch64-linux builds of 9.6.0 - 9.6.4. + # Fixes a pointer type mismatch in the RTS. + # https://gitlab.haskell.org/ghc/ghc/-/issues/24348 + (fetchpatch { + name = "fix-incompatible-pointer-types.patch"; + url = "https://gitlab.haskell.org/ghc/ghc/-/commit/1e48c43483693398001bfb0ae644a3558bf6a9f3.diff"; + hash = "sha256-zUlzpX7J1n+MCEv9AWpj69FTy2uzJH8wrQDkTexGbgM="; + }) + ] ++ - lib.optional + lib.optionals ( # 2025-01-16: unix >= 2.8.6.0 is unaffected which is shipped by GHC 9.12.1 and 9.8.4 lib.versionOlder version "9.11"