summaryrefslogtreecommitdiff
path: root/pkgs/development/haskell-modules/generic-builder.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/haskell-modules/generic-builder.nix')
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix7
1 files changed, 6 insertions, 1 deletions
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index e779e369f029..a7385d581238 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -465,7 +465,12 @@ stdenv.mkDerivation ({
installPhase = ''
runHook preInstall
- ${if !isLibrary then "${setupCommand} install" else ''
+ ${if !isLibrary && buildTarget == "" then "${setupCommand} install"
+ # ^^ if the project is not a library, and no build target is specified, we can just use "install".
+ else if !isLibrary then "${setupCommand} copy ${buildTarget}"
+ # ^^ if the project is not a library, and we have a build target, then use "copy" to install
+ # just the target specified; "install" will error here, since not all targets have been built.
+ else ''
${setupCommand} copy
local packageConfDir="$out/lib/${ghc.name}/package.conf.d"
local packageConfFile="$packageConfDir/${pname}-${version}.conf"