[Lldb-commits] [PATCH] D151269: [lldb] Pass CMAKE_SYSROOT through to lldb tests
Daniel Thornburgh via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed May 24 11:46:25 PDT 2023
mysterymath updated this revision to Diff 525282.
mysterymath added a comment.
Restrict description to Shell tests.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D151269/new/
https://reviews.llvm.org/D151269
Files:
lldb/test/Shell/helper/build.py
lldb/test/Shell/helper/toolchain.py
lldb/test/Shell/lit.site.cfg.py.in
Index: lldb/test/Shell/lit.site.cfg.py.in
===================================================================
--- lldb/test/Shell/lit.site.cfg.py.in
+++ lldb/test/Shell/lit.site.cfg.py.in
@@ -13,6 +13,7 @@
# Since it comes from the command line, it may have backslashes which
# should not need to be escaped.
config.lldb_lit_tools_dir = lit_config.substitute(r"@LLDB_LIT_TOOLS_DIR@")
+config.cmake_sysroot = lit_config.substitute("@CMAKE_SYSROOT@")
config.target_triple = "@LLVM_TARGET_TRIPLE@"
config.python_executable = "@Python3_EXECUTABLE@"
config.have_zlib = @LLVM_ENABLE_ZLIB@
Index: lldb/test/Shell/helper/toolchain.py
===================================================================
--- lldb/test/Shell/helper/toolchain.py
+++ lldb/test/Shell/helper/toolchain.py
@@ -44,6 +44,8 @@
build_script_args.append('--libs-dir={0}'.format(config.llvm_libs_dir))
if config.objc_gnustep_dir:
build_script_args.append('--objc-gnustep-dir="{0}"'.format(config.objc_gnustep_dir))
+ if config.cmake_sysroot:
+ build_script_args.append('--sysroot={0}'.format(config.cmake_sysroot))
lldb_init = _get_lldb_init_path(config)
@@ -140,6 +142,9 @@
# The clang module cache is used for building inferiors.
host_flags += ['-fmodules-cache-path={}'.format(config.clang_module_cache)]
+ if config.cmake_sysroot:
+ host_flags += ['--sysroot={}'.format(config.cmake_sysroot)]
+
host_flags = ' '.join(host_flags)
config.substitutions.append(('%clang_host', '%clang ' + host_flags))
config.substitutions.append(('%clangxx_host', '%clangxx ' + host_flags))
Index: lldb/test/Shell/helper/build.py
===================================================================
--- lldb/test/Shell/helper/build.py
+++ lldb/test/Shell/helper/build.py
@@ -61,6 +61,12 @@
default=False,
help='Include and link GNUstep libobjc2 (Windows and Linux only)')
+parser.add_argument('--sysroot',
+ metavar='directory',
+ dest='sysroot',
+ required=False,
+ help='If specified, a sysroot to be passed via --sysroot')
+
if sys.platform == 'darwin':
parser.add_argument('--apple-sdk',
metavar='apple_sdk',
@@ -254,6 +260,7 @@
"--objc-gnustep specified without path to libobjc2"
self.objc_gnustep_inc = os.path.join(args.objc_gnustep_dir, 'include') if args.objc_gnustep_dir else None
self.objc_gnustep_lib = os.path.join(args.objc_gnustep_dir, 'lib') if args.objc_gnustep_dir else None
+ self.sysroot = args.sysroot
def _exe_file_name(self):
assert self.mode != 'compile'
@@ -679,6 +686,8 @@
args.extend(['-fobjc-runtime=gnustep-2.0', '-I', self.objc_gnustep_inc])
if sys.platform == "win32":
args.extend(['-Xclang', '-gcodeview', '-Xclang', '--dependent-lib=msvcrtd'])
+ elif self.sysroot:
+ args.extend(['--sysroot', self.sysroot])
if self.std:
args.append('-std={0}'.format(self.std))
@@ -713,6 +722,8 @@
args.extend(['-Wl,-rpath,' + self.objc_gnustep_lib])
elif sys.platform == 'win32':
args.extend(['-fuse-ld=lld-link', '-g', '-Xclang', '--dependent-lib=msvcrtd'])
+ elif self.sysroot:
+ args.extend(['--sysroot', self.sysroot])
return ('linking', self._obj_file_names(), self._exe_file_name(), None, args)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D151269.525282.patch
Type: text/x-patch
Size: 3532 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20230524/0292c60a/attachment.bin>
More information about the lldb-commits
mailing list