From 8aad5230630c04c231c2d90406780deeb7a65109 Mon Sep 17 00:00:00 2001 From: William Woodruff Date: Fri, 5 Jun 2015 22:42:56 -0400 Subject: 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 --- Library/Homebrew/formula_installer.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'Library') diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index 8377e25f6..5855297ee 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -330,9 +330,11 @@ class FormulaInstaller def install_relocation_tools 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 class DependencyInstaller < FormulaInstaller @@ -407,7 +409,10 @@ class FormulaInstaller keg = Keg.new(formula.prefix) 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? ohai "Not running post_install as we're building a bottle" -- cgit v1.2.3