audit: better handle formulae whitelisting.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
This commit is contained in:
parent
342ed1d163
commit
1fd8e7fd75
@ -414,11 +414,9 @@ 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
|
||||
end
|
||||
|
||||
if line =~ %r{(system|ENV\[.+\]\s?=)\s?['"](/usr/bin/)?((g|llvm-g|clang)\+\+)['" ]}
|
||||
problem "Use \"\#{ENV.cxx}\" instead of hard-coding \"#{$3}\""
|
||||
@ -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
|
||||
# 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
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user