From dc031b67fb44f33c8c3feafebb751255572c5610 Mon Sep 17 00:00:00 2001 From: Leonard Grey Date: Mon, 3 Nov 2025 15:25:42 -0500 Subject: [PATCH 1/4] Allow setting extra Swift flags on Windows --- lldb/test/CMakeLists.txt | 3 +++ lldb/test/Shell/helper/toolchain.py | 4 ++++ lldb/test/Shell/lit.site.cfg.py.in | 6 ++++++ 3 files changed, 13 insertions(+) diff --git a/lldb/test/CMakeLists.txt b/lldb/test/CMakeLists.txt index 76a2e323510df..9f44c3aa8108d 100644 --- a/lldb/test/CMakeLists.txt +++ b/lldb/test/CMakeLists.txt @@ -271,6 +271,9 @@ llvm_canonicalize_cmake_booleans( llvm_canonicalize_cmake_booleans( LLDB_ENABLE_SWIFT_SUPPORT ) + +set(LLDB_WINDOWS_SWIFT_DRIVER_EXTRA_FLAGS "" CACHE STRING + "Additional swift driver arguments for LLDB shell tests on Windows") # END SWIFT # Configure the individual test suites. diff --git a/lldb/test/Shell/helper/toolchain.py b/lldb/test/Shell/helper/toolchain.py index 07abb9cee180b..0f5dba79e07b1 100644 --- a/lldb/test/Shell/helper/toolchain.py +++ b/lldb/test/Shell/helper/toolchain.py @@ -260,6 +260,10 @@ def use_support_substitutions(config): swift_driver_args = [] if platform.system() in ["Darwin"]: swift_args += ["-sdk", sdk_path] + if sys.platform == "win32": + swift_driver_extra_args = getattr(config, "swift_driver_extra_args_win", []) + if swift_driver_extra_args: + swift_args += swift_driver_extra_args tools = [ ToolSubst( "%target-swiftc", diff --git a/lldb/test/Shell/lit.site.cfg.py.in b/lldb/test/Shell/lit.site.cfg.py.in index 0eff04f22d9e3..3091c4851c8ae 100644 --- a/lldb/test/Shell/lit.site.cfg.py.in +++ b/lldb/test/Shell/lit.site.cfg.py.in @@ -24,6 +24,12 @@ config.python_executable = "@Python3_EXECUTABLE@" config.python_root_dir = "@Python3_ROOT_DIR@" config.swiftc = "@LLDB_SWIFTC@" config.swift_libs_dir = '@LLDB_SWIFT_LIBS@' +_swift_driver_flags = lit_config.substitute("@LLDB_WINDOWS_SWIFT_DRIVER_EXTRA_FLAGS@") +config.swift_driver_extra_args = [ + flag.strip() + for flag in _swift_driver_flags.split(";") + if flag.strip() +] config.lldb_enable_swift = @LLDB_ENABLE_SWIFT_SUPPORT@ config.have_zlib = @LLVM_ENABLE_ZLIB@ config.objc_gnustep_dir = "@LLDB_TEST_OBJC_GNUSTEP_DIR@" From a2c8ae194b855a97fcfd6272c1c938c31af53dee Mon Sep 17 00:00:00 2001 From: Leonard Grey Date: Mon, 10 Nov 2025 17:37:26 -0500 Subject: [PATCH 2/4] Cross platform --- lldb/test/CMakeLists.txt | 4 ++-- lldb/test/Shell/helper/toolchain.py | 7 +++---- lldb/test/Shell/lit.site.cfg.py.in | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/lldb/test/CMakeLists.txt b/lldb/test/CMakeLists.txt index 9f44c3aa8108d..0e1264b0edc26 100644 --- a/lldb/test/CMakeLists.txt +++ b/lldb/test/CMakeLists.txt @@ -272,8 +272,8 @@ llvm_canonicalize_cmake_booleans( LLDB_ENABLE_SWIFT_SUPPORT ) -set(LLDB_WINDOWS_SWIFT_DRIVER_EXTRA_FLAGS "" CACHE STRING - "Additional swift driver arguments for LLDB shell tests on Windows") +set(LLDB_SWIFT_DRIVER_EXTRA_FLAGS "" CACHE STRING + "Additional swift driver arguments for LLDB shell tests") # END SWIFT # Configure the individual test suites. diff --git a/lldb/test/Shell/helper/toolchain.py b/lldb/test/Shell/helper/toolchain.py index 0f5dba79e07b1..d176a5dca240d 100644 --- a/lldb/test/Shell/helper/toolchain.py +++ b/lldb/test/Shell/helper/toolchain.py @@ -260,10 +260,9 @@ def use_support_substitutions(config): swift_driver_args = [] if platform.system() in ["Darwin"]: swift_args += ["-sdk", sdk_path] - if sys.platform == "win32": - swift_driver_extra_args = getattr(config, "swift_driver_extra_args_win", []) - if swift_driver_extra_args: - swift_args += swift_driver_extra_args + swift_driver_extra_args = getattr(config, "swift_driver_extra_args", []) + if swift_driver_extra_args: + swift_args += swift_driver_extra_args tools = [ ToolSubst( "%target-swiftc", diff --git a/lldb/test/Shell/lit.site.cfg.py.in b/lldb/test/Shell/lit.site.cfg.py.in index 3091c4851c8ae..6159c900f7b6a 100644 --- a/lldb/test/Shell/lit.site.cfg.py.in +++ b/lldb/test/Shell/lit.site.cfg.py.in @@ -24,7 +24,7 @@ config.python_executable = "@Python3_EXECUTABLE@" config.python_root_dir = "@Python3_ROOT_DIR@" config.swiftc = "@LLDB_SWIFTC@" config.swift_libs_dir = '@LLDB_SWIFT_LIBS@' -_swift_driver_flags = lit_config.substitute("@LLDB_WINDOWS_SWIFT_DRIVER_EXTRA_FLAGS@") +_swift_driver_flags = lit_config.substitute("@LLDB_SWIFT_DRIVER_EXTRA_FLAGS@") config.swift_driver_extra_args = [ flag.strip() for flag in _swift_driver_flags.split(";") From 1c003918871ee5db062efdbfe277fe029e873fa8 Mon Sep 17 00:00:00 2001 From: Leonard Grey Date: Mon, 10 Nov 2025 17:42:26 -0500 Subject: [PATCH 3/4] Formatting --- lldb/test/Shell/lit.site.cfg.py.in | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/lldb/test/Shell/lit.site.cfg.py.in b/lldb/test/Shell/lit.site.cfg.py.in index 6159c900f7b6a..588e12d7532b2 100644 --- a/lldb/test/Shell/lit.site.cfg.py.in +++ b/lldb/test/Shell/lit.site.cfg.py.in @@ -25,11 +25,7 @@ config.python_root_dir = "@Python3_ROOT_DIR@" config.swiftc = "@LLDB_SWIFTC@" config.swift_libs_dir = '@LLDB_SWIFT_LIBS@' _swift_driver_flags = lit_config.substitute("@LLDB_SWIFT_DRIVER_EXTRA_FLAGS@") -config.swift_driver_extra_args = [ - flag.strip() - for flag in _swift_driver_flags.split(";") - if flag.strip() -] +config.swift_driver_extra_args = [flag.strip() for flag in _swift_driver_flags.split(";") if flag.strip()] config.lldb_enable_swift = @LLDB_ENABLE_SWIFT_SUPPORT@ config.have_zlib = @LLVM_ENABLE_ZLIB@ config.objc_gnustep_dir = "@LLDB_TEST_OBJC_GNUSTEP_DIR@" From 6fd9afa81114fa887cf18ce7ddada755aaffd8b9 Mon Sep 17 00:00:00 2001 From: Leonard Grey Date: Mon, 17 Nov 2025 13:38:28 -0500 Subject: [PATCH 4/4] Add BEGIN/END SWIFT markers --- lldb/test/Shell/lit.site.cfg.py.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lldb/test/Shell/lit.site.cfg.py.in b/lldb/test/Shell/lit.site.cfg.py.in index 588e12d7532b2..8891ae91a48ca 100644 --- a/lldb/test/Shell/lit.site.cfg.py.in +++ b/lldb/test/Shell/lit.site.cfg.py.in @@ -24,8 +24,10 @@ config.python_executable = "@Python3_EXECUTABLE@" config.python_root_dir = "@Python3_ROOT_DIR@" config.swiftc = "@LLDB_SWIFTC@" config.swift_libs_dir = '@LLDB_SWIFT_LIBS@' +# BEGIN SWIFT _swift_driver_flags = lit_config.substitute("@LLDB_SWIFT_DRIVER_EXTRA_FLAGS@") config.swift_driver_extra_args = [flag.strip() for flag in _swift_driver_flags.split(";") if flag.strip()] +# END SWIFT config.lldb_enable_swift = @LLDB_ENABLE_SWIFT_SUPPORT@ config.have_zlib = @LLVM_ENABLE_ZLIB@ config.objc_gnustep_dir = "@LLDB_TEST_OBJC_GNUSTEP_DIR@"