diff options
| author | Mike McQuaid | 2014-03-06 21:15:05 +0000 |
|---|---|---|
| committer | Mike McQuaid | 2014-03-08 00:54:35 +0000 |
| commit | f4a46798db32fa472e92b763d2c0687e210ba0ef (patch) | |
| tree | d085a91aff0fd101ebcbf684204e9cf50dd91936 /Library | |
| parent | efec820efce4bba2840a1daa1519d1c97f9ab102 (diff) | |
| download | homebrew-f4a46798db32fa472e92b763d2c0687e210ba0ef.tar.bz2 | |
audit: better handle formulae whitelisting.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/audit.rb | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index 34c4a624b..99c957b4b 100644 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -414,10 +414,8 @@ class FormulaAuditor end # Avoid hard-coding compilers - unless f.name == 'go' # Go needs to set CC for cgo support. - if line =~ %r{(system|ENV\[.+\]\s?=)\s?['"](/usr/bin/)?(gcc|llvm-gcc|clang)['" ]} - problem "Use \"\#{ENV.cc}\" instead of hard-coding \"#{$3}\"" - end + if line =~ %r{(system|ENV\[.+\]\s?=)\s?['"](/usr/bin/)?(gcc|llvm-gcc|clang)['" ]} + problem "Use \"\#{ENV.cc}\" instead of hard-coding \"#{$3}\"" end if line =~ %r{(system|ENV\[.+\]\s?=)\s?['"](/usr/bin/)?((g|llvm-g|clang)\+\+)['" ]} @@ -444,12 +442,10 @@ class FormulaAuditor problem "No double 'without': Use `build.without? '#{$1}'` to check for \"--without-#{$1}\"" end - # Mongo writes out a Ruby script that uses ARGV - # Python formulae need ARGV for Requirements - unless f.name == 'mongodb' || f.name == "pyobject3" - if line =~ /ARGV\.(?!(debug\?|verbose\?|value[\(\s]))/ - problem "Use build instead of ARGV to check options" - end + if line =~ /ARGV\.(?!(debug\?|verbose\?|value[\(\s]))/ + # Python formulae need ARGV for Requirements + problem "Use build instead of ARGV to check options", + :whitelist => %w{pygobject3 qscintilla2} end if line =~ /def options/ @@ -538,7 +534,8 @@ class FormulaAuditor private - def problem p + def problem p, options={} + return if options[:whitelist].to_a.include? f.name @problems << p end end |
