summaryrefslogtreecommitdiff
path: root/test/libcxxabi
diff options
context:
space:
mode:
authorJonathan Roelofs <jonathan@codesourcery.com>2015-01-21 23:06:22 +0000
committerJonathan Roelofs <jonathan@codesourcery.com>2015-01-21 23:06:22 +0000
commitac68492bc94f7d812b40e90038227ef69e245416 (patch)
tree4d17bfc617b998c822753c589a3161b5d0ea112a /test/libcxxabi
parentc0b48088747387dd36c652afc37f854d5bba3c24 (diff)
Merge libc++abi's lit configuration with libc++'s
http://reviews.llvm.org/D6985 git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@226737 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/libcxxabi')
-rw-r--r--test/libcxxabi/__init__.py0
-rw-r--r--test/libcxxabi/test/__init__.py0
-rw-r--r--test/libcxxabi/test/config.py69
3 files changed, 69 insertions, 0 deletions
diff --git a/test/libcxxabi/__init__.py b/test/libcxxabi/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/libcxxabi/__init__.py
diff --git a/test/libcxxabi/test/__init__.py b/test/libcxxabi/test/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/libcxxabi/test/__init__.py
diff --git a/test/libcxxabi/test/config.py b/test/libcxxabi/test/config.py
new file mode 100644
index 0000000..a5042d0
--- /dev/null
+++ b/test/libcxxabi/test/config.py
@@ -0,0 +1,69 @@
+import locale
+import os
+import platform
+import re
+import shlex
+import sys
+
+import lit.Test # pylint: disable=import-error,no-name-in-module
+import lit.util # pylint: disable=import-error,no-name-in-module
+
+from libcxx.test.format import LibcxxTestFormat
+from libcxx.test.config import Configuration as LibcxxConfiguration
+from libcxx.compiler import CXXCompiler
+
+class Configuration(LibcxxConfiguration):
+ # pylint: disable=redefined-outer-name
+ def __init__(self, lit_config, config):
+ super(Configuration, self).__init__(lit_config, config)
+
+ def configure_src_root(self):
+ self.libcxxabi_src_root = self.get_lit_conf('libcxxabi_src_root',
+ os.path.dirname(self.config.test_source_root))
+ self.libcxx_src_root = self.get_lit_conf('libcxx_src_root',
+ 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)
+
+ def configure_compile_flags(self):
+ self.cxx.compile_flags += ['-DLIBCXXABI_NO_TIMER']
+ super(Configuration, self).configure_compile_flags()
+
+ def configure_compile_flags_header_includes(self):
+ cxx_headers = self.get_lit_conf('cxx_headers',
+ os.path.join(self.libcxx_src_root, '/include'))
+ if not os.path.isdir(cxx_headers):
+ self.lit_config.fatal("cxx_headers='%s' is not a directory."
+ % cxx_headers)
+ self.cxx.compile_flags += ['-I' + cxx_headers]
+
+ libcxxabi_headers = self.get_lit_conf('libcxxabi_headers',
+ os.path.join(self.libcxxabi_src_root,
+ 'include'))
+ if not os.path.isdir(libcxxabi_headers):
+ self.lit_config.fatal("libcxxabi_headers='%s' is not a directory."
+ % libcxxabi_headers)
+ self.cxx.compile_flags += ['-I' + libcxxabi_headers]
+
+ def configure_compile_flags_exceptions(self):
+ pass
+
+ def configure_compile_flags_rtti(self):
+ pass
+
+ def configure_compile_flags_no_threads(self):
+ self.cxx.compile_flags += ['-DLIBCXXABI_HAS_NO_THREADS=1']
+
+ def configure_compile_flags_no_monotonic_clock(self):
+ pass
+
+ 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]
+
+ def configure_env(self):
+ if sys.platform == 'darwin':
+ self.env['DYLD_LIBRARY_PATH'] = self.obj_root