Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions pkgs/development/compilers/ghc/9.6.1.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import ./common-hadrian.nix rec {
version = "9.6.1";
sha256 = "fe5ac909cb8bb087e235de97fa63aff47a8ae650efaa37a2140f4780e21f34cb";
}
4 changes: 3 additions & 1 deletion pkgs/development/compilers/ghc/common-hadrian.nix
Original file line number Diff line number Diff line change
Expand Up @@ -395,9 +395,11 @@ stdenv.mkDerivation ({

nativeBuildInputs = [
perl ghc hadrian bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
# autoconf and friends are necessary for hadrian to create the bindist
autoconf automake m4
] ++ lib.optionals (rev != null) [
# We need to execute the boot script
autoconf automake m4 python3
python3
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
autoSignDarwinBinariesHook
] ++ lib.optionals enableDocs [
Expand Down
50 changes: 50 additions & 0 deletions pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
{ pkgs, haskellLib }:

let
inherit (pkgs) lib;
in

with haskellLib;

self: super: {
llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;

# Disable GHC core libraries
array = null;
base = null;
binary = null;
bytestring = null;
Cabal = null;
Cabal-syntax = null;
containers = null;
deepseq = null;
directory = null;
exceptions = null;
filepath = null;
ghc-bignum = null;
ghc-boot = null;
ghc-boot-th = null;
ghc-compact = null;
ghc-heap = null;
ghc-prim = null;
ghci = null;
haskeline = null;
hpc = null;
integer-gmp = null;
libiserv = null;
mtl = null;
parsec = null;
pretty = null;
process = null;
rts = null;
stm = null;
system-cxx-std-lib = null;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

need to check if this makes sense (also rts and hpc) – if they are not on hackage it's probably sensible to remove them here.

template-haskell = null;
# terminfo is not built if GHC is a cross compiler
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_5;
text = null;
time = null;
transformers = null;
unix = null;
xhtml = null;
}
2 changes: 1 addition & 1 deletion pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -15002,7 +15002,7 @@ with pkgs;
haskellPackages = dontRecurseIntoAttrs
# JS backend is only available for GHC >= 9.6
(if stdenv.hostPlatform.isGhcjs
then haskell.packages.native-bignum.ghcHEAD
then haskell.packages.native-bignum.ghc96
# Prefer native-bignum to avoid linking issues with gmp
else if stdenv.hostPlatform.isStatic
then haskell.packages.native-bignum.ghc92
Expand Down
33 changes: 32 additions & 1 deletion pkgs/top-level/haskell-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ let
"ghc943"
"ghc944"
"ghc94"
"ghc96"
"ghc961"
"ghcHEAD"
];

Expand All @@ -40,6 +42,8 @@ let
"ghc942"
"ghc943"
"ghc944"
"ghc96"
"ghc961"
"ghcHEAD"
];

Expand Down Expand Up @@ -299,6 +303,27 @@ in {
llvmPackages = pkgs.llvmPackages_12;
};
ghc94 = ghc944;
ghc961 = callPackage ../development/compilers/ghc/9.6.1.nix {
bootPkgs =
# For GHC 9.2 no armv7l bindists are available.
if stdenv.hostPlatform.isAarch32 then
packages.ghc924
else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
packages.ghc924
else if stdenv.isAarch64 then
packages.ghc924BinaryMinimal
else
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;
# Support range >= 10 && < 15
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_14;
llvmPackages = pkgs.llvmPackages_14;
};
ghc96 = ghc961;
ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
bootPkgs =
# For GHC 9.2 no armv7l bindists are available.
Expand All @@ -315,7 +340,7 @@ in {
# https://github.com/xattr/xattr/issues/44 and
# https://github.com/xattr/xattr/issues/55 are solved.
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
# 2022-08-04: Support range >= 10 && < 15
# 2023-01-15: Support range >= 10 && < 15
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_14;
llvmPackages = pkgs.llvmPackages_14;
};
Expand Down Expand Up @@ -451,6 +476,12 @@ in {
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
};
ghc94 = ghc942;
ghc961 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc961;
ghc = bh.compiler.ghc961;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
};
ghc96 = ghc961;
ghcHEAD = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghcHEAD;
ghc = bh.compiler.ghcHEAD;
Expand Down
21 changes: 14 additions & 7 deletions pkgs/top-level/release-haskell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -346,19 +346,26 @@ let
};
};

# TODO(@sternenseemann): when GHC 9.6 comes out we need separate jobs for
# default GHC and ghcHEAD.
pkgsCross.ghcjs.haskellPackages =
pkgsCross.ghcjs =
removePlatforms
[
# Hydra output size of 3GB is exceeded
"aarch64-linux"
]
{
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskellPackages)
ghc
hello
;
haskellPackages = {
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskellPackages)
ghc
hello
;
};

haskell.packages.ghcHEAD = {
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskell.packages.ghcHEAD)
ghc
hello
;
};
};
})
(versionedCompilerJobs {
Expand Down