Formula_installer: only attempt relocation install once

Check @@attempted for cctools so that we only attempt the relocation
install once, skip cxxstdlib check in cctools to prevent otool
execution prior to installation, skip fixing install names if
relocation is not required
This commit is contained in:
William Woodruff 2015-06-05 22:42:56 -04:00 committed by Misty De Meo
parent b46d5de492
commit 8aad523063

View File

@ -330,9 +330,11 @@ class FormulaInstaller
def install_relocation_tools def install_relocation_tools
cctools = CctoolsRequirement.new cctools = CctoolsRequirement.new
return if cctools.satisfied? dependency = cctools.to_dependency
formula = dependency.to_formula
return if cctools.satisfied? || @@attempted.include?(formula)
install_dependency(cctools.to_dependency, inherited_options_for(cctools)) install_dependency(dependency, inherited_options_for(cctools))
end end
class DependencyInstaller < FormulaInstaller class DependencyInstaller < FormulaInstaller
@ -407,7 +409,10 @@ class FormulaInstaller
keg = Keg.new(formula.prefix) keg = Keg.new(formula.prefix)
link(keg) link(keg)
fix_install_names(keg)
# this needs to be changed to a test against build_bottle? and
# formula.bottle.needs_relocation?
fix_install_names(keg) unless formula.name == 'cctools'
if build_bottle? && formula.post_install_defined? if build_bottle? && formula.post_install_defined?
ohai "Not running post_install as we're building a bottle" ohai "Not running post_install as we're building a bottle"