summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2014-10-21 23:30:55 +0200
committerPeter Simons <simons@cryp.to>2014-10-21 23:54:51 +0200
commit7a20d764827f12bdd783a63a14ff0b2b9fcfeb96 (patch)
tree45bc965b35f6ac2d46484a7073e6115660f24b19 /pkgs/build-support
parent917c1638bff8019a8e8d7a159f791d0e6f14a9bc (diff)
downloadnixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.tar
nixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.tar.gz
nixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.tar.bz2
nixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.tar.lz
nixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.tar.xz
nixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.tar.zst
nixlib-7a20d764827f12bdd783a63a14ff0b2b9fcfeb96.zip
Disable all Haskell builds for Darwin on Hydra.
Hydra generates a GHC closure for Darwin that for no apparent reason
contains an ancient, broken Haddock binary -- probably because of an
impurity in the build system. That bug makes those GHC binaries
unusable: <https://github.com/NixOS/nixpkgs/issues/2689>.
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/cabal/default.nix7
1 files changed, 7 insertions, 0 deletions
diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix
index a55de86cb155..2b06adf3490c 100644
--- a/pkgs/build-support/cabal/default.nix
+++ b/pkgs/build-support/cabal/default.nix
@@ -57,6 +57,13 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version;
                 propagatedUserEnvPkgs = filter (y : ! (y == null)) x.propagatedUserEnvPkgs;
                 doCheck               = enableCheckPhase && x.doCheck;
                 hyperlinkSource       = enableHyperlinkSource && x.hyperlinkSource;
+                # Disable Darwin builds: <https://github.com/NixOS/nixpkgs/issues/2689>.
+                meta                  = let meta = x.meta;
+                                            hydraPlatforms = meta.hydraPlatforms or meta.platforms or [];
+                                            noElem         = p: ps: !stdenv.lib.elem p ps;
+                                            noDarwin       = p: noElem p stdenv.lib.platforms.darwin;
+                                        in
+                                        meta // { hydraPlatforms = filter noDarwin hydraPlatforms; };
               };
 
         defaults =