summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Hosek <phosek@chromium.org>2019-02-09 02:50:09 +0000
committerPetr Hosek <phosek@chromium.org>2019-02-09 02:50:09 +0000
commit1603203e3293e0e87392690965b75f45662a8fe3 (patch)
tree4300d7215bba7504767ea51bf4f7eea025c193c9
parentb72412d276b6d43ee2f84f94417946e8abe0447a (diff)
downloadlibcxx-1603203e3293e0e87392690965b75f45662a8fe3.tar.gz
[libcxx] Support runtimes and monorepo locations for tests
The test configuration support currently searches for libc++ sources in <ROOT>/projects/libcxx. This change also additionally searches <ROOT>/runtimes/libcxx (so called runtimes layout) and <ROOT>/libcxx (monorepo layout). This matches the logic we already use in CMake, for example: https://github.com/llvm/llvm-project/blob/6fd4e7f/libcxx/CMakeLists.txt#L148 When the monorepo becomes the only supported layout in the future, we can simplify this logic again. Differential Revision: https://reviews.llvm.org/D57776 git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@353600 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--utils/libcxx/test/config.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/utils/libcxx/test/config.py b/utils/libcxx/test/config.py
index 5c7f4c367..c619086b6 100644
--- a/utils/libcxx/test/config.py
+++ b/utils/libcxx/test/config.py
@@ -281,9 +281,15 @@ class Configuration(object):
self.project_obj_root = self.get_lit_conf('project_obj_root')
self.libcxx_obj_root = self.get_lit_conf('libcxx_obj_root')
if not self.libcxx_obj_root and self.project_obj_root is not None:
- possible_root = os.path.join(self.project_obj_root, 'projects', 'libcxx')
- if os.path.isdir(possible_root):
- self.libcxx_obj_root = possible_root
+ possible_roots = [
+ os.path.join(self.project_obj_root, 'libcxx'),
+ os.path.join(self.project_obj_root, 'projects', 'libcxx'),
+ os.path.join(self.project_obj_root, 'runtimes', 'libcxx'),
+ ]
+ for possible_root in possible_roots:
+ if os.path.isdir(possible_root):
+ self.libcxx_obj_root = possible_root
+ break
else:
self.libcxx_obj_root = self.project_obj_root