aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/dependency.rb
diff options
context:
space:
mode:
authorMike McQuaid2016-12-10 17:58:41 +0000
committerMike McQuaid2016-12-10 17:58:41 +0000
commitf7f15673a8e8ecb6817435c7bd51c7e8077220e4 (patch)
treecf5d9680ed0e973645a81ba4bcee2d27263efd3b /Library/Homebrew/dependency.rb
parenta566540c46563b1ea84158c963134862167ca993 (diff)
downloadbrew-f7f15673a8e8ecb6817435c7bd51c7e8077220e4.tar.bz2
Fix dependency option handling.
- formula_installer: only recompute dependencies when necessary i.e. when a bottle pour fails. - formula_installer: re-add accidentally remove dependency options - dependency: missing options are only those that actually exist on a formula
Diffstat (limited to 'Library/Homebrew/dependency.rb')
-rw-r--r--Library/Homebrew/dependency.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/Library/Homebrew/dependency.rb b/Library/Homebrew/dependency.rb
index 6b60654e1..253ba4bee 100644
--- a/Library/Homebrew/dependency.rb
+++ b/Library/Homebrew/dependency.rb
@@ -43,8 +43,12 @@ class Dependency
end
def missing_options(inherited_options)
- required = options | inherited_options
- required - Tab.for_formula(to_formula).used_options
+ formula = to_formula
+ required = options
+ required |= inherited_options
+ required &= formula.options.to_a
+ required -= Tab.for_formula(formula).used_options
+ required
end
def modify_build_environment