haskell.compiler.ghc902: remove at 9.0.2

Let's drop everyone's least favorite GHC version.
This commit is contained in:
sternenseemann
2025-02-11 21:15:25 +01:00
committed by Wolfgang Walther
parent eba6675b2c
commit f8560ade01
6 changed files with 7 additions and 54 deletions

View File

@@ -26,6 +26,8 @@
- GHC 8.6 and its package set have been removed. It was only used to bootstrap GHC for powerpc64le, but this was probably broken anyway.
- GHC 9.0 and its package set have been removed.
- `base16-builder` node package has been removed due to lack of upstream maintenance.
- `python3Packages.bjoern` has been removed, as the upstream is unmaintained and it depends on a 14-year-old version of http-parser with numerous vulnerabilities.

View File

@@ -1,4 +0,0 @@
import ./common-make-native-bignum.nix {
version = "9.0.2";
sha256 = "140e42b96346322d1a39eb17602bcdc76e292028ad4a69286b230bab188a9197";
}

View File

@@ -355,7 +355,7 @@ stdenv.mkDerivation (
]
)
++ lib.optionals (lib.versionAtLeast version "9.2") [
++ [
# Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
# Can be removed if the Cabal library included with ghc backports the linked fix
(fetchpatch {
@@ -366,17 +366,6 @@ stdenv.mkDerivation (
})
]
++ lib.optionals (lib.versionOlder version "9.2.2") [
# Add flag that fixes C++ exception handling; opt-in. Merged in 9.4 and 9.2.2.
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7423
(fetchpatch {
name = "ghc-9.0.2-fcompact-unwind.patch";
# Note that the test suite is not packaged.
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/c6132c782d974a7701e7f6447bdcd2bf6db4299a.patch?merge_request_iid=7423";
sha256 = "sha256-b4feGZIaKDj/UKjWTNY6/jH4s2iate0wAgMxG3rAbZI=";
})
]
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
++ lib.optionals (lib.versionOlder version "9.4") [
(fetchpatch {
@@ -417,12 +406,7 @@ stdenv.mkDerivation (
# These cause problems as they're not eliminated by GHC's dead code
# elimination on aarch64-darwin. (see
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
(
if lib.versionAtLeast version "9.2" then
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
else
./Cabal-3.2-3.4-paths-fix-cycle-aarch64-darwin.patch
)
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
];
postPatch = "patchShebangs .";
@@ -483,7 +467,7 @@ stdenv.mkDerivation (
echo -n "${buildMK}" > mk/build.mk
''
+ lib.optionalString (lib.versionOlder version "9.2" || lib.versionAtLeast version "9.4") ''
+ lib.optionalString (lib.versionAtLeast version "9.4") ''
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
''
+ lib.optionalString (stdenv.hostPlatform.isLinux && hostPlatform.libc == "glibc") ''
@@ -495,7 +479,7 @@ stdenv.mkDerivation (
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof"
''
+ lib.optionalString (stdenv.hostPlatform.isDarwin && lib.versionAtLeast version "9.2") ''
+ lib.optionalString (stdenv.hostPlatform.isDarwin) ''
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
export XATTR=${lib.getBin xattr}/bin/xattr
@@ -603,11 +587,6 @@ stdenv.mkDerivation (
]
++ lib.optionals enableDocs [
sphinx
]
++ lib.optionals (stdenv.hostPlatform.isDarwin && lib.versions.majorMinor version == "9.0") [
# TODO(@sternenseemann): backport addition of XATTR env var like
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
xattr
];
# Everything the stage0 compiler needs to build stage1: CC, bintools, extra libs.

View File

@@ -110,15 +110,6 @@ in
llvmPackages = pkgs.llvmPackages_12;
};
ghc810 = compiler.ghc8107;
ghc902 = callPackage ../development/compilers/ghc/9.0.2.nix {
bootPkgs = bb.packages.ghc8107Binary;
inherit (buildPackages.python311Packages) sphinx; # a distutils issue with 3.12
python3 = buildPackages.python311; # so that we don't have two of them
inherit (buildPackages.darwin) autoSignDarwinBinariesHook xattr;
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghc90 = compiler.ghc902;
ghc928 = callPackage ../development/compilers/ghc/9.2.8.nix {
bootPkgs =
# GHC >= 9.0 removed the armv7l bindist
@@ -361,12 +352,6 @@ in
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
};
ghc810 = packages.ghc8107;
ghc902 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc902;
ghc = bh.compiler.ghc902;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.x.nix { };
};
ghc90 = packages.ghc902;
ghc928 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc928;
ghc = bh.compiler.ghc928;
@@ -458,6 +443,7 @@ in
);
}
// pkgs.lib.optionalAttrs config.allowAliases {
ghc90 = throw "'haskell.packages.ghc90' has been removed."; # Added 2025-09-07
ghcjs = throw "'haskell.packages.ghcjs' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06
ghcjs810 = throw "'haskell.packages.ghcjs810' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06
};

View File

@@ -64,7 +64,6 @@ let
# list of all compilers to test specific packages on
released = with compilerNames; [
ghc8107
ghc902
ghc928
ghc948
ghc963
@@ -556,7 +555,6 @@ let
# of core packages, it is not always reasonable to get cabal-install to
# work with older compilers.
compilerNames.ghc8107
compilerNames.ghc902
compilerNames.ghc928
compilerNames.ghc948
] released;
@@ -578,14 +576,11 @@ let
haskell-language-server = lib.subtractLists [
# Support ceased as of 2.3.0.0
compilerNames.ghc8107
# Support ceased as of 2.5.0.0
compilerNames.ghc902
# Support ceased as of 2.10.0.0
compilerNames.ghc928
] released;
hoogle = released;
hlint = lib.subtractLists [
compilerNames.ghc902
compilerNames.ghc9101
compilerNames.ghc9102
compilerNames.ghc9122
@@ -598,7 +593,6 @@ let
titlecase = released;
ghc-api-compat = [
compilerNames.ghc8107
compilerNames.ghc902
];
ghc-bignum = [
compilerNames.ghc8107
@@ -687,11 +681,9 @@ let
constituents = accumulateDerivations [
jobs.pkgsMusl.haskell.compiler.ghc8107Binary
jobs.pkgsMusl.haskell.compiler.ghc8107
jobs.pkgsMusl.haskell.compiler.ghc902
jobs.pkgsMusl.haskell.compiler.ghc928
jobs.pkgsMusl.haskell.compiler.ghcHEAD
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc902
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc928
jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD
];

View File

@@ -363,8 +363,6 @@ let
packages =
genAttrs
[
# TODO: share this list between release.nix and release-haskell.nix
"ghc90"
"ghc92"
"ghc94"
"ghc96"