haskell.compiler.ghc963: drop (#440410)

This commit is contained in:
Wolfgang Walther
2025-09-18 18:15:00 +00:00
committed by GitHub
5 changed files with 26 additions and 80 deletions
-4
View File
@@ -1,4 +0,0 @@
import ./common-hadrian.nix {
version = "9.6.3";
sha256 = "1xbpxchmvm9gswrwwz1rsvx9kjaxhc2q3fx9l6wa0l5599xydkfz";
}
@@ -183,51 +183,29 @@
|| (lib.versionAtLeast version "9.8" && lib.versionOlder version "9.11");
in
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
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.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"
&& !(lib.versionAtLeast version "9.6.7" && lib.versionOlder version "9.8")
&& !(lib.versionAtLeast version "9.8.4" && lib.versionOlder version "9.9")
&& !(lib.versionAtLeast version "9.10.2" && lib.versionOlder version "9.11")
)
[
# Determine size of time related types using hsc2hs instead of assuming CLong.
# Prevents failures when e.g. stat(2)ing on 32bit systems with 64bit time_t etc.
# https://github.com/haskell/ghcup-hs/issues/1107
# https://gitlab.haskell.org/ghc/ghc/-/issues/25095
# Note that in normal situations this shouldn't be the case since nixpkgs
# doesn't set -D_FILE_OFFSET_BITS=64 and friends (yet).
(fetchpatch {
name = "unix-fix-ctimeval-size-32-bit.patch";
url = "https://github.com/haskell/unix/commit/8183e05b97ce870dd6582a3677cc82459ae566ec.patch";
sha256 = "17q5yyigqr5kxlwwzb95sx567ysfxlw6bp3j4ji20lz0947aw6gv";
stripLen = 1;
extraPrefix = "libraries/unix/";
})
]
++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.6.6") [
(fetchpatch {
name = "fix-fully_static.patch";
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/1bb24432ff77e11a0340a7d8586e151e15bba2a1.diff";
hash = "sha256-MpvTmFFsNiPDoOp9BhZyWeapeibQ77zgEV+xzZ1UAXs=";
})
]
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"
&& !(lib.versionAtLeast version "9.6.7" && lib.versionOlder version "9.8")
&& !(lib.versionAtLeast version "9.8.4" && lib.versionOlder version "9.9")
&& !(lib.versionAtLeast version "9.10.2" && lib.versionOlder version "9.11")
)
[
# Determine size of time related types using hsc2hs instead of assuming CLong.
# Prevents failures when e.g. stat(2)ing on 32bit systems with 64bit time_t etc.
# https://github.com/haskell/ghcup-hs/issues/1107
# https://gitlab.haskell.org/ghc/ghc/-/issues/25095
# Note that in normal situations this shouldn't be the case since nixpkgs
# doesn't set -D_FILE_OFFSET_BITS=64 and friends (yet).
(fetchpatch {
name = "unix-fix-ctimeval-size-32-bit.patch";
url = "https://github.com/haskell/unix/commit/8183e05b97ce870dd6582a3677cc82459ae566ec.patch";
sha256 = "17q5yyigqr5kxlwwzb95sx567ysfxlw6bp3j4ji20lz0947aw6gv";
stripLen = 1;
extraPrefix = "libraries/unix/";
})
]
++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.8") [
# Fix unlit being installed under a different name than is used in the
# settings file: https://gitlab.haskell.org/ghc/ghc/-/issues/23317
@@ -189,16 +189,3 @@ in
# A given major version of ghc-exactprint only supports one version of GHC.
ghc-exactprint = addBuildDepend self.extra super.ghc-exactprint_1_7_1_0;
}
# super.ghc is required to break infinite recursion as Nix is strict in the attrNames
//
lib.optionalAttrs (pkgs.stdenv.hostPlatform.isAarch64 && lib.versionOlder super.ghc.version "9.6.4")
{
# The NCG backend for aarch64 generates invalid jumps in some situations,
# 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
inherit (lib.mapAttrs (_: self.forceLlvmCodegenBackend) super)
tls
mmark
;
}
+3 -17
View File
@@ -97,15 +97,6 @@ in
inherit buildTargetLlvmPackages llvmPackages;
};
ghc94 = compiler.ghc948;
ghc963 = callPackage ../development/compilers/ghc/9.6.3.nix {
bootPkgs = bb.packages.ghc924Binary;
inherit (buildPackages.python3Packages) sphinx;
# Need to use apple's patched xattr until
# https://github.com/xattr/xattr/issues/44 and
# https://github.com/xattr/xattr/issues/55 are solved.
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
inherit buildTargetLlvmPackages llvmPackages;
};
ghc967 = callPackage ../development/compilers/ghc/9.6.7.nix {
bootPkgs = bb.packages.ghc924Binary;
inherit (buildPackages.python3Packages) sphinx;
@@ -138,7 +129,7 @@ in
# that 9.6.4 bindists pass linker flags our ld doesn't support).
# With both 9.6.3 and 9.6.4 binary it is impossible to link against
# the clock package (probably a hsc2hs problem).
bb.packages.ghc963
bb.packages.ghc967
else
bb.packages.ghc963Binary;
inherit (buildPackages.python3Packages) sphinx;
@@ -156,7 +147,7 @@ in
# that 9.6.4 bindists pass linker flags our ld doesn't support).
# With both 9.6.3 and 9.6.4 binary it is impossible to link against
# the clock package (probably a hsc2hs problem).
bb.packages.ghc963
bb.packages.ghc967
else
bb.packages.ghc963Binary;
inherit (buildPackages.python3Packages) sphinx;
@@ -174,7 +165,7 @@ in
# that 9.6.4 bindists pass linker flags our ld doesn't support).
# With both 9.6.3 and 9.6.4 binary it is impossible to link against
# the clock package (probably a hsc2hs problem).
bb.packages.ghc963
bb.packages.ghc967
else
bb.packages.ghc963Binary;
inherit (buildPackages.python3Packages) sphinx;
@@ -283,11 +274,6 @@ in
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
};
ghc94 = packages.ghc948;
ghc963 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc963;
ghc = bh.compiler.ghc963;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
};
ghc967 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc967;
ghc = bh.compiler.ghc967;
-1
View File
@@ -64,7 +64,6 @@ let
# list of all compilers to test specific packages on
released = with compilerNames; [
ghc948
ghc963
ghc967
ghc984
ghc9101