summary refs log tree commit diff
path: root/pkgs/build-support/cabal
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2014-08-16 17:37:16 +0200
committerPeter Simons <simons@cryp.to>2014-08-17 00:20:12 +0200
commita9fad501813562d08096440fb466a1ccd623de97 (patch)
tree0d13f4851a426c5cb25b9387cee71d7ef2c40aa4 /pkgs/build-support/cabal
parent35779fd646364dfd9f032b09cdce0e4968522940 (diff)
downloadnixpkgs-a9fad501813562d08096440fb466a1ccd623de97.tar
nixpkgs-a9fad501813562d08096440fb466a1ccd623de97.tar.gz
nixpkgs-a9fad501813562d08096440fb466a1ccd623de97.tar.bz2
nixpkgs-a9fad501813562d08096440fb466a1ccd623de97.tar.lz
nixpkgs-a9fad501813562d08096440fb466a1ccd623de97.tar.xz
nixpkgs-a9fad501813562d08096440fb466a1ccd623de97.tar.zst
nixpkgs-a9fad501813562d08096440fb466a1ccd623de97.zip
cabal: minor code re-factoring of shleavy's patch that allows building packages without a Setup.hs file
https://github.com/NixOS/nixpkgs/pull/3585
Diffstat (limited to 'pkgs/build-support/cabal')
-rw-r--r--pkgs/build-support/cabal/default.nix16
1 files changed, 8 insertions, 8 deletions
diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix
index 7147b287fae..0669b85c724 100644
--- a/pkgs/build-support/cabal/default.nix
+++ b/pkgs/build-support/cabal/default.nix
@@ -18,6 +18,11 @@ let
   optionals             = stdenv.lib.optionals;
   optionalString        = stdenv.lib.optionalString;
   filter                = stdenv.lib.filter;
+
+  defaultSetupHs        = builtins.toFile "Setup.hs" ''
+                            import Distribution.Simple
+                            main = defaultMain
+                          '';
 in
 
 # Cabal shipped with GHC 6.12.4 or earlier doesn't know the "--enable-tests configure" flag.
@@ -179,15 +184,10 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version;
 
               ${optionalString self.jailbreak "${jailbreakCabal}/bin/jailbreak-cabal ${self.pname}.cabal"}
 
-              for i in Setup.hs Setup.lhs; do
-                test -f $i && ghc --make $i
+              for i in Setup.hs Setup.lhs ${defaultSetupHs}; do
+                test -f $i && break
               done
-              if [ ! -f Setup ]; then
-                  ghc --make ${builtins.toFile "Setup.hs" ''
-                    import Distribution.Simple
-                    main = defaultMain
-                  ''} -o Setup -odir $TMPDIR
-              fi
+              ghc --make -o Setup -odir $TMPDIR $i
 
               for p in $extraBuildInputs $propagatedNativeBuildInputs; do
                 if [ -d "$p/lib/ghc-${ghc.ghc.version}/package.conf.d" ]; then