summary refs log tree commit diff
path: root/pkgs/build-support/cabal
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2013-02-24 21:15:25 +0100
committerPeter Simons <simons@cryp.to>2013-02-24 21:15:25 +0100
commitbf5ac530737cd6591dd2c9e590e4b07d907043e1 (patch)
tree89c2bafa933ca1c86eb78b2c6f21a96139340f6a /pkgs/build-support/cabal
parent26b192edcc7c510c62932f221006247927320040 (diff)
downloadnixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.tar
nixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.tar.gz
nixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.tar.bz2
nixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.tar.lz
nixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.tar.xz
nixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.tar.zst
nixlib-bf5ac530737cd6591dd2c9e590e4b07d907043e1.zip
pkgs/build-support/cabal: add 'testDepends' field to specify build-time dependencies that are required only for running the test suites
Diffstat (limited to 'pkgs/build-support/cabal')
-rw-r--r--pkgs/build-support/cabal/default.nix6
1 files changed, 5 insertions, 1 deletions
diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix
index 051da9dc2f8d..26100c98ad7c 100644
--- a/pkgs/build-support/cabal/default.nix
+++ b/pkgs/build-support/cabal/default.nix
@@ -8,7 +8,7 @@
         # environment overly, but also to keep hash-backwards-compatible with the old cabal.nix.
         internalAttrs = [
           "internalAttrs" "buildDepends" "buildTools" "extraLibraries" "pkgconfigDepends"
-          "isLibrary" "isExecutable"
+          "isLibrary" "isExecutable" "testDepends"
         ];
 
         # Stuff happening after the user preferences have been processed. We remove
@@ -55,6 +55,7 @@
             # but often propagatedBuildInputs is preferable anyway
             buildInputs = [ghc Cabal] ++ self.extraBuildInputs;
             extraBuildInputs = self.buildTools ++
+                               (stdenv.lib.optionals self.doCheck self.testDepends) ++
                                (if self.pkgconfigDepends == [] then [] else [pkgconfig]) ++
                                (if self.isLibrary then [] else self.buildDepends ++ self.extraLibraries ++ self.pkgconfigDepends);
 
@@ -68,6 +69,9 @@
             # build-depends Cabal field
             buildDepends = [];
 
+            # build-depends Cabal fields stated in test-suite stanzas
+            testDepends = [];
+
             # build-tools Cabal field
             buildTools = [];