summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@Yahoo.com>2016-02-21 10:15:04 -0800
committerJohn Ericson <Ericson2314@Yahoo.com>2016-02-21 10:16:13 -0800
commit114cd6765d9a1dc405af223294657b9e765a6f3d (patch)
tree06073b22ff37ce711c1a43256b9b95f64e959ecd
parente6d3a4e7d1e2262c0b28dac67538d253cc4e719e (diff)
downloadnixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.tar
nixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.tar.gz
nixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.tar.bz2
nixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.tar.lz
nixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.tar.xz
nixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.tar.zst
nixlib-114cd6765d9a1dc405af223294657b9e765a6f3d.zip
haskell: Expose the package set used to build each GHC, where possible
Tested to not change hashes
-rw-r--r--pkgs/development/compilers/ghc/7.10.2.nix7
-rw-r--r--pkgs/development/compilers/ghc/7.10.3.nix7
-rw-r--r--pkgs/development/compilers/ghc/8.0.1.nix10
-rw-r--r--pkgs/development/compilers/ghc/head.nix11
-rw-r--r--pkgs/development/compilers/ghc/nokinds.nix7
-rw-r--r--pkgs/development/compilers/ghcjs/default.nix10
-rw-r--r--pkgs/top-level/haskell-packages.nix27
7 files changed, 59 insertions, 20 deletions
diff --git a/pkgs/development/compilers/ghc/7.10.2.nix b/pkgs/development/compilers/ghc/7.10.2.nix
index 73fcd788c74f..87490842b3b6 100644
--- a/pkgs/development/compilers/ghc/7.10.2.nix
+++ b/pkgs/development/compilers/ghc/7.10.2.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchurl, fetchpatch, ghc, perl, gmp, ncurses, libiconv, binutils, coreutils
+{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils
 , libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour
 }:
 
 let
+  inherit (bootPkgs) ghc;
 
   buildMK = ''
     libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"
@@ -60,6 +61,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru = {
+    inherit bootPkgs;
+  };
+
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
diff --git a/pkgs/development/compilers/ghc/7.10.3.nix b/pkgs/development/compilers/ghc/7.10.3.nix
index 88d1bec4d42b..53ba058def4d 100644
--- a/pkgs/development/compilers/ghc/7.10.3.nix
+++ b/pkgs/development/compilers/ghc/7.10.3.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchurl, fetchpatch, ghc, perl, gmp, ncurses, libiconv, binutils, coreutils
+{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils
 , libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour
 }:
 
 let
+  inherit (bootPkgs) ghc;
 
   docFixes = fetchurl {
     url = "https://downloads.haskell.org/~ghc/7.10.3/ghc-7.10.3a.patch";
@@ -61,6 +62,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru = {
+    inherit bootPkgs;
+  };
+
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
diff --git a/pkgs/development/compilers/ghc/8.0.1.nix b/pkgs/development/compilers/ghc/8.0.1.nix
index d24ad4106ee4..00482d013c23 100644
--- a/pkgs/development/compilers/ghc/8.0.1.nix
+++ b/pkgs/development/compilers/ghc/8.0.1.nix
@@ -1,7 +1,11 @@
-{ stdenv, fetchurl, fetchpatch, ghc, perl, gmp, ncurses, libiconv, binutils, coreutils
+{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils
 , hscolour
 }:
 
+let
+  inherit (bootPkgs) ghc;
+
+in 
 stdenv.mkDerivation rec {
   version = "8.0.0.20160204";
   name = "ghc-${version}";
@@ -51,6 +55,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru = {
+    inherit bootPkgs;
+  };
+
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 9b360b609e43..18e22f0100be 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -1,8 +1,11 @@
-{ stdenv, fetchgit, ghc, perl, gmp, ncurses, libiconv, binutils, coreutils
+{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils
 , autoconf, automake, happy, alex
 }:
 
-stdenv.mkDerivation rec {
+let
+  inherit (bootPkgs) ghc;
+
+in stdenv.mkDerivation rec {
   version = "7.11.20151216";
   name = "ghc-${version}";
   rev = "28638dfe79e915f33d75a1b22c5adce9e2b62b97";
@@ -62,6 +65,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru = {
+    inherit bootPkgs;
+  };
+
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
diff --git a/pkgs/development/compilers/ghc/nokinds.nix b/pkgs/development/compilers/ghc/nokinds.nix
index 6334759496f0..acaef9c5ab11 100644
--- a/pkgs/development/compilers/ghc/nokinds.nix
+++ b/pkgs/development/compilers/ghc/nokinds.nix
@@ -1,6 +1,7 @@
-{ stdenv, fetchgit, ghc, perl, gmp, ncurses, libiconv, autoconf, automake, happy, alex }:
+{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, autoconf, automake, happy, alex }:
 
 let
+  inherit (bootPkgs) ghc;
 
   buildMK = ''
     libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"
@@ -66,6 +67,10 @@ stdenv.mkDerivation rec {
   # that in turn causes GHCi to abort
   stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
 
+  passthru = {
+    inherit bootPkgs;
+  };
+
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The dependently-typed 'nokinds' branch of the Glasgow Haskell Compiler by Richard Eisenberg";
diff --git a/pkgs/development/compilers/ghcjs/default.nix b/pkgs/development/compilers/ghcjs/default.nix
index 81a8c90b53a7..3aca5f239192 100644
--- a/pkgs/development/compilers/ghcjs/default.nix
+++ b/pkgs/development/compilers/ghcjs/default.nix
@@ -20,7 +20,7 @@
 , ghcjs-prim
 , regex-posix
 
-, ghc, gmp
+, bootPkgs, gmp
 , jailbreak-cabal
 
 , runCommand
@@ -41,8 +41,11 @@
 , ghcjsBoot ? import ./ghcjs-boot.nix { inherit fetchgit runCommand; }
 , shims ? import ./shims.nix { inherit fetchFromGitHub; }
 }:
-let version = "0.2.0"; in
-mkDerivation (rec {
+let
+  inherit (bootPkgs) ghc;
+  version = "0.2.0";
+
+in mkDerivation (rec {
   pname = "ghcjs";
   inherit version;
   src = fetchFromGitHub {
@@ -114,6 +117,7 @@ mkDerivation (rec {
         --with-gmp-libraries ${gmp}/lib
   '';
   passthru = {
+    inherit bootPkgs;
     isGhcjs = true;
     nativeGhc = ghc;
     inherit nodejs ghcjsBoot;
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 2d0151dc5420..2eadcbeefef3 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -34,24 +34,29 @@ rec {
     ghc784 = callPackage ../development/compilers/ghc/7.8.4.nix {
       ghc = compiler.ghc742Binary;
     };
-    ghc7102 = callPackage ../development/compilers/ghc/7.10.2.nix {
-      ghc = compiler.ghc784; inherit (packages.ghc784) hscolour;
+    ghc7102 = callPackage ../development/compilers/ghc/7.10.2.nix rec {
+      bootPkgs = packages.ghc784;
+      inherit (bootPkgs) hscolour;
     };
-    ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix {
-      ghc = compiler.ghc784; inherit (packages.ghc784) hscolour;
+    ghc7103 = callPackage ../development/compilers/ghc/7.10.3.nix rec {
+      bootPkgs = packages.ghc784;
+      inherit (bootPkgs) hscolour;
     };
-    ghc801 = callPackage ../development/compilers/ghc/8.0.1.nix {
-      ghc = compiler.ghc7103; inherit (packages.ghc7103) hscolour;
+    ghc801 = callPackage ../development/compilers/ghc/8.0.1.nix rec {
+      bootPkgs = packages.ghc7103;
+      inherit (bootPkgs) hscolour;
     };
-    ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
-      inherit (packages.ghc784) ghc alex happy;
+    ghcHEAD = callPackage ../development/compilers/ghc/head.nix rec {
+      bootPkgs = packages.ghc784;
+      inherit (bootPkgs) alex happy;
     };
-    ghcNokinds = callPackage ../development/compilers/ghc/nokinds.nix {
-      inherit (packages.ghc784) ghc alex happy;
+    ghcNokinds = callPackage ../development/compilers/ghc/nokinds.nix rec {
+      bootPkgs = packages.ghc784;
+      inherit (bootPkgs) alex happy;
     };
 
     ghcjs = packages.ghc7103.callPackage ../development/compilers/ghcjs {
-      ghc = compiler.ghc7103;
+      bootPkgs = packages.ghc7103;
     };
 
     jhc = callPackage ../development/compilers/jhc {