aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/language/haskell.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/Library/Homebrew/language/haskell.rb b/Library/Homebrew/language/haskell.rb
index dd9bc5bc8..9928b6322 100644
--- a/Library/Homebrew/language/haskell.rb
+++ b/Library/Homebrew/language/haskell.rb
@@ -45,7 +45,13 @@ module Language
end
def cabal_install(*args)
- system "cabal", "install", "--jobs=#{ENV.make_jobs}", *args
+ # 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
end
def cabal_install_tools(*tools)