diff options
author | Domen Kožar <domen@dev.si> | 2017-12-28 10:01:55 +0000 |
---|---|---|
committer | Domen Kožar <domen@dev.si> | 2017-12-28 15:11:50 +0000 |
commit | 695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53 (patch) | |
tree | 9517f7e6534dfb5526d094f32443cdb90cd4288c /pkgs/top-level/haskell-packages.nix | |
parent | 4000e6b47ea0738f19acc189f7ebb7f740b03451 (diff) | |
download | nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.tar nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.tar.gz nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.tar.bz2 nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.tar.lz nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.tar.xz nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.tar.zst nixlib-695a026f5fb5d71593ba5b6bb7b8f91e2e6a3f53.zip |
ghc: wire up new binary ghc for bootstrapping
This change brings development feedback loop improvement from a couple of ghc rebuilds to only one for working on generic builder. To completely eliminate the rebuilds, use two nixpkgs clones and point boot packages to the unmodified one.
Diffstat (limited to 'pkgs/top-level/haskell-packages.nix')
-rw-r--r-- | pkgs/top-level/haskell-packages.nix | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index a6dc825b9ba2..36d719fd2639 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -6,6 +6,9 @@ let "ghc6102Binary" "ghc704Binary" "ghc742Binary" + "ghc784Binary" + "ghc7103Binary" + "ghc821Binary" "ghc6104" "ghc6123" "ghc704" @@ -63,41 +66,41 @@ in rec { ghc = compiler.ghc742Binary; }; ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix rec { - bootPkgs = packages.ghc784; + bootPkgs = packages.ghc7103Binary; inherit (bootPkgs) hscolour; }; ghc802 = callPackage ../development/compilers/ghc/8.0.2.nix rec { - bootPkgs = packages.ghc7103; + bootPkgs = packages.ghc7103Binary; inherit (bootPkgs) hscolour; sphinx = pkgs.python27Packages.sphinx; }; ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix rec { - bootPkgs = packages.ghc802; + bootPkgs = packages.ghc7103Binary; inherit (bootPkgs) hscolour alex happy; inherit buildPlatform targetPlatform; sphinx = pkgs.python3Packages.sphinx; selfPkgs = packages.ghc822; }; ghcHEAD = callPackage ../development/compilers/ghc/head.nix rec { - bootPkgs = packages.ghc822; + bootPkgs = packages.ghc821Binary; inherit (bootPkgs) alex happy; inherit buildPlatform targetPlatform; selfPkgs = packages.ghcHEAD; }; ghcjs = packages.ghc7103.callPackage ../development/compilers/ghcjs { - bootPkgs = packages.ghc7103; + bootPkgs = packages.ghc821Binary; }; ghcjsHEAD = packages.ghc802.callPackage ../development/compilers/ghcjs/head.nix { - bootPkgs = packages.ghc802; + bootPkgs = packages.ghc821Binary; }; ghcHaLVM240 = callPackage ../development/compilers/halvm/2.4.0.nix rec { - bootPkgs = packages.ghc802; + bootPkgs = packages.ghc7103Binary; inherit (bootPkgs) hscolour alex happy; }; uhc = callPackage ../development/compilers/uhc/default.nix ({ stdenv = pkgs.clangStdenv; - inherit (pkgs.haskellPackages) ghcWithPackages; + inherit (packages.ghc7103Binary) ghcWithPackages; }); # The integer-simple attribute set contains all the GHC compilers @@ -124,6 +127,10 @@ in rec { ghc = compiler.ghc7103; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { }; }; + ghc7103Binary = callPackage ../development/haskell-modules { + ghc = compiler.ghc7103Binary; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { }; + }; ghc802 = callPackage ../development/haskell-modules { ghc = compiler.ghc802; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.0.x.nix { }; @@ -132,6 +139,10 @@ in rec { ghc = compiler.ghc822; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { }; }; + ghc821Binary = callPackage ../development/haskell-modules { + ghc = compiler.ghc821Binary; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { }; + }; ghcHEAD = callPackage ../development/haskell-modules { ghc = compiler.ghcHEAD; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { }; |