aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/formula_installer.rb
diff options
context:
space:
mode:
authorMike McQuaid2017-07-30 18:41:10 +0100
committerGitHub2017-07-30 18:41:10 +0100
commite755505c70c52d707c83130c17ab37dd2b2e8d48 (patch)
treeb6793c7382a2ac52af66c6ecedb5b166cbed18cb /Library/Homebrew/formula_installer.rb
parentae9d36b2dd9018d6e0f8a73b8cc38b2b3890d244 (diff)
parenta83baba8b50e29e680b89588ca19347ac0133608 (diff)
downloadbrew-e755505c70c52d707c83130c17ab37dd2b2e8d48.tar.bz2
Merge pull request #2969 from MikeMcQuaid/default-formula-bottles
formula_installer: use default_formula for bottles
Diffstat (limited to 'Library/Homebrew/formula_installer.rb')
-rw-r--r--Library/Homebrew/formula_installer.rb19
1 files changed, 10 insertions, 9 deletions
diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb
index 9af8976bc..f2100a908 100644
--- a/Library/Homebrew/formula_installer.rb
+++ b/Library/Homebrew/formula_installer.rb
@@ -402,14 +402,13 @@ class FormulaInstaller
raise UnsatisfiedRequirements, fatals
end
- def install_requirement_formula?(req, dependent, build)
- req_dependency = req.to_dependency
+ def install_requirement_formula?(req_dependency, req, install_bottle_for_dependent)
return false unless req_dependency
return true unless req.satisfied?
return false if req.run?
return true if build_bottle?
return true if req.satisfied_by_formula?
- install_bottle_for?(dependent, build)
+ install_bottle_for_dependent
end
def runtime_requirements(formula)
@@ -429,19 +428,21 @@ class FormulaInstaller
runtime_requirements = runtime_requirements(f)
f.recursive_requirements do |dependent, req|
build = effective_build_options_for(dependent)
+ install_bottle_for_dependent = install_bottle_for?(dependent, build)
+ use_default_formula = install_bottle_for_dependent || build_bottle?
+ req_dependency = req.to_dependency(use_default_formula: use_default_formula)
if (req.optional? || req.recommended?) && build.without?(req)
Requirement.prune
- elsif req.build? && install_bottle_for?(dependent, build)
+ elsif req.build? && install_bottle_for_dependent
Requirement.prune
- elsif install_requirement_formula?(req, dependent, build)
- dep = req.to_dependency
- deps.unshift(dep)
- formulae.unshift(dep.to_formula)
+ elsif install_requirement_formula?(req_dependency, req, install_bottle_for_dependent)
+ deps.unshift(req_dependency)
+ formulae.unshift(req_dependency.to_formula)
Requirement.prune
elsif req.satisfied?
Requirement.prune
- elsif !runtime_requirements.include?(req) && install_bottle_for?(dependent, build)
+ elsif !runtime_requirements.include?(req) && install_bottle_for_dependent
Requirement.prune
else
unsatisfied_reqs[dependent] << req