aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew
diff options
context:
space:
mode:
authorMisty De Meo2013-10-23 22:25:02 -0700
committerMisty De Meo2013-10-26 21:54:29 -0700
commit6eeaf770a4fd76d5fe28e38d51cf3d538bf4bec2 (patch)
tree4ea5ae4fd5b8a37d9f78b81d31195462b742ce88 /Library/Homebrew
parenta90b5cda0c2ecdee373bf17a61599912184f4307 (diff)
downloadhomebrew-6eeaf770a4fd76d5fe28e38d51cf3d538bf4bec2.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/Homebrew')
-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