Add temporary workaround for missing symbol __cxa_throw_bad_new_array_length on OS X.
authorEric Fiselier <eric@efcs.ca>
Sat, 21 Feb 2015 04:30:36 +0000 (04:30 +0000)
committerEric Fiselier <eric@efcs.ca>
Sat, 21 Feb 2015 04:30:36 +0000 (04:30 +0000)
llvm-svn: 230125

libcxxabi/test/libcxxabi/test/config.py

index a761c37..d08aff8 100644 (file)
@@ -66,6 +66,15 @@ class Configuration(LibcxxConfiguration):
             self.cxx.link_flags += ['-L' + self.libcxxabi_lib_root,
                                     '-Wl,-rpath,' + self.libcxxabi_lib_root]
 
+    # TODO(ericwf): Remove this. This is a hack for OS X.
+    # libc++ *should* export all of the symbols found in libc++abi on OS X.
+    # For this reason LibcxxConfiguration will not link libc++abi in OS X.
+    # However __cxa_throw_bad_new_array_length doesn't get exported into libc++
+    # yet so we still need to explicitly link libc++abi.
+    # See PR22654.
+    def configure_link_flags_abi_library(self):
+        self.cxx.link_flags += ['-lc++abi']
+
     def configure_env(self):
         if sys.platform == 'darwin' and self.libcxxabi_lib_root:
             self.env['DYLD_LIBRARY_PATH'] = self.libcxxabi_lib_root