Merge pull request #146938 from sternenseemann/ghc901-llvm-9

haskell.compiler: refactor LLVM handling, upgrade to latest LLVM version for each GHC version
This commit is contained in:
sterni 2021-11-24 14:50:34 +01:00 committed by GitHub
commit 48b60ee86f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 26 additions and 24 deletions

View file

@ -378,6 +378,8 @@ stdenv.mkDerivation rec {
targetPrefix = "";
enableShared = true;
inherit llvmPackages;
# Our Cabal compiler name
haskellCompilerName = "ghc-${version}";
};

View file

@ -378,6 +378,8 @@ stdenv.mkDerivation rec {
targetPrefix = "";
enableShared = true;
inherit llvmPackages;
# Our Cabal compiler name
haskellCompilerName = "ghc-${version}";
};

View file

@ -181,14 +181,15 @@ stdenv.mkDerivation rec {
targetPrefix = "";
enableShared = true;
inherit llvmPackages;
# Our Cabal compiler name
haskellCompilerName = "ghc-${version}";
};
meta = rec {
license = lib.licenses.bsd3;
platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin"];
# build segfaults, use ghc8102Binary which has proper musl support instead
broken = stdenv.hostPlatform.isMusl;
maintainers = with lib.maintainers; [

View file

@ -4,8 +4,7 @@ with haskellLib;
self: super: {
# This compiler version needs llvm 9.x.
llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_9;
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
# Disable GHC 8.10.x core libraries.
array = null;

View file

@ -4,8 +4,7 @@ with haskellLib;
self: super: {
# This compiler version needs llvm 6.x.
llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_6;
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
# Disable GHC 8.6.x core libraries.
array = null;

View file

@ -4,8 +4,7 @@ with haskellLib;
self: super: {
# This compiler version needs llvm 7.x.
llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_7;
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
# Disable GHC 8.8.x core libraries.
array = null;

View file

@ -4,8 +4,7 @@ with haskellLib;
self: super: {
# This compiler version needs llvm 10.x.
llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_10;
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
# Disable GHC 9.0.x core libraries.
array = null;

View file

@ -4,8 +4,7 @@ with haskellLib;
self: super: {
# This compiler version needs llvm 10.x.
llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_10;
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
# Disable GHC 9.2.x core libraries.
array = null;

View file

@ -11,7 +11,7 @@ with haskellLib;
self: super: {
llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_10;
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
# Disable GHC 8.7.x core libraries.
array = null;

View file

@ -50,7 +50,9 @@ in {
compiler = {
ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix { };
ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix {
llvmPackages = pkgs.llvmPackages_6;
};
ghc8102Binary = callPackage ../development/compilers/ghc/8.10.2-binary.nix {
llvmPackages = pkgs.llvmPackages_9;
@ -62,11 +64,11 @@ in {
};
ghc8107Binary = callPackage ../development/compilers/ghc/8.10.7-binary.nix {
llvmPackages = pkgs.llvmPackages_11;
llvmPackages = pkgs.llvmPackages_12;
};
ghc8107BinaryMinimal = callPackage ../development/compilers/ghc/8.10.7-binary.nix {
llvmPackages = pkgs.llvmPackages_11;
llvmPackages = pkgs.llvmPackages_12;
minimal = true;
};
@ -96,8 +98,8 @@ in {
# https://github.com/xattr/xattr/issues/44 and
# https://github.com/xattr/xattr/issues/55 are solved.
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
buildLlvmPackages = buildPackages.llvmPackages_9;
llvmPackages = pkgs.llvmPackages_9;
buildLlvmPackages = buildPackages.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix {
bootPkgs =
@ -109,8 +111,8 @@ in {
packages.ghc8107Binary;
inherit (buildPackages.python3Packages) sphinx;
inherit (buildPackages.darwin) autoSignDarwinBinariesHook;
buildLlvmPackages = buildPackages.llvmPackages_10;
llvmPackages = pkgs.llvmPackages_10;
buildLlvmPackages = buildPackages.llvmPackages_9;
llvmPackages = pkgs.llvmPackages_9;
};
ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix {
bootPkgs =
@ -124,8 +126,8 @@ in {
# https://github.com/xattr/xattr/issues/44 and
# https://github.com/xattr/xattr/issues/55 are solved.
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
buildLlvmPackages = buildPackages.llvmPackages_10;
llvmPackages = pkgs.llvmPackages_10;
buildLlvmPackages = buildPackages.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
bootPkgs = packages.ghc8107Binary;
@ -134,8 +136,8 @@ in {
# https://github.com/xattr/xattr/issues/44 and
# https://github.com/xattr/xattr/issues/55 are solved.
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
buildLlvmPackages = buildPackages.llvmPackages_10;
llvmPackages = pkgs.llvmPackages_10;
buildLlvmPackages = buildPackages.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
libffi = pkgs.libffi;
};