aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/language/haskell.rb
diff options
context:
space:
mode:
authorMisty De Meo2016-02-24 21:11:02 -0800
committerMike McQuaid2016-02-25 08:08:34 +0000
commita7869783ada72693b4c1cd1b3247e268a35f7348 (patch)
treeebe1099c3c236b8718a15ec647eed9b9c02f6faa /Library/Homebrew/language/haskell.rb
parent842e19bbeb9a595995770f4dba952483c8e4789a (diff)
downloadbrew-a7869783ada72693b4c1cd1b3247e268a35f7348.tar.bz2
Haskell: cap cabal-install make jobs at 64
Fixes Homebrew/homebrew#49509. Closes Homebrew/homebrew#49511. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Diffstat (limited to 'Library/Homebrew/language/haskell.rb')
-rw-r--r--Library/Homebrew/language/haskell.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/Library/Homebrew/language/haskell.rb b/Library/Homebrew/language/haskell.rb
index 8680df3a1..b2aa1c505 100644
--- a/Library/Homebrew/language/haskell.rb
+++ b/Library/Homebrew/language/haskell.rb
@@ -45,13 +45,17 @@ module Language
end
def cabal_install(*args)
+ # cabal hardcodes 64 as the maximum number of parallel jobs
+ # https://github.com/Homebrew/homebrew/issues/49509
+ make_jobs = ENV.make_jobs > 64 ? 64 : ENV.make_jobs
+
# cabal-install's dependency-resolution backtracking strategy can easily
# need more than the default 2,000 maximum number of "backjumps," since
# Hackage is a fast-moving, rolling-release target. The highest known
# needed value by a formula at this time (February 2016) was 43,478 for
# git-annex, so 100,000 should be enough to avoid most gratuitous
# backjumps build failures.
- system "cabal", "install", "--jobs=#{ENV.make_jobs}", "--max-backjumps=100000", *args
+ system "cabal", "install", "--jobs=#{make_jobs}", "--max-backjumps=100000", *args
end
def cabal_configure(flags)