Merge pull request #83164 from NixOS/haskell-updates

Update Haskell package set to LTS 15.5 (plus other fixes)
This commit is contained in:
Peter Simons 2020-03-27 21:31:27 +01:00 committed by GitHub
commit 1d963cde66
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 1839 additions and 726 deletions

View file

@ -1,6 +1,6 @@
{ fetchurl }:
fetchurl {
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/fcb0ed924c8504d54870d6dc2092b9dab8305732.tar.gz";
sha256 = "0b7dxgj40y9svddrx14scnxls20ww4f717zhz3lwigb16dm4crpi";
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/e0bc864e0b6edb5e5ce1ec4bfa763a442b343bf5.tar.gz";
sha256 = "1lmjxam58srrv9cjqajqz4bishx8hy99db3cx83i95qb3qiiiz6m";
}

View file

@ -149,15 +149,21 @@ stdenv.mkDerivation (rec {
# TODO(@Ericson2314): Always pass "--target" and always prefix.
configurePlatforms = [ "build" "host" ]
++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
# `--with` flags for libraries needed for RTS linker
configureFlags = [
"--datadir=$doc/share/doc/ghc"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
] ++ stdenv.lib.optionals (libffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetPackages.libffi.dev}/include" "--with-ffi-libraries=${targetPackages.libffi.out}/lib"
] ++ stdenv.lib.optionals (libffi != null) [
"--with-system-libffi"
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
] ++ stdenv.lib.optional (targetPlatform == hostPlatform && !enableIntegerSimple) [
"--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
"--with-iconv-includes=${libiconv}/include"
"--with-iconv-libraries=${libiconv}/lib"
] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
"--enable-bootstrap-with-devel-snapshot"
] ++ stdenv.lib.optionals useLdGold [

View file

@ -1,12 +1,15 @@
{ stdenv
, fetchurl, perl, gcc
, ncurses5, gmp, glibc, libiconv
, llvmPackages
}:
# Prebuilt only does native
assert stdenv.targetPlatform == stdenv.hostPlatform;
let
useLLVM = !stdenv.targetPlatform.isx86;
libPath = stdenv.lib.makeLibraryPath ([
ncurses5 gmp
] ++ stdenv.lib.optional (stdenv.hostPlatform.isDarwin) libiconv);
@ -24,27 +27,33 @@ let
in
stdenv.mkDerivation rec {
version = "8.6.3";
version = "8.6.5";
name = "ghc-${version}-binary";
# https://downloads.haskell.org/~ghc/8.6.5/
src = fetchurl ({
i686-linux = {
url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb8-linux.tar.xz";
sha256 = "0bw8a7fxcbskf93rb4m542ff66vrmx5i5kj77qx37cbhijx70w5m";
url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
sha256 = "1p2h29qghql19ajk755xa0yxkn85slbds8m9n5196ris743vkp8w";
};
x86_64-linux = {
url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-deb8-linux.tar.xz";
sha256 = "1m9gaga2pzi2cx5gvasg0rx1dlvr68gmi20l67652kag6xjsa719";
url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-deb9-linux.tar.xz";
sha256 = "1pqlx6rdjs2110g0y1i9f8x18lmdizibjqd15f5xahcz39hgaxdw";
};
aarch64-linux = {
url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-aarch64-ubuntu18.04-linux.tar.xz";
sha256 = "11n7l2a36i5vxzzp85la2555q4m34l747g0pnmd81cp46y85hlhq";
};
x86_64-darwin = {
url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
sha256 = "1hbzk57v45176kxcx848p5jn5p1xbp2129ramkbzsk6plyhnkl3r";
sha256 = "0s9188vhhgf23q3rjarwhbr524z6h2qga5xaaa2pma03sfqvvhfz";
};
}.${stdenv.hostPlatform.system}
or (throw "cannot bootstrap GHC on this platform"));
nativeBuildInputs = [ perl ];
propagatedBuildInputs = stdenv.lib.optionals useLLVM [ llvmPackages.llvm ];
# Cannot patchelf beforehand due to relative RPATHs that anticipate
# the final install location/
@ -168,5 +177,5 @@ stdenv.mkDerivation rec {
};
meta.license = stdenv.lib.licenses.bsd3;
meta.platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin"];
meta.platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
}

View file

@ -76,7 +76,7 @@ default-package-overrides:
# gi-gdkx11-4.x requires gtk-4.x, which is still under development and
# not yet available in Nixpkgs
- gi-gdkx11 < 4
# LTS Haskell 15.4
# LTS Haskell 15.5
- abstract-deque ==0.3
- abstract-par ==0.3.3
- AC-Angle ==1.0
@ -88,7 +88,7 @@ default-package-overrides:
- adjunctions ==4.4
- adler32 ==0.1.2.0
- advent-of-code-api ==0.2.7.0
- aeson ==1.4.6.0
- aeson ==1.4.7.0
- aeson-attoparsec ==0.0.0
- aeson-better-errors ==0.9.1.0
- aeson-casing ==0.2.0.0
@ -267,7 +267,7 @@ default-package-overrides:
- auto-update ==0.1.6
- avers ==0.0.17.1
- avro ==0.4.7.0
- aws-cloudfront-signed-cookies ==0.2.0.1
- aws-cloudfront-signed-cookies ==0.2.0.4
- base16-bytestring ==0.1.1.6
- base32string ==0.9.1
- base58string ==0.10.0
@ -407,7 +407,7 @@ default-package-overrides:
- Chart-diagrams ==1.9.3
- chaselev-deque ==0.5.0.5
- ChasingBottoms ==1.3.1.7
- checkers ==0.5.4
- checkers ==0.5.5
- checksum ==0.0
- chimera ==0.3.0.0
- choice ==0.2.2
@ -448,6 +448,7 @@ default-package-overrides:
- colorful-monoids ==0.2.1.2
- colorize-haskell ==1.0.1
- colour ==2.3.5
- colourista ==0.0.0.0
- combinatorial ==0.1.0.1
- comfort-array ==0.4
- comfort-graph ==0.0.3.1
@ -466,11 +467,11 @@ default-package-overrides:
- concurrent-output ==1.10.11
- concurrent-split ==0.0.1.1
- cond ==0.4.1.1
- conduit ==1.3.1.2
- conduit ==1.3.2
- conduit-algorithms ==0.0.11.0
- conduit-combinators ==1.3.0
- conduit-concurrent-map ==0.1.1
- conduit-extra ==1.3.4
- conduit-extra ==1.3.5
- conduit-parse ==0.2.1.0
- conduit-zstd ==0.0.1.1
- conferer ==0.2.0.0
@ -617,7 +618,7 @@ default-package-overrides:
- distributed-closure ==0.4.2.0
- distribution-opensuse ==1.1.1
- distributive ==0.6.1
- dl-fedora ==0.7.3
- dl-fedora ==0.7.4
- dlist ==0.8.0.7
- dlist-instances ==0.1.1.1
- dlist-nonempty ==0.1.1
@ -806,7 +807,7 @@ default-package-overrides:
- generic-random ==1.3.0.0
- generics-sop ==0.5.0.0
- generics-sop-lens ==0.2
- genvalidity ==0.10.0.1
- genvalidity ==0.10.0.2
- genvalidity-aeson ==0.3.0.0
- genvalidity-bytestring ==0.5.0.1
- genvalidity-containers ==0.8.0.2
@ -834,12 +835,12 @@ default-package-overrides:
- ghc-compact ==0.1.0.0
- ghc-core ==0.5.6
- ghc-exactprint ==0.6.2
- ghcid ==0.8.3
- ghcid ==0.8.5
- ghci-hexcalc ==0.1.1.0
- ghcjs-codemirror ==0.0.0.2
- ghc-lib ==8.8.3.20200224
- ghc-lib-parser ==8.8.3.20200224
- ghc-lib-parser-ex ==8.8.5.6
- ghc-lib-parser-ex ==8.8.5.8
- ghc-paths ==0.1.0.12
- ghc-prof ==1.4.1.6
- ghc-source-gen ==0.3.0.0
@ -1150,7 +1151,7 @@ default-package-overrides:
- io-streams-haproxy ==1.0.1.0
- ip ==1.7.1
- ip6addr ==1.0.1
- iproute ==1.7.8
- iproute ==1.7.9
- IPv6Addr ==1.1.3
- ipynb ==0.1
- ipython-kernel ==0.10.1.0
@ -1727,7 +1728,7 @@ default-package-overrides:
- reinterpret-cast ==0.1.0
- relapse ==1.0.0.0
- relational-query ==0.12.2.2
- relational-schemas ==0.1.7.0
- relational-schemas ==0.1.8.0
- relude ==0.6.0.0
- renderable ==0.2.0.1
- replace-attoparsec ==1.2.0.0
@ -1770,7 +1771,7 @@ default-package-overrides:
- safe-json ==1.1.0
- safe-money ==0.9
- SafeSemaphore ==0.10.1
- salak ==0.3.5.3
- salak ==0.3.6
- salak-yaml ==0.3.5.3
- saltine ==0.1.1.0
- salve ==1.0.8
@ -2179,7 +2180,7 @@ default-package-overrides:
- unix-time ==0.4.7
- unliftio ==0.2.12.1
- unliftio-core ==0.1.2.0
- unliftio-pool ==0.2.1.0
- unliftio-pool ==0.2.1.1
- unlit ==0.4.0.0
- unordered-containers ==0.2.10.0
- unordered-intmap ==0.1.1
@ -2373,6 +2374,7 @@ extra-packages:
- dhall == 1.29.0 # required for spago 0.14.0.
- doctemplates == 0.8 # required by pandoc-2.9.x
- generic-deriving == 1.10.5.* # new versions don't compile with GHC 7.10.x
- ghc-tcplugins-extra ==0.3.2 # required for polysemy-plugin 0.2.5.0
- gloss < 1.9.3 # new versions don't compile with GHC 7.8.x
- haddock == 2.22.* # required on GHC 8.0.x
- haddock-api == 2.22.* # required on GHC 7.8.x
@ -2466,6 +2468,8 @@ package-maintainers:
- shakespeare
abbradar:
- Agda
roberth:
- arion-compose
cdepillabout:
- pretty-simple
- spago
@ -2860,7 +2864,6 @@ broken-packages:
- arguedit
- ariadne
- arion
- arion-compose
- armada
- armor
- arpa
@ -7118,6 +7121,7 @@ broken-packages:
- llvm-base-types
- llvm-base-util
- llvm-data-interop
- llvm-dsl
- llvm-extension
- llvm-extra
- llvm-ffi
@ -10109,6 +10113,7 @@ broken-packages:
- touched
- Tournament
- toxcore
- toxcore-c
- toxiproxy-haskell
- toysolver
- tpar

File diff suppressed because it is too large Load diff

View file

@ -4,7 +4,7 @@ let
# These are attributes in compiler and packages that don't support integer-simple.
integerSimpleExcludes = [
"ghc822Binary"
"ghc863Binary"
"ghc865Binary"
"ghc844"
"ghcjs"
"ghcjs86"
@ -42,7 +42,7 @@ in {
ghc822Binary = callPackage ../development/compilers/ghc/8.2.2-binary.nix { };
ghc863Binary = callPackage ../development/compilers/ghc/8.6.3-binary.nix { };
ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix { };
ghc844 = callPackage ../development/compilers/ghc/8.4.4.nix {
bootPkgs = packages.ghc822Binary;
@ -57,31 +57,31 @@ in {
llvmPackages = pkgs.llvmPackages_6;
};
ghc881 = callPackage ../development/compilers/ghc/8.8.1.nix {
bootPkgs = packages.ghc863Binary;
bootPkgs = packages.ghc865Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_7;
llvmPackages = pkgs.llvmPackages_7;
};
ghc882 = callPackage ../development/compilers/ghc/8.8.2.nix {
bootPkgs = packages.ghc863Binary;
bootPkgs = packages.ghc865Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_7;
llvmPackages = pkgs.llvmPackages_7;
};
ghc883 = callPackage ../development/compilers/ghc/8.8.3.nix {
bootPkgs = packages.ghc863Binary;
bootPkgs = packages.ghc865Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_7;
llvmPackages = pkgs.llvmPackages_7;
};
ghc8101 = callPackage ../development/compilers/ghc/8.10.1.nix {
bootPkgs = packages.ghc863Binary;
bootPkgs = packages.ghc865Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_9;
llvmPackages = pkgs.llvmPackages_9;
};
ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
bootPkgs = packages.ghc863Binary;
bootPkgs = packages.ghc865Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_6;
llvmPackages = pkgs.llvmPackages_6;
@ -117,9 +117,9 @@ in {
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { };
packageSetConfig = bootstrapPackageSet;
};
ghc863Binary = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc863Binary;
ghc = bh.compiler.ghc863Binary;
ghc865Binary = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc865Binary;
ghc = bh.compiler.ghc865Binary;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { };
packageSetConfig = bootstrapPackageSet;
};