Audit formulæ for easy-install.pth files

Closes Homebrew/homebrew#32860.
This commit is contained in:
Tim D. Smith 2014-10-01 18:40:04 -07:00
parent f2fa551291
commit 9134718f9c
2 changed files with 14 additions and 0 deletions

View File

@ -568,6 +568,7 @@ class FormulaAuditor
audit_check_output(check_non_executables(f.sbin))
audit_check_output(check_generic_executables(f.sbin))
audit_check_output(check_shadowed_headers)
audit_check_output(check_easy_install_pth(f.lib))
end
def audit

View File

@ -120,6 +120,19 @@ module FormulaCellarChecks
"The offending files are: \n #{files * "\n "}"]
end
def check_easy_install_pth lib
pth_found = Dir["#{lib}/python{2.7,3.4}/site-packages/easy-install.pth"].map { |f| File.dirname(f) }
return if pth_found.empty?
["easy-install.pth files were found in #{pth_found.join(", ")}.",
<<-EOS.undent
These .pth files are likely to cause link conflicts. Please
invoke setup.py with options --single-version-externally-managed
--record=install.txt.
EOS
]
end
private
def relative_glob(dir, pattern)