From 4790d4cba9fccc3f7e2683ed905968890e3c63d1 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Mon, 11 Aug 2014 15:32:19 +0100 Subject: [PATCH] formula_installer: default_formula using build. Use the build options instead of whether the requirement is optional to work out if it is needed. This handles the case of an optional requirement becoming needed because it's a dependency for another formula. Closes Homebrew/homebrew#31476. --- Library/Homebrew/formula_installer.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index 9e26a78bef..2b064107b2 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -239,9 +239,9 @@ class FormulaInstaller raise UnsatisfiedRequirements.new(f, fatals) unless fatals.empty? end - def install_requirement_default_formula?(req) + def install_requirement_default_formula?(req, build) return false unless req.default_formula? - return false if req.optional? + return false if build.without?(req) return true unless req.satisfied? pour_bottle? || build_bottle? end @@ -262,7 +262,7 @@ class FormulaInstaller Requirement.prune elsif req.build? && dependent != f && install_bottle_for_dep?(dependent, build) Requirement.prune - elsif install_requirement_default_formula?(req) + elsif install_requirement_default_formula?(req, build) dep = req.to_dependency deps.unshift(dep) formulae.unshift(dep.to_formula)