aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMisty De Meo2013-10-23 22:25:02 -0700
committerMisty De Meo2013-10-26 21:54:29 -0700
commit2775a4b12cce406c85b97b70ed424852bf3bc783 (patch)
treee071d01d2a73cf2310c79f6d88dcb7a600a0fdba /Library
parent3657393017cc4a17f72107a7b144060fa7dc7b8b (diff)
downloadbrew-2775a4b12cce406c85b97b70ed424852bf3bc783.tar.bz2
Move bottle stdlib tracking post-pour
This allows us to track the actual stdlib in use, and prevents warnings for bottles with no C++ code.
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/formula_installer.rb15
1 files changed, 5 insertions, 10 deletions
diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb
index b83189bec..562232b16 100644
--- a/Library/Homebrew/formula_installer.rb
+++ b/Library/Homebrew/formula_installer.rb
@@ -179,16 +179,6 @@ class FormulaInstaller
raise "Unrecognized architecture for --bottle-arch: #{arch}"
end
- if pour_bottle?
- # This assumes that bottles are built with
- # a) the OS's default compiler, and
- # b) the OS's default C++ stdlib
- # This is probably accurate, but could possibly stand to be
- # more robust.
- stdlib_in_use = CxxStdlib.new(MacOS.default_cxx_stdlib, MacOS.default_compiler)
- stdlib_in_use.check_dependencies(f, f.recursive_dependencies)
- end
-
oh1 "Installing #{Tty.green}#{f}#{Tty.reset}" if show_header
@@attempted << f
@@ -201,6 +191,11 @@ class FormulaInstaller
if pour_bottle? :warn => true
pour
@poured_bottle = true
+
+ stdlibs = Keg.new(f.prefix).detect_cxx_stdlibs
+ stdlib_in_use = CxxStdlib.new(stdlibs.first, MacOS.default_compiler)
+ stdlib_in_use.check_dependencies(f, f.recursive_dependencies)
+
tab = Tab.for_keg f.prefix
tab.poured_from_bottle = true
tab.tabfile.delete if tab.tabfile