summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2015-06-05 23:55:01 +0200
committerPeter Simons <simons@cryp.to>2015-06-05 23:55:01 +0200
commit7e04b7319c54bf0a4c0b6b55caca80a3b7434a87 (patch)
tree48d83f718f61a7811e0e5c21851e433dd6b3d138
parentfbcdb662641395901f43f19f151f5654e9d345da (diff)
downloadnixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.tar
nixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.tar.gz
nixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.tar.bz2
nixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.tar.lz
nixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.tar.xz
nixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.tar.zst
nixlib-7e04b7319c54bf0a4c0b6b55caca80a3b7434a87.zip
haskell: disable parallel compilation for libraries to mitigate the effects of GHC's non-deterministic library ID bug
Further details can be found at <https://github.com/peti/ghc-library-id-bug>
and <https://ghc.haskell.org/trac/ghc/ticket/4012>.
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix5
1 files changed, 4 insertions, 1 deletions
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index edff84a0403c..c0505d6e3c63 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -72,7 +72,10 @@ let
 
   hasActiveLibrary = isLibrary && (enableStaticLibraries || enableSharedLibraries || enableLibraryProfiling);
 
-  enableParallelBuilding = versionOlder "7.10" ghc.version || (versionOlder "7.8" ghc.version && !hasActiveLibrary);
+  # We cannot enable -j<n> parallelism for libraries because GHC is far more
+  # likely to generate a non-determistic library ID in that case. Further
+  # details are at <https://github.com/peti/ghc-library-id-bug>.
+  enableParallelBuilding = versionOlder "7.8" ghc.version && !hasActiveLibrary;
 
   defaultConfigureFlags = [
     "--verbose" "--prefix=$out" "--libdir=\\$prefix/lib/\\$compiler" "--libsubdir=\\$pkgid"