[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