forked from OSchip/llvm-project
[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 llvm-svn: 353600
This commit is contained in:
parent
191ba3cc03
commit
b34fed1a2e
|
@ -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
|
||||
|
||||
|
|
Loading…
Reference in New Issue