summary refs log tree commit diff
path: root/pkgs/development/haskell-modules/generic-builder.nix
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-06-13 13:44:16 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-06-18 14:07:37 -0400
commitf8ec07e836dfd224c41216cbd82a8cfc3de50b8a (patch)
treed2cb1c9850f0f1d1a562d0b1855f6b4055fe0923 /pkgs/development/haskell-modules/generic-builder.nix
parent5e5bdfa6ad23259d68ac6571ccd51406dfdbf5d9 (diff)
downloadnixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.tar
nixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.tar.gz
nixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.tar.bz2
nixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.tar.lz
nixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.tar.xz
nixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.tar.zst
nixlib-f8ec07e836dfd224c41216cbd82a8cfc3de50b8a.zip
haskell generic-builder: Always use separate pkg db for custom setup
This decreases complexity and ensures setup dependencies are properly
specified with `setup-depends` as they should be. Testing will say if
this is a reasonable change.
Diffstat (limited to 'pkgs/development/haskell-modules/generic-builder.nix')
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix17
1 files changed, 4 insertions, 13 deletions
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index 1cc385864585..7f3ddc48103b 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -166,14 +166,8 @@ let
     "--configure-option=--host=${hostPlatform.config}"
   ] ++ crossCabalFlags);
 
-  useSeparateSetupDb = setupHaskellDepends != [] || isCross || isGhcjs;
-
   setupCompileFlags = [
-    (optionalString (!coreSetup) "-${nativePackageDbFlag}=${
-      if useSeparateSetupDb
-      then "$setupPackageConfDir"
-      else "$packageConfDir"
-    }")
+    (optionalString (!coreSetup) "-${nativePackageDbFlag}=$setupPackageConfDir")
     (optionalString (isGhcjs || isHaLVM || versionOlder "7.8" ghc.version) "-j$NIX_BUILD_CORES")
     # https://github.com/haskell/cabal/issues/2398
     (optionalString (versionOlder "7.10" ghc.version && !isHaLVM) "-threaded")
@@ -270,10 +264,8 @@ stdenv.mkDerivation ({
     echo "Build with ${ghc}."
     ${optionalString (hasActiveLibrary && hyperlinkSource) "export PATH=${hscolour}/bin:$PATH"}
 
-  '' + (optionalString useSeparateSetupDb ''
     setupPackageConfDir="$TMPDIR/setup-package.conf.d"
     mkdir -p $setupPackageConfDir
-  '') + ''
     packageConfDir="$TMPDIR/package.conf.d"
     mkdir -p $packageConfDir
 
@@ -284,14 +276,13 @@ stdenv.mkDerivation ({
   # dependencies for the build machine.
   #
   # pkgs* arrays defined in stdenv/setup.hs
-  + (optionalString useSeparateSetupDb ''
+  + ''
     for p in "''${pkgsBuildBuild[@]}" "''${pkgsBuildHost[@]}" "''${pkgsBuildTarget[@]}"; do
       ${buildPkgDb nativeGhc.name "$setupPackageConfDir"}
     done
     ${nativeGhcCommand}-pkg --${nativePackageDbFlag}="$setupPackageConfDir" recache
-  '')
-
-    # For normal components
+  ''
+  # For normal components
   + ''
     for p in "''${pkgsHostHost[@]}" "''${pkgsHostTarget[@]}"; do
       ${buildPkgDb ghc.name "$packageConfDir"}