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.
This commit is contained in:
parent
4000e6b47e
commit
695a026f5f
@ -1,7 +1,6 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, fetchurl, perl
|
, fetchurl, perl
|
||||||
, ncurses5, gmp, libiconv
|
, ncurses5, gmp, libiconv
|
||||||
, enableIntegerSimple ? false
|
|
||||||
, gcc
|
, gcc
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, fetchurl, perl
|
, fetchurl, perl
|
||||||
, ncurses5, gmp, libiconv
|
, ncurses5, gmp, libiconv
|
||||||
, enableIntegerSimple ? false
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, fetchurl, perl, gcc
|
, fetchurl, perl, gcc
|
||||||
, ncurses5, gmp, libiconv
|
, ncurses5, gmp, libiconv
|
||||||
, enableIntegerSimple ? false
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -6,6 +6,9 @@ let
|
|||||||
"ghc6102Binary"
|
"ghc6102Binary"
|
||||||
"ghc704Binary"
|
"ghc704Binary"
|
||||||
"ghc742Binary"
|
"ghc742Binary"
|
||||||
|
"ghc784Binary"
|
||||||
|
"ghc7103Binary"
|
||||||
|
"ghc821Binary"
|
||||||
"ghc6104"
|
"ghc6104"
|
||||||
"ghc6123"
|
"ghc6123"
|
||||||
"ghc704"
|
"ghc704"
|
||||||
@ -63,41 +66,41 @@ in rec {
|
|||||||
ghc = compiler.ghc742Binary;
|
ghc = compiler.ghc742Binary;
|
||||||
};
|
};
|
||||||
ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix rec {
|
ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix rec {
|
||||||
bootPkgs = packages.ghc784;
|
bootPkgs = packages.ghc7103Binary;
|
||||||
inherit (bootPkgs) hscolour;
|
inherit (bootPkgs) hscolour;
|
||||||
};
|
};
|
||||||
ghc802 = callPackage ../development/compilers/ghc/8.0.2.nix rec {
|
ghc802 = callPackage ../development/compilers/ghc/8.0.2.nix rec {
|
||||||
bootPkgs = packages.ghc7103;
|
bootPkgs = packages.ghc7103Binary;
|
||||||
inherit (bootPkgs) hscolour;
|
inherit (bootPkgs) hscolour;
|
||||||
sphinx = pkgs.python27Packages.sphinx;
|
sphinx = pkgs.python27Packages.sphinx;
|
||||||
};
|
};
|
||||||
ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix rec {
|
ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix rec {
|
||||||
bootPkgs = packages.ghc802;
|
bootPkgs = packages.ghc7103Binary;
|
||||||
inherit (bootPkgs) hscolour alex happy;
|
inherit (bootPkgs) hscolour alex happy;
|
||||||
inherit buildPlatform targetPlatform;
|
inherit buildPlatform targetPlatform;
|
||||||
sphinx = pkgs.python3Packages.sphinx;
|
sphinx = pkgs.python3Packages.sphinx;
|
||||||
selfPkgs = packages.ghc822;
|
selfPkgs = packages.ghc822;
|
||||||
};
|
};
|
||||||
ghcHEAD = callPackage ../development/compilers/ghc/head.nix rec {
|
ghcHEAD = callPackage ../development/compilers/ghc/head.nix rec {
|
||||||
bootPkgs = packages.ghc822;
|
bootPkgs = packages.ghc821Binary;
|
||||||
inherit (bootPkgs) alex happy;
|
inherit (bootPkgs) alex happy;
|
||||||
inherit buildPlatform targetPlatform;
|
inherit buildPlatform targetPlatform;
|
||||||
selfPkgs = packages.ghcHEAD;
|
selfPkgs = packages.ghcHEAD;
|
||||||
};
|
};
|
||||||
ghcjs = packages.ghc7103.callPackage ../development/compilers/ghcjs {
|
ghcjs = packages.ghc7103.callPackage ../development/compilers/ghcjs {
|
||||||
bootPkgs = packages.ghc7103;
|
bootPkgs = packages.ghc821Binary;
|
||||||
};
|
};
|
||||||
ghcjsHEAD = packages.ghc802.callPackage ../development/compilers/ghcjs/head.nix {
|
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 {
|
ghcHaLVM240 = callPackage ../development/compilers/halvm/2.4.0.nix rec {
|
||||||
bootPkgs = packages.ghc802;
|
bootPkgs = packages.ghc7103Binary;
|
||||||
inherit (bootPkgs) hscolour alex happy;
|
inherit (bootPkgs) hscolour alex happy;
|
||||||
};
|
};
|
||||||
|
|
||||||
uhc = callPackage ../development/compilers/uhc/default.nix ({
|
uhc = callPackage ../development/compilers/uhc/default.nix ({
|
||||||
stdenv = pkgs.clangStdenv;
|
stdenv = pkgs.clangStdenv;
|
||||||
inherit (pkgs.haskellPackages) ghcWithPackages;
|
inherit (packages.ghc7103Binary) ghcWithPackages;
|
||||||
});
|
});
|
||||||
|
|
||||||
# The integer-simple attribute set contains all the GHC compilers
|
# The integer-simple attribute set contains all the GHC compilers
|
||||||
@ -124,6 +127,10 @@ in rec {
|
|||||||
ghc = compiler.ghc7103;
|
ghc = compiler.ghc7103;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { };
|
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 {
|
ghc802 = callPackage ../development/haskell-modules {
|
||||||
ghc = compiler.ghc802;
|
ghc = compiler.ghc802;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.0.x.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.0.x.nix { };
|
||||||
@ -132,6 +139,10 @@ in rec {
|
|||||||
ghc = compiler.ghc822;
|
ghc = compiler.ghc822;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { };
|
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 {
|
ghcHEAD = callPackage ../development/haskell-modules {
|
||||||
ghc = compiler.ghcHEAD;
|
ghc = compiler.ghcHEAD;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };
|
||||||
|
Loading…
Reference in New Issue
Block a user