add option to tell LIT where to find the libc++ library when built out of tree

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@232518 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 813e891..bcc2e6e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -118,6 +118,7 @@
 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
diff --git a/test/libcxxabi/test/config.py b/test/libcxxabi/test/config.py
index d08aff8..a8c993f 100644
--- a/test/libcxxabi/test/config.py
+++ b/test/libcxxabi/test/config.py
@@ -76,5 +76,10 @@
         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)
diff --git a/test/lit.site.cfg.in b/test/lit.site.cfg.in
index c033dbb..836ad90 100644
--- a/test/lit.site.cfg.in
+++ b/test/lit.site.cfg.in
@@ -5,6 +5,7 @@
 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@"