summary refs log tree commit diff
path: root/pkgs/development/haskell-modules
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@Yahoo.com>2016-02-19 08:45:45 -0800
committerJohn Ericson <Ericson2314@Yahoo.com>2016-02-21 10:16:13 -0800
commitf13eede7e58d06a64bae410602ada6626af39991 (patch)
treedcc81d83383f3ecfa6682a3fd76bec00cb737398 /pkgs/development/haskell-modules
parent51b66ed4d918a795af55ae50de05fd0cb4b19a38 (diff)
downloadnixlib-f13eede7e58d06a64bae410602ada6626af39991.tar
nixlib-f13eede7e58d06a64bae410602ada6626af39991.tar.gz
nixlib-f13eede7e58d06a64bae410602ada6626af39991.tar.bz2
nixlib-f13eede7e58d06a64bae410602ada6626af39991.tar.lz
nixlib-f13eede7e58d06a64bae410602ada6626af39991.tar.xz
nixlib-f13eede7e58d06a64bae410602ada6626af39991.tar.zst
nixlib-f13eede7e58d06a64bae410602ada6626af39991.zip
haskell: Tiny refactor in generic-builder. No hashes/interfaces changed.
Diffstat (limited to 'pkgs/development/haskell-modules')
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix13
1 files changed, 9 insertions, 4 deletions
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index 50efcc27fe63..8b54a19c2b59 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -58,7 +58,15 @@ let
 
   isCross = ghc.isCross or false;
   isGhcjs = ghc.isGhcjs or false;
+  packageDbFlag = if isGhcjs || versionOlder "7.6" ghc.version
+                  then "package-db"
+                  else "package-conf";
+
   nativeGhc = if isCross then ghc.bootPkgs.ghc else ghc;
+  nativeIsCross = nativeGhc.isCross or false;
+  nativePackageDbFlag = if versionOlder "7.6" nativeGhc.version
+                        then "package-db"
+                        else "package-conf";
 
   newCabalFileUrl = "http://hackage.haskell.org/package/${pname}-${version}/revision/${revision}.cabal";
   newCabalFile = fetchurl {
@@ -72,9 +80,6 @@ let
                      main = defaultMain
                    '';
 
-  ghc76xOrLater = isGhcjs || stdenv.lib.versionOlder "7.6" ghc.version;
-  packageDbFlag = if ghc76xOrLater then "package-db" else "package-conf";
-
   hasActiveLibrary = isLibrary && (enableStaticLibraries || enableSharedLibraries || enableLibraryProfiling);
 
   # We cannot enable -j<n> parallelism for libraries because GHC is far more
@@ -126,7 +131,7 @@ let
 
   ghcEnv = ghc.withPackages (p: haskellBuildInputs);
 
-  setupBuilder = if isGhcjs then "${nativeGhc}/bin/ghc" else ghcCommand;
+  setupBuilder = if isCross then "${nativeGhc}/bin/ghc" else ghcCommand;
   setupCommand = "./Setup";
   ghcCommand = if isGhcjs then "ghcjs" else "ghc";
   ghcCommandCaps = toUpper ghcCommand;