diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-11-20 14:55:32 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-11-20 14:55:32 +0100 |
commit | 34b58aaefccdb5c64b912903973ba729bae58be3 (patch) | |
tree | e18a96bc0f066422356a8da655453403baa97e64 /nixpkgs/pkgs/top-level/haskell-packages.nix | |
parent | 7be318098d7fe87d896e8787bfadc0345149cb59 (diff) | |
parent | 3fb937a1e9f4157f57011965b99fcb7f4139d9ad (diff) | |
download | nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.tar nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.tar.gz nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.tar.bz2 nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.tar.lz nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.tar.xz nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.tar.zst nixlib-34b58aaefccdb5c64b912903973ba729bae58be3.zip |
Merge branch 'nixos-unstable-small' of https://github.com/NixOS/nixpkgs
Diffstat (limited to 'nixpkgs/pkgs/top-level/haskell-packages.nix')
-rw-r--r-- | nixpkgs/pkgs/top-level/haskell-packages.nix | 75 |
1 files changed, 40 insertions, 35 deletions
diff --git a/nixpkgs/pkgs/top-level/haskell-packages.nix b/nixpkgs/pkgs/top-level/haskell-packages.nix index 0b970cb44f04..b8f11100d39c 100644 --- a/nixpkgs/pkgs/top-level/haskell-packages.nix +++ b/nixpkgs/pkgs/top-level/haskell-packages.nix @@ -1,37 +1,12 @@ { buildPackages, pkgsBuildTarget, pkgs, newScope, stdenv }: let - # These are attributes in compiler and packages that don't support integer-simple. - integerSimpleExcludes = [ - "ghc865Binary" - "ghc8102Binary" - "ghc8107Binary" - "ghc924Binary" - "ghcjs" - "ghcjs810" - "integer-simple" - "native-bignum" - "ghc902" - "ghc90" - "ghc924" - "ghc925" - "ghc926" - "ghc927" - "ghc928" - "ghc92" - "ghc942" - "ghc943" - "ghc944" - "ghc945" - "ghc946" - "ghc947" - "ghc94" - "ghc96" - "ghc962" - "ghc963" - "ghc981" - "ghc98" - "ghcHEAD" + # These are attributes in compiler that support integer-simple. + integerSimpleIncludes = [ + "ghc88" + "ghc884" + "ghc810" + "ghc8107" ]; nativeBignumIncludes = [ @@ -50,6 +25,7 @@ let "ghc945" "ghc946" "ghc947" + "ghc948" "ghc96" "ghc962" "ghc963" @@ -363,7 +339,31 @@ in { buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; llvmPackages = pkgs.llvmPackages_12; }; - ghc94 = compiler.ghc947; + ghc948 = callPackage ../development/compilers/ghc/9.4.8.nix { + bootPkgs = + # Building with 9.2 is broken due to + # https://gitlab.haskell.org/ghc/ghc/-/issues/21914 + # Use 8.10 as a workaround where possible to keep bootstrap path short. + + # On ARM text won't build with GHC 8.10.* + if stdenv.hostPlatform.isAarch then + # TODO(@sternenseemann): package bindist + packages.ghc902 + # No suitable bindists for powerpc64le + else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then + packages.ghc902 + else + packages.ghc8107Binary; + 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 && < 14 + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; + llvmPackages = pkgs.llvmPackages_12; + }; + ghc94 = compiler.ghc948; ghc962 = callPackage ../development/compilers/ghc/9.6.2.nix { bootPkgs = # For GHC 9.2 no armv7l bindists are available. @@ -437,7 +437,7 @@ in { # build with integer-simple instead of integer-gmp. integer-simple = let integerSimpleGhcNames = pkgs.lib.filter - (name: ! builtins.elem name integerSimpleExcludes) + (name: builtins.elem name integerSimpleIncludes) (pkgs.lib.attrNames compiler); in pkgs.recurseIntoAttrs (pkgs.lib.genAttrs integerSimpleGhcNames @@ -558,7 +558,12 @@ in { ghc = bh.compiler.ghc947; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { }; }; - ghc94 = packages.ghc947; + ghc948 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc948; + ghc = bh.compiler.ghc948; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { }; + }; + ghc94 = packages.ghc948; ghc962 = callPackage ../development/haskell-modules { buildHaskellPackages = bh.packages.ghc962; ghc = bh.compiler.ghc962; @@ -595,7 +600,7 @@ in { integer-simple = let integerSimpleGhcNames = pkgs.lib.filter - (name: ! builtins.elem name integerSimpleExcludes) + (name: builtins.elem name integerSimpleIncludes) (pkgs.lib.attrNames packages); in pkgs.lib.genAttrs integerSimpleGhcNames |