From e04b002cf89014592b3603bb9af9f74a01626771 Mon Sep 17 00:00:00 2001 From: Michal Gorny Date: Wed, 29 May 2019 07:20:30 +0000 Subject: [PATCH] [libunwind] [test] Fix inferring source paths Fix two issues that caused libcxx source path not to be inferred correctly when not specified explicitly: 1. get_lit_conf() uses default value only if the lit variable is set to None. Due to the mehod of substituting lit.site.cfg, they were "" rather than None when unset, effectively causing the default never to apply. Instead, use 'or' construct to use the default whenever get_lit_conf() returns a false value. 2. If os.path.join() is given a component starting with '/', it takes it to be an absolute path and ignores everything preceding it. Remove the slash to correctly append subdirectory. With these two fixes, libunwind tests start working on NetBSD buildbot again. Differential Revision: https://reviews.llvm.org/D62005 llvm-svn: 361931 --- libunwind/test/libunwind/test/config.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/libunwind/test/libunwind/test/config.py b/libunwind/test/libunwind/test/config.py index 803462589740..05e3f3cc21f3 100644 --- a/libunwind/test/libunwind/test/config.py +++ b/libunwind/test/libunwind/test/config.py @@ -21,12 +21,10 @@ class Configuration(LibcxxConfiguration): self.libcxx_src_root = None def configure_src_root(self): - self.libunwind_src_root = self.get_lit_conf( - 'libunwind_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.libunwind_src_root, '/../libcxx')) + self.libunwind_src_root = (self.get_lit_conf('libunwind_src_root') + or os.path.dirname(self.config.test_source_root)) + self.libcxx_src_root = (self.get_lit_conf('libcxx_src_root') + or os.path.join(self.libunwind_src_root, '..', 'libcxx')) def configure_obj_root(self): self.libunwind_obj_root = self.get_lit_conf('libunwind_obj_root')