diff --git a/nix-tools/overlay.nix b/nix-tools/overlay.nix index 5d63272fbf..dd915b6f48 100644 --- a/nix-tools/overlay.nix +++ b/nix-tools/overlay.nix @@ -1,7 +1,7 @@ final: _prev: let - compiler-nix-name = "ghc964"; + compiler-nix-name = "ghc96"; nix-tools = nix-tools-set { nix-tools = nix-tools-unchecked; diff --git a/overlays/bootstrap.nix b/overlays/bootstrap.nix index bcb44291b3..ad084e0529 100644 --- a/overlays/bootstrap.nix +++ b/overlays/bootstrap.nix @@ -9,7 +9,7 @@ let "9.0" = "9.0.2"; "9.2" = "9.2.8"; "9.4" = "9.4.8"; - "9.6" = "9.6.4"; + "9.6" = "9.6.5"; "9.8" = "9.8.2"; }; gitInputs = { @@ -238,7 +238,8 @@ in { ++ final.lib.optionals (final.stdenv.targetPlatform.isGhcjs) (fromUntil "9.6.1" "9.6.3" ./patches/ghc/ghc-9.6-JS-implement-TH-support.patch) ++ final.lib.optionals (final.stdenv.targetPlatform.isGhcjs) (fromUntil "9.6.3" "9.8" ./patches/ghc/ghc-9.6.3-JS-implement-TH-support.patch) ++ fromUntil "9.8.1" "9.8.2" ./patches/ghc/ghc-9.8-cabal-c-soures-fix.patch - ++ fromUntil "9.6.3" "9.9" ./patches/ghc/ghc-9.6.3-Cabal-9384.patch + ++ fromUntil "9.6.3" "9.6.5" ./patches/ghc/ghc-9.6.3-Cabal-9384.patch + ++ fromUntil "9.8.1" "9.9" ./patches/ghc/ghc-9.6.3-Cabal-9384.patch # the following is a partial reversal of https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4391, to address haskell.nix#1227 ++ final.lib.optional (versionAtLeast "8.10.6" && versionLessThan "9.0" && final.stdenv.targetPlatform.isAarch64) ./patches/ghc/mmap-next.patch @@ -937,7 +938,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc961 - else final.buildPackages.buildPackages.haskell.compiler.ghc964 + else final.buildPackages.buildPackages.haskell.compiler.ghc965 + or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 or final.buildPackages.buildPackages.haskell.compiler.ghc962 or final.buildPackages.buildPackages.haskell.compiler.ghc945 @@ -963,7 +965,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc962 - else final.buildPackages.buildPackages.haskell.compiler.ghc964 + else final.buildPackages.buildPackages.haskell.compiler.ghc965 + or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 or final.buildPackages.buildPackages.haskell.compiler.ghc962 or final.buildPackages.buildPackages.haskell.compiler.ghc945 @@ -989,7 +992,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc963 - else final.buildPackages.buildPackages.haskell.compiler.ghc964 + else final.buildPackages.buildPackages.haskell.compiler.ghc965 + or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 or final.buildPackages.buildPackages.haskell.compiler.ghc962 or final.buildPackages.buildPackages.haskell.compiler.ghc945 @@ -1015,7 +1019,8 @@ in { bootPkgs = bootPkgsGhc94 // { ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform then final.buildPackages.buildPackages.haskell-nix.compiler.ghc964 - else final.buildPackages.buildPackages.haskell.compiler.ghc964 + else final.buildPackages.buildPackages.haskell.compiler.ghc965 + or final.buildPackages.buildPackages.haskell.compiler.ghc964 or final.buildPackages.buildPackages.haskell.compiler.ghc963 or final.buildPackages.buildPackages.haskell.compiler.ghc962 or final.buildPackages.buildPackages.haskell.compiler.ghc945 @@ -1035,6 +1040,33 @@ in { ghc-patches = ghc-patches "9.6.4"; }); + ghc965 = final.callPackage ../compiler/ghc (traceWarnOld "9.6" { + extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc965; }; + + bootPkgs = bootPkgsGhc94 // { + ghc = if final.stdenv.buildPlatform != final.stdenv.targetPlatform + then final.buildPackages.buildPackages.haskell-nix.compiler.ghc965 + else final.buildPackages.buildPackages.haskell.compiler.ghc965 + or final.buildPackages.buildPackages.haskell.compiler.ghc964 + or final.buildPackages.buildPackages.haskell.compiler.ghc963 + or final.buildPackages.buildPackages.haskell.compiler.ghc962 + or final.buildPackages.buildPackages.haskell.compiler.ghc945 + or final.buildPackages.buildPackages.haskell.compiler.ghc944 + or final.buildPackages.buildPackages.haskell.compiler.ghc943; + }; + inherit sphinx; + + buildLlvmPackages = final.buildPackages.llvmPackages_12; + llvmPackages = final.llvmPackages_12; + + src-spec = rec { + version = "9.6.5"; + url = "https://downloads.haskell.org/~ghc/${version}/ghc-${version}-src.tar.xz"; + sha256 = "sha256-h7OJkk+YwaJsIFEidXM4yNqzOtH89nD6oiYidCQyuTw="; + }; + + ghc-patches = ghc-patches "9.6.5"; + }); ghc981 = final.callPackage ../compiler/ghc (traceWarnOld "9.8" { extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc981; };