From 34930586c342dcf10e36ab3eb0c5388dff708e5f Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Sun, 16 Feb 2014 22:35:14 +0000 Subject: [PATCH] audit: handle recommended/optional options better. --- Library/Homebrew/cmd/audit.rb | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index 48f1d6620e..4c44de2c19 100644 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -143,8 +143,14 @@ class FormulaAuditor end dep.options.reject do |opt| - # TODO -- fix for :recommended, should still allow --with-xyz - dep_f.build.has_option?(opt.name) + next true if dep_f.build.has_option?(opt.name) + dep_f.requirements.detect do |r| + if r.tags.include? :recommended + opt.name == "with-#{r.name}" + elsif r.tags.include? :optional + opt.name == "without-#{r.name}" + end + end end.each do |opt| problem "Dependency #{dep} does not define option #{opt.name.inspect}" end