diff options
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/development/compilers/ghc/7.10.2.nix | 18 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/7.10.3.nix | 11 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/7.2.2.nix | 19 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/7.4.2.nix | 19 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/7.6.3.nix | 19 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/7.8.3.nix | 19 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/7.8.4.nix | 19 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/8.0.1.nix | 11 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/8.0.2.nix | 11 | ||||
-rw-r--r-- | pkgs/development/compilers/ghc/head.nix | 11 | ||||
-rw-r--r-- | pkgs/top-level/haskell-packages.nix | 42 |
11 files changed, 160 insertions, 39 deletions
diff --git a/pkgs/development/compilers/ghc/7.10.2.nix b/pkgs/development/compilers/ghc/7.10.2.nix index e384a42a51f..521afbd88b4 100644 --- a/pkgs/development/compilers/ghc/7.10.2.nix +++ b/pkgs/development/compilers/ghc/7.10.2.nix @@ -1,20 +1,27 @@ -{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils +{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils , libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp }: let inherit (bootPkgs) ghc; buildMK = '' - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" ${stdenv.lib.optionalString stdenv.isDarwin '' libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" ''} - ''; + '' + (if enableIntegerSimple then '' + INTEGER_LIBRARY=integer-simple + '' else '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" + ''); in @@ -46,8 +53,9 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-gcc=${stdenv.cc}/bin/cc" - "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" "--datadir=$doc/share/doc/ghc" + ] ++ stdenv.lib.optional (! enableIntegerSimple) [ + "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" ]; # required, because otherwise all symbols from HSffi.o are stripped, and diff --git a/pkgs/development/compilers/ghc/7.10.3.nix b/pkgs/development/compilers/ghc/7.10.3.nix index 020e4fd30cf..d75f5df370f 100644 --- a/pkgs/development/compilers/ghc/7.10.3.nix +++ b/pkgs/development/compilers/ghc/7.10.3.nix @@ -1,5 +1,9 @@ -{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils +{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils , libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp }: let @@ -38,13 +42,16 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" '' + stdenv.lib.optionalString stdenv.isDarwin '' export NIX_LDFLAGS+=" -no_dtrace_dof" + '' + stdenv.lib.optionalString enableIntegerSimple '' + echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk ''; configureFlags = [ "--with-gcc=${stdenv.cc}/bin/cc" - "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--datadir=$doc/share/doc/ghc" + ] ++ stdenv.lib.optional (! enableIntegerSimple) [ + "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" ] ++ stdenv.lib.optional stdenv.isDarwin [ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" ]; diff --git a/pkgs/development/compilers/ghc/7.2.2.nix b/pkgs/development/compilers/ghc/7.2.2.nix index 31cac49135f..b3f672a8ef5 100644 --- a/pkgs/development/compilers/ghc/7.2.2.nix +++ b/pkgs/development/compilers/ghc/7.2.2.nix @@ -1,4 +1,9 @@ -{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: +{ stdenv, fetchurl, ghc, perl, ncurses, libiconv + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp +}: stdenv.mkDerivation rec { version = "7.2.2"; @@ -11,18 +16,22 @@ stdenv.mkDerivation rec { patches = [ ./fix-7.2.2-clang.patch ./relocation.patch ]; - buildInputs = [ ghc perl gmp ncurses ]; + buildInputs = [ ghc perl ncurses ] + ++ stdenv.lib.optional (!enableIntegerSimple) gmp; buildMK = '' - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" ${stdenv.lib.optionalString stdenv.isDarwin '' libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" ''} - ''; + '' + (if enableIntegerSimple then '' + INTEGER_LIBRARY=integer-simple + '' else '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" + ''); preConfigure = '' echo "${buildMK}" > mk/build.mk diff --git a/pkgs/development/compilers/ghc/7.4.2.nix b/pkgs/development/compilers/ghc/7.4.2.nix index 63ce7ddfacc..08b4f6f5471 100644 --- a/pkgs/development/compilers/ghc/7.4.2.nix +++ b/pkgs/development/compilers/ghc/7.4.2.nix @@ -1,4 +1,9 @@ -{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: +{ stdenv, fetchurl, ghc, perl, ncurses, libiconv + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp +}: stdenv.mkDerivation rec { version = "7.4.2"; @@ -12,18 +17,22 @@ stdenv.mkDerivation rec { patches = [ ./fix-7.4.2-clang.patch ./relocation.patch ]; - buildInputs = [ ghc perl gmp ncurses ]; + buildInputs = [ ghc perl ncurses ] + ++ stdenv.lib.optional (!enableIntegerSimple) gmp; buildMK = '' - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" ${stdenv.lib.optionalString stdenv.isDarwin '' libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" ''} - ''; + '' + (if enableIntegerSimple then '' + INTEGER_LIBRARY=integer-simple + '' else '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" + ''); preConfigure = '' echo "${buildMK}" > mk/build.mk diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index 5a933a23aa8..bdc0a20d3b4 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -1,4 +1,9 @@ -{ stdenv, fetchurl, ghc, perl, gmp, ncurses, binutils, libiconv }: +{ stdenv, fetchurl, ghc, perl, ncurses, binutils, libiconv + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp +}: let # The "-Wa,--noexecstack" options might be needed only with GNU ld (as opposed @@ -19,11 +24,10 @@ in stdenv.mkDerivation rec { patches = [ ./fix-7.6.3-clang.patch ./relocation.patch ]; - buildInputs = [ ghc perl gmp ncurses ]; + buildInputs = [ ghc perl ncurses ] + ++ stdenv.lib.optional (!enableIntegerSimple) gmp; buildMK = '' - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" ${stdenv.lib.optionalString stdenv.isDarwin '' @@ -34,7 +38,12 @@ in stdenv.mkDerivation rec { # Set ghcFlags for building ghc itself SRC_HC_OPTS += ${ghcFlags} SRC_CC_OPTS += ${cFlags} - ''; + '' + (if enableIntegerSimple then '' + INTEGER_LIBRARY=integer-simple + '' else '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" + ''); preConfigure = '' echo "${buildMK}" > mk/build.mk diff --git a/pkgs/development/compilers/ghc/7.8.3.nix b/pkgs/development/compilers/ghc/7.8.3.nix index f631ad92356..986ec98c6b3 100644 --- a/pkgs/development/compilers/ghc/7.8.3.nix +++ b/pkgs/development/compilers/ghc/7.8.3.nix @@ -1,4 +1,9 @@ -{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: +{ stdenv, fetchurl, ghc, perl, ncurses, libiconv + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp +}: stdenv.mkDerivation rec { version = "7.8.3"; @@ -11,13 +16,12 @@ stdenv.mkDerivation rec { patches = [ ./relocation.patch ]; - buildInputs = [ ghc perl gmp ncurses ]; + buildInputs = [ ghc perl ncurses ] + ++ stdenv.lib.optional (!enableIntegerSimple) gmp; enableParallelBuilding = true; buildMK = '' - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" DYNAMIC_BY_DEFAULT = NO @@ -25,7 +29,12 @@ stdenv.mkDerivation rec { libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" ''} - ''; + '' + (if enableIntegerSimple then '' + INTEGER_LIBRARY=integer-simple + '' else '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" + ''); preConfigure = '' echo "${buildMK}" > mk/build.mk diff --git a/pkgs/development/compilers/ghc/7.8.4.nix b/pkgs/development/compilers/ghc/7.8.4.nix index f41a1cf7d98..057b9f70fc7 100644 --- a/pkgs/development/compilers/ghc/7.8.4.nix +++ b/pkgs/development/compilers/ghc/7.8.4.nix @@ -1,4 +1,9 @@ -{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: +{ stdenv, fetchurl, ghc, perl, ncurses, libiconv + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp +}: stdenv.mkDerivation (rec { version = "7.8.4"; @@ -11,13 +16,12 @@ stdenv.mkDerivation (rec { patches = [ ./relocation.patch ]; - buildInputs = [ ghc perl gmp ncurses ]; + buildInputs = [ ghc perl ncurses ] + ++ stdenv.lib.optional (!enableIntegerSimple) gmp; enableParallelBuilding = true; buildMK = '' - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" - libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" DYNAMIC_BY_DEFAULT = NO @@ -25,7 +29,12 @@ stdenv.mkDerivation (rec { libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" ''} - ''; + '' + (if enableIntegerSimple then '' + INTEGER_LIBRARY=integer-simple + '' else '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include" + ''); preConfigure = '' echo "${buildMK}" > mk/build.mk diff --git a/pkgs/development/compilers/ghc/8.0.1.nix b/pkgs/development/compilers/ghc/8.0.1.nix index 1834f3ae50b..ae6edb739c9 100644 --- a/pkgs/development/compilers/ghc/8.0.1.nix +++ b/pkgs/development/compilers/ghc/8.0.1.nix @@ -1,5 +1,9 @@ -{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils +{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils , hscolour, patchutils, sphinx + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp }: let @@ -41,13 +45,16 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" '' + stdenv.lib.optionalString stdenv.isDarwin '' export NIX_LDFLAGS+=" -no_dtrace_dof" + '' + stdenv.lib.optionalString enableIntegerSimple '' + echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk ''; configureFlags = [ "--with-gcc=${stdenv.cc}/bin/cc" - "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--datadir=$doc/share/doc/ghc" + ] ++ stdenv.lib.optional (! enableIntegerSimple) [ + "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" ] ++ stdenv.lib.optional stdenv.isDarwin [ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" ]; diff --git a/pkgs/development/compilers/ghc/8.0.2.nix b/pkgs/development/compilers/ghc/8.0.2.nix index ba8401b9b09..5f687aca63a 100644 --- a/pkgs/development/compilers/ghc/8.0.2.nix +++ b/pkgs/development/compilers/ghc/8.0.2.nix @@ -1,5 +1,9 @@ -{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils +{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils , hscolour, patchutils, sphinx + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp }: let @@ -28,13 +32,16 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" '' + stdenv.lib.optionalString stdenv.isDarwin '' export NIX_LDFLAGS+=" -no_dtrace_dof" + '' + stdenv.lib.optionalString enableIntegerSimple '' + echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk ''; configureFlags = [ "--with-gcc=${stdenv.cc}/bin/cc" - "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--datadir=$doc/share/doc/ghc" + ] ++ stdenv.lib.optional (! enableIntegerSimple) [ + "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" ] ++ stdenv.lib.optional stdenv.isDarwin [ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" ]; diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix index e7f4335d6f6..0ca8e8c299e 100644 --- a/pkgs/development/compilers/ghc/head.nix +++ b/pkgs/development/compilers/ghc/head.nix @@ -1,6 +1,10 @@ -{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils +{ stdenv, fetchgit, bootPkgs, perl, ncurses, libiconv, binutils, coreutils , autoconf, automake, happy, alex, python3, buildPlatform, targetPlatform , selfPkgs, cross ? null + + # If enabled GHC will be build with the GPL-free but slower integer-simple + # library instead of the faster but GPLed integer-gmp library. +, enableIntegerSimple ? false, gmp }: let @@ -20,6 +24,8 @@ let export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" '' + stdenv.lib.optionalString stdenv.isDarwin '' export NIX_LDFLAGS+=" -no_dtrace_dof" + '' + stdenv.lib.optionalString enableIntegerSimple '' + echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk ''; in stdenv.mkDerivation (rec { inherit version rev; @@ -41,8 +47,9 @@ in stdenv.mkDerivation (rec { configureFlags = [ "CC=${stdenv.cc}/bin/cc" - "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" + ] ++ stdenv.lib.optional (! enableIntegerSimple) [ + "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" ] ++ stdenv.lib.optional stdenv.isDarwin [ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" ]; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 805e9560c20..7d4c06425ba 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1,6 +1,21 @@ { pkgs, callPackage, stdenv, buildPlatform, targetPlatform }: -rec { +let # These are attributes in compiler and packages that don't support integer-simple. + integerSimpleExcludes = [ + "ghc6102Binary" + "ghc704Binary" + "ghc742Binary" + "ghc6104" + "ghc6123" + "ghc704" + "ghcjs" + "ghcjsHEAD" + "ghcCross" + "jhc" + "uhc" + "integer-simple" + ]; +in rec { lib = import ../development/haskell-modules/lib.nix { inherit pkgs; }; @@ -74,6 +89,17 @@ rec { inherit (pkgs.haskellPackages) ghcWithPackages; }); + # The integer-simple attribute set contains all the GHC compilers + # build with integer-simple instead of integer-gmp. + integer-simple = + let integerSimpleGhcNames = + pkgs.lib.filter (name: ! builtins.elem name integerSimpleExcludes) + (pkgs.lib.attrNames compiler); + integerSimpleGhcs = pkgs.lib.genAttrs integerSimpleGhcNames + (name: compiler."${name}".override { enableIntegerSimple = true; }); + in integerSimpleGhcs // { + ghcHEAD = integerSimpleGhcs.ghcHEAD.override { selfPkgs = packages.integer-simple.ghcHEAD; }; + }; }; packages = { @@ -142,6 +168,20 @@ rec { compilerConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { }; }; + # The integer-simple attribute set contains package sets for all the GHC compilers + # using integer-simple instead of integer-gmp. + integer-simple = + let integerSimpleGhcNames = + pkgs.lib.filter (name: ! builtins.elem name integerSimpleExcludes) + (pkgs.lib.attrNames packages); + in pkgs.lib.genAttrs integerSimpleGhcNames (name: packages."${name}".override { + ghc = compiler.integer-simple."${name}"; + overrides = _self : _super : { + integer-simple = null; + integer-gmp = null; + }; + }); + # These attributes exist only for backwards-compatibility so that we don't break # stack's --nix support. These attributes will disappear in the foreseeable # future: https://github.com/commercialhaskell/stack/issues/2259. |