aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/build.rb
diff options
context:
space:
mode:
Diffstat (limited to 'Library/Homebrew/build.rb')
-rwxr-xr-xLibrary/Homebrew/build.rb14
1 files changed, 8 insertions, 6 deletions
diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb
index 83dbe15cb..676d6f2cd 100755
--- a/Library/Homebrew/build.rb
+++ b/Library/Homebrew/build.rb
@@ -168,13 +168,15 @@ class Build
# want to record the stdlib for something that installs no
# dylibs.
stdlibs = Keg.new(f.prefix).detect_cxx_stdlibs
- # It's technically possible for the same lib to link to multiple
- # C++ stdlibs, but very bad news. Right now we don't track this
- # woeful scenario.
+ # This currently only tracks a single C++ stdlib per dep,
+ # though it's possible for different libs/executables in
+ # a given formula to link to different ones.
stdlib_in_use = CxxStdlib.new(stdlibs.first, ENV.compiler)
- # This will raise and fail the build if there's an
- # incompatibility.
- stdlib_in_use.check_dependencies(f, deps)
+ begin
+ stdlib_in_use.check_dependencies(f, deps)
+ rescue IncompatibleCxxStdlibs => e
+ opoo e.message
+ end
# This second check is recorded for checking dependencies,
# so executable are irrelevant at this point. If a piece