option(LIBCXXABI_ENABLE_THREADS "Build with threads enabled" ON)
set(LIBCXXABI_GCC_TOOLCHAIN "" CACHE STRING "GCC toolchain for cross compiling.")
set(LIBCXXABI_SYSROOT "" CACHE STRING "Sysroot for cross compiling.")
+set(LIBCXXABI_LIBCXX_LIBRARY_PATH "" CACHE STRING "The path to libc++ library.")
# Default to building a shared library so that the default options still test
# the libc++abi that is being built. There are two problems with testing a
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
+ library_paths = []
+ if self.libcxxabi_lib_root:
+ library_paths += [self.libcxxabi_lib_root]
+ if self.cxx_library_root:
+ library_paths += [self.cxx_library_root]
+ if sys.platform == 'darwin' and library_paths:
+ self.env['DYLD_LIBRARY_PATH'] = ':'.join(library_paths)
config.libcxxabi_lib_root = "@LIBCXXABI_LIBRARY_DIR@"
config.libcxx_src_root = "@LIBCXXABI_LIBCXX_PATH@"
config.cxx_headers = "@LIBCXXABI_LIBCXX_INCLUDES@"
+config.cxx_library_root = "@LIBCXXABI_LIBCXX_LIBRARY_PATH@"
config.llvm_unwinder = "@LIBCXXABI_USE_LLVM_UNWINDER@"
config.enable_threads = "@LIBCXXABI_ENABLE_THREADS@"
config.use_sanitizer = "@LLVM_USE_SANITIZER@"