aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew
diff options
context:
space:
mode:
authorWilliam Woodruff2015-06-05 22:42:56 -0400
committerMisty De Meo2015-08-21 10:57:48 -0700
commit8aad5230630c04c231c2d90406780deeb7a65109 (patch)
tree79a9827894b7402bafe8bb97ad4b58a0740fd6ff /Library/Homebrew
parentb46d5de49233fde8a89891053a089f96a8749c15 (diff)
downloadbrew-8aad5230630c04c231c2d90406780deeb7a65109.tar.bz2
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
Diffstat (limited to 'Library/Homebrew')
-rw-r--r--Library/Homebrew/formula_installer.rb11
1 files changed, 8 insertions, 3 deletions
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"