@ -15,15 +15,18 @@ let
" i n t e g e r - s i m p l e "
" n a t i v e - b i g n u m "
" g h c 9 0 2 "
" g h c 9 0 "
" g h c 9 2 4 "
" g h c 9 2 "
" g h c 9 4 2 "
" g h c 9 4 "
" g h c H E A D "
] ;
nativeBignumIncludes = [
" g h c 9 0 2 "
" g h c 9 2 4 "
" g h c 9 4 2 "
" g h c 9 0 "
" g h c 9 2 "
" g h c 9 4 "
" g h c H E A D "
] ;
@ -56,7 +59,7 @@ in {
package-list = callPackage ../development/haskell-modules/package-list.nix { } ;
compiler = {
compiler = rec {
ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix {
llvmPackages = pkgs . llvmPackages_6 ;
@ -103,6 +106,7 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget . llvmPackages_7 ;
llvmPackages = pkgs . llvmPackages_7 ;
} ;
ghc88 = ghc884 ;
ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix {
bootPkgs =
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
@ -123,6 +127,7 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget . llvmPackages_12 ;
llvmPackages = pkgs . llvmPackages_12 ;
} ;
ghc810 = ghc8107 ;
ghc902 = callPackage ../development/compilers/ghc/9.0.2.nix {
bootPkgs =
# aarch64 ghc8107Binary exceeds max output size on hydra
@ -130,7 +135,7 @@ in {
if stdenv . hostPlatform . isAarch then
packages . ghc8107BinaryMinimal
else if stdenv . hostPlatform . isPower64 && stdenv . hostPlatform . isLittleEndian then
packages . ghc8107
packages . ghc810
else
packages . ghc8107Binary ;
inherit ( buildPackages . python3Packages ) sphinx ;
@ -138,13 +143,14 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget . llvmPackages_12 ;
llvmPackages = pkgs . llvmPackages_12 ;
} ;
ghc90 = ghc902 ;
ghc924 = callPackage ../development/compilers/ghc/9.2.4.nix {
bootPkgs =
# aarch64 ghc8107Binary exceeds max output size on hydra
if stdenv . hostPlatform . isAarch then
packages . ghc8107BinaryMinimal
else if stdenv . hostPlatform . isPower64 && stdenv . hostPlatform . isLittleEndian then
packages . ghc8107
packages . ghc810
else
packages . ghc8107Binary ;
inherit ( buildPackages . python3Packages ) sphinx ;
@ -155,6 +161,7 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget . llvmPackages_12 ;
llvmPackages = pkgs . llvmPackages_12 ;
} ;
ghc92 = ghc924 ;
ghc942 = callPackage ../development/compilers/ghc/9.4.2.nix {
bootPkgs =
# Building with 9.2 is broken due to
@ -179,6 +186,7 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget . llvmPackages_12 ;
llvmPackages = pkgs . llvmPackages_12 ;
} ;
ghc94 = ghc942 ;
ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
bootPkgs =
if stdenv . hostPlatform . isPower64 && stdenv . hostPlatform . isLittleEndian then
@ -197,7 +205,7 @@ in {
ghcjs = compiler . ghcjs810 ;
ghcjs810 = callPackage ../development/compilers/ghcjs/8.10 {
bootPkgs = packages . ghc8107 ;
bootPkgs = packages . ghc810 ;
ghcjsSrcJson = ../development/compilers/ghcjs/8.10/git.json ;
stage0 = ../development/compilers/ghcjs/8.10/stage0.nix ;
} ;
@ -227,7 +235,7 @@ in {
packageOverrides = self : super : { } ;
# Always get compilers from `buildPackages`
packages = let bh = buildPackages . haskell ; in {
packages = let bh = buildPackages . haskell ; in rec {
ghc865Binary = callPackage ../development/haskell-modules {
buildHaskellPackages = bh . packages . ghc865Binary ;
@ -276,26 +284,31 @@ in {
ghc = bh . compiler . ghc884 ;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { } ;
} ;
ghc88 = ghc884 ;
ghc8107 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh . packages . ghc8107 ;
ghc = bh . compiler . ghc8107 ;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { } ;
} ;
ghc810 = 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 = ghc902 ;
ghc924 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh . packages . ghc924 ;
ghc = bh . compiler . ghc924 ;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { } ;
} ;
ghc92 = ghc924 ;
ghc942 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh . packages . ghc942 ;
ghc = bh . compiler . ghc942 ;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { } ;
} ;
ghc94 = ghc942 ;
ghcHEAD = callPackage ../development/haskell-modules {
buildHaskellPackages = bh . packages . ghcHEAD ;
ghc = bh . compiler . ghcHEAD ;