about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorDomen Kožar <domen@dev.si>2018-07-16 17:23:32 +0200
committerPeter Simons <simons@cryp.to>2018-07-18 10:25:40 +0200
commit6fd5287c36c8ce2fa12efae6cf171c6e46b41e87 (patch)
tree64c78d442779ad6f28494a13bfd9e5a4e9aadc4c /pkgs
parentb3af2cd9627d717820c96259a878f24687066cf1 (diff)
downloadnixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.tar
nixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.tar.gz
nixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.tar.bz2
nixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.tar.lz
nixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.tar.xz
nixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.tar.zst
nixlib-6fd5287c36c8ce2fa12efae6cf171c6e46b41e87.zip
haskell: don't error if isLibrary = true and no libraries exist
If empty directory isn't deleted, referer depenedencies will
fail with:

cp: missing destination file operand after '/tmp/nix-build-cabal-helper-0.8.0.2.drv-0/setup-package.conf.d/'

This is currently only the case for cabal-install, as cabal2nix
doesn't handle well buildable=False flags due to long-standing bugs
in Cabal itself.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix3
1 files changed, 3 insertions, 0 deletions
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index c68d84bdb8a5..80274f515c52 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -394,6 +394,9 @@ stdenv.mkDerivation ({
         local pkgId=$( ${gnused}/bin/sed -n -e 's|^id: ||p' $packageConfFile )
         mv $packageConfFile $packageConfDir/$pkgId.conf
       done
+
+      # delete confdir if there are no libraries
+      find $packageConfDir -maxdepth 0 -empty -delete;
     ''}
     ${optionalString isGhcjs ''
       for exeDir in "$out/bin/"*.jsexe; do