diff options
-rw-r--r-- | test/libcxxabi/test/config.py | 18 | ||||
-rw-r--r-- | test/lit.cfg | 2 | ||||
-rw-r--r-- | test/lit.site.cfg.in | 3 |
3 files changed, 14 insertions, 9 deletions
diff --git a/test/libcxxabi/test/config.py b/test/libcxxabi/test/config.py index 52cdcbd..a761c37 100644 --- a/test/libcxxabi/test/config.py +++ b/test/libcxxabi/test/config.py @@ -9,8 +9,9 @@ class Configuration(LibcxxConfiguration): def __init__(self, lit_config, config): super(Configuration, self).__init__(lit_config, config) self.libcxxabi_src_root = None + self.libcxxabi_obj_root = None + self.libcxxabi_lib_root = None self.libcxx_src_root = None - self.obj_root = None def configure_src_root(self): self.libcxxabi_src_root = self.get_lit_conf( @@ -21,8 +22,10 @@ class Configuration(LibcxxConfiguration): os.path.join(self.libcxxabi_src_root, '/../libcxx')) def configure_obj_root(self): - self.obj_root = self.get_lit_conf('libcxxabi_obj_root', - self.libcxxabi_src_root) + self.libcxxabi_obj_root = self.get_lit_conf('libcxxabi_obj_root') + self.libcxxabi_lib_root = self.get_lit_conf('libcxxabi_lib_root', + self.libcxxabi_obj_root) + super(Configuration, self).configure_obj_root() def configure_compile_flags(self): self.cxx.compile_flags += ['-DLIBCXXABI_NO_TIMER'] @@ -59,9 +62,10 @@ class Configuration(LibcxxConfiguration): def configure_link_flags_abi_library_path(self): # Configure ABI library paths. - self.cxx.link_flags += ['-L' + self.obj_root, - '-Wl,-rpath,' + self.obj_root] + if self.libcxxabi_lib_root: + self.cxx.link_flags += ['-L' + self.libcxxabi_lib_root, + '-Wl,-rpath,' + self.libcxxabi_lib_root] def configure_env(self): - if sys.platform == 'darwin': - self.env['DYLD_LIBRARY_PATH'] = self.obj_root + if sys.platform == 'darwin' and self.libcxxabi_lib_root: + self.env['DYLD_LIBRARY_PATH'] = self.libcxxabi_lib_root diff --git a/test/lit.cfg b/test/lit.cfg index f0334eb..ae46288 100644 --- a/test/lit.cfg +++ b/test/lit.cfg @@ -37,7 +37,7 @@ else: ' in: %s' % libcxx_test_src_root) # Infer the test_exec_root from the libcxx_object root. -obj_root = getattr(config, 'libcxx_obj_root', None) +obj_root = getattr(config, 'libcxxabi_obj_root', None) # Check that the test exec root is known. if obj_root is None: diff --git a/test/lit.site.cfg.in b/test/lit.site.cfg.in index 62dcf0a..8f772fd 100644 --- a/test/lit.site.cfg.in +++ b/test/lit.site.cfg.in @@ -1,7 +1,8 @@ @AUTO_GEN_COMMENT@ config.cxx_under_test = "@LIBCXXABI_COMPILER@" config.libcxxabi_src_root = "@LIBCXXABI_SOURCE_DIR@" -config.libcxxabi_obj_root = "@LIBCXXABI_LIBRARY_DIR@" +config.libcxxabi_obj_root = "@LIBCXXABI_BINARY_DIR@" +config.libcxxabi_lib_root = "@LIBCXXABI_LIBRARY_DIR@" config.libcxx_src_root = "@LIBCXXABI_LIBCXX_PATH@" config.cxx_headers = "@LIBCXXABI_LIBCXX_INCLUDES@" config.llvm_unwinder = "@LIBCXXABI_USE_LLVM_UNWINDER@" |