From e7bffe4809908738685208e1a0077473208f0430 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Sun, 10 Jan 2016 18:17:54 +0000 Subject: formula_installed: tweak source build behaviour. Currently `brew install —build-from-source wget` builds all the dependencies also from source. I can see people wanting to do this when `HOMEBREW_BUILD_FROM_SOURCE` is set by passing it on the command-line is mostly just annoying; it means you have to use `—build-bottle` and deal with the CFLAGS and `post_install` changes if you want to build from source. Tweak `formula_installer` so this behaviour is more intuitive. Closes Homebrew/homebrew#47889. Signed-off-by: Mike McQuaid --- Library/Homebrew/cmd/fetch.rb | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'Library/Homebrew/cmd/fetch.rb') diff --git a/Library/Homebrew/cmd/fetch.rb b/Library/Homebrew/cmd/fetch.rb index fabe268e5..28a6c4211 100644 --- a/Library/Homebrew/cmd/fetch.rb +++ b/Library/Homebrew/cmd/fetch.rb @@ -42,9 +42,15 @@ module Homebrew end def fetch_bottle?(f) - return true if ARGV.force_bottle? && f.bottle - return false unless f.bottle && f.pour_bottle? - return false if ARGV.build_from_source? || ARGV.build_bottle? + return false unless f.bottle + return true if ARGV.force_bottle? + return false unless f.pour_bottle? + # We want to behave different with `--build-from-source` and + # ENV["HOMEBREW_BUILD_FROM_SOURCE"] because the latter implies you want + # everything built from source and the prior that you want just the + # formulae you've requested built from source. + return false if ENV["HOMEBREW_BUILD_FROM_SOURCE"] + return false if ARGV.build_bottle? return false unless f.bottle.compatible_cellar? true end -- cgit v1.2.3