aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCedric Staub2016-01-10 18:31:55 -0800
committerDominyk Tiller2016-02-22 01:32:42 +0000
commitcc3e2e8f0f7dc87c74a17ce40227cc555aa38f4f (patch)
treefaaf66e7525ca748a5b8c63ed9d6e9c03db064c4
parentbb37aa28242c040b6402af3a9bcc918b9763c44f (diff)
downloadbrew-cc3e2e8f0f7dc87c74a17ce40227cc555aa38f4f.tar.bz2
git-annex: force-enable "webapp" flag
To address issue Homebrew/homebrew#47346 (git-annex-webapp missing), we explicitly enable the "webapp" flag for git-annex. This should prevent git-annex from being built without the webapp and make the build fail if there is e.g. a dependency issue. Closes Homebrew/homebrew#47950. Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
-rw-r--r--Library/Homebrew/language/haskell.rb19
1 files changed, 18 insertions, 1 deletions
diff --git a/Library/Homebrew/language/haskell.rb b/Library/Homebrew/language/haskell.rb
index 9928b6322..17ea33fde 100644
--- a/Library/Homebrew/language/haskell.rb
+++ b/Library/Homebrew/language/haskell.rb
@@ -54,6 +54,10 @@ module Language
system "cabal", "install", "--jobs=#{ENV.make_jobs}", "--max-backjumps=100000", *args
end
+ def cabal_configure(flags)
+ system "cabal", "configure", flags
+ end
+
def cabal_install_tools(*tools)
# install tools sequentially, as some tools can depend on other tools
tools.each { |tool| cabal_install tool }
@@ -69,8 +73,21 @@ module Language
cabal_sandbox do
cabal_install_tools(*options[:using]) if options[:using]
+ # if we have build flags, we have to pass them to cabal install to resolve the necessary
+ # dependencies, and call cabal configure afterwards to set the flags again for compile
+ flags = ""
+ if options[:flags]
+ flags = "--flags='#{options[:flags].join(" ")}'"
+ end
+
+ args_and_flags = args
+ args_and_flags << flags
+
# install dependencies in the sandbox
- cabal_install "--only-dependencies", *args
+ cabal_install "--only-dependencies", *args_and_flags
+
+ # call configure if build flags are set
+ cabal_configure flags unless flags.empty?
# install the main package in the destination dir
cabal_install "--prefix=#{prefix}", *args