[Lldb-commits] [lldb] [lldb] Allow tests to share a single build (PR #181720)
Dave Lee via lldb-commits
lldb-commits at lists.llvm.org
Tue Feb 17 14:02:52 PST 2026
https://github.com/kastiglione updated https://github.com/llvm/llvm-project/pull/181720
>From 905b7d361622583998ade3d7e978b5d89fe29bdb Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Mon, 16 Feb 2026 10:33:05 -0800
Subject: [PATCH 1/8] [lldb] Allow tests to share a single build
This allows a test to have a single shared build for the test case, instead of the
default behavior of a separate build for each test function.
Concretely, this results in a single build directory, named by the test. The default
behavior is to create many build directories, named `TestSomething.test_one`,
`TestSomething.test_two`, etc.
This is opt-in, tests get a single shared build by setting `SHARED_BUILD_TESTCASE` in
the test case class.
The goal here is to make the test suite eventually more efficient, by not repeatedly
building the same test source.
---
lldb/packages/Python/lldbsuite/test/lldbtest.py | 7 ++++++-
lldb/test/API/commands/dwim-print/TestDWIMPrint.py | 2 ++
.../test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py | 2 ++
3 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index 6034eca3b93f2..c8a69142394ee 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -569,6 +569,8 @@ class Base(unittest.TestCase):
# Can be overridden by the LLDB_TIME_WAIT_NEXT_LAUNCH environment variable.
timeWaitNextLaunch = 1.0
+ SHARED_BUILD_TESTCASE = False
+
@staticmethod
def compute_mydir(test_file):
"""Subclasses should call this function to correctly calculate the
@@ -754,7 +756,10 @@ def getSourceDir(self):
return os.path.join(configuration.test_src_root, self.mydir)
def getBuildDirBasename(self):
- return self.__class__.__module__ + "." + self.testMethodName
+ if self.__class__.SHARED_BUILD_TESTCASE:
+ return self.__class__.__module__
+ else:
+ return self.__class__.__module__ + "." + self.testMethodName
def getBuildDir(self):
"""Return the full path to the current test."""
diff --git a/lldb/test/API/commands/dwim-print/TestDWIMPrint.py b/lldb/test/API/commands/dwim-print/TestDWIMPrint.py
index 82ff59f74f41f..694671faedfc2 100644
--- a/lldb/test/API/commands/dwim-print/TestDWIMPrint.py
+++ b/lldb/test/API/commands/dwim-print/TestDWIMPrint.py
@@ -10,6 +10,8 @@
class TestCase(TestBase):
+ SHARED_BUILD_TESTCASE = True
+
def _run_cmd(self, cmd: str) -> str:
"""Run the given lldb command and return its output."""
result = lldb.SBCommandReturnObject()
diff --git a/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py b/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py
index 616d049459ab9..0a863c85bbc69 100644
--- a/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py
+++ b/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py
@@ -9,6 +9,8 @@
class TestCase(TestBase):
+ SHARED_BUILD_TESTCASE = True
+
@skipUnlessDarwin
def test(self):
self.build()
>From c70fe1576c372e5d115516f44de36ddc1223b94c Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Mon, 16 Feb 2026 10:44:21 -0800
Subject: [PATCH 2/8] Add comment doc
---
lldb/packages/Python/lldbsuite/test/lldbtest.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index c8a69142394ee..404074bea5964 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -569,6 +569,8 @@ class Base(unittest.TestCase):
# Can be overridden by the LLDB_TIME_WAIT_NEXT_LAUNCH environment variable.
timeWaitNextLaunch = 1.0
+ # Subclasses can set this to True to avoid repeated building of the test
+ # source (by default, a separate build happens for each test function).
SHARED_BUILD_TESTCASE = False
@staticmethod
>From 7f8abce44127fe3fa9f29cc47fa2d1fa9abd676c Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Mon, 16 Feb 2026 11:16:09 -0800
Subject: [PATCH 3/8] Don't always delete build dir in setUp
---
lldb/packages/Python/lldbsuite/test/lldbtest.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index 404074bea5964..004a25d3c5678 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -758,7 +758,7 @@ def getSourceDir(self):
return os.path.join(configuration.test_src_root, self.mydir)
def getBuildDirBasename(self):
- if self.__class__.SHARED_BUILD_TESTCASE:
+ if self.SHARED_BUILD_TESTCASE:
return self.__class__.__module__
else:
return self.__class__.__module__ + "." + self.testMethodName
@@ -770,10 +770,10 @@ def getBuildDir(self):
)
def makeBuildDir(self):
- """Create the test-specific working directory, deleting any previous
- contents."""
+ """Create the test-specific working directory, optionally deleting any
+ previous contents."""
bdir = self.getBuildDir()
- if os.path.isdir(bdir):
+ if os.path.isdir(bdir) and not self.SHARED_BUILD_TESTCASE:
shutil.rmtree(bdir)
lldbutil.mkdir_p(bdir)
>From 64494fd1a7147b849a6abd813b6a1c8566f80f41 Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Tue, 17 Feb 2026 13:38:39 -0800
Subject: [PATCH 4/8] Default SHARED_BUILD_TESTCASE to True
---
lldb/packages/Python/lldbsuite/test/lldbinline.py | 1 +
lldb/packages/Python/lldbsuite/test/lldbtest.py | 2 +-
lldb/test/API/commands/dwim-print/TestDWIMPrint.py | 2 --
lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py | 2 --
lldb/test/API/commands/frame/var/TestFrameVar.py | 1 +
lldb/test/API/commands/process/launch/TestProcessLaunch.py | 2 ++
.../commands/settings/use_source_cache/TestUseSourceCache.py | 1 +
lldb/test/API/commands/statistics/basic/TestStats.py | 1 +
.../TestAutoInstallMainExecutable.py | 3 +++
lldb/test/API/commands/trace/TestTraceStartStop.py | 3 +++
.../breakpoint/breakpoint_command/TestBreakpointCommand.py | 1 +
.../API/functionalities/breakpoint/objc/TestObjCBreakpoints.py | 2 ++
lldb/test/API/functionalities/gdb_remote_client/TestPty.py | 3 +++
.../functionalities/inferior-changed/TestInferiorChanged.py | 2 ++
.../API/functionalities/limit-debug-info/TestLimitDebugInfo.py | 2 ++
.../API/functionalities/module_cache/bsd/TestModuleCacheBSD.py | 2 ++
.../module_cache/debug_index/TestDebugIndexCache.py | 2 ++
.../API/functionalities/rerun_and_expr/TestRerunAndExpr.py | 2 ++
.../rerun_and_expr_dylib/TestRerunAndExprDylib.py | 2 ++
.../API/lang/c/calling-conventions/TestCCallingConventions.py | 2 ++
lldb/test/API/lang/cpp/abi_tag_lookup/TestAbiTagLookup.py | 2 ++
.../test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py | 2 ++
.../TestConstStaticIntegralMember.py | 2 ++
.../cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py | 1 +
.../gmodules/template-with-same-arg/TestTemplateWithSameArg.py | 2 ++
lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py | 2 ++
lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py | 2 ++
.../API/lang/cpp/template-function/TestTemplateFunctions.py | 2 ++
.../lang/objc/objc-struct-argument/TestObjCStructArgument.py | 2 ++
.../macosx/lc-note/firmware-corefile/TestFirmwareCorefiles.py | 2 ++
lldb/test/API/macosx/simulator/TestSimulatorPlatform.py | 2 ++
lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py | 3 +++
lldb/test/API/python_api/debugger/TestDebuggerAPI.py | 1 +
.../target-arch-from-module/TestTargetArchFromModule.py | 2 ++
lldb/test/API/source-manager/TestSourceManager.py | 1 +
lldb/test/API/test_utils/base/TestBaseTest.py | 2 ++
.../API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py | 2 ++
lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py | 2 ++
.../API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py | 2 ++
lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py | 2 ++
.../tools/lldb-server/commandline/TestGdbRemoteConnection.py | 3 +++
lldb/test/API/types/AbstractBase.py | 2 ++
42 files changed, 76 insertions(+), 5 deletions(-)
diff --git a/lldb/packages/Python/lldbsuite/test/lldbinline.py b/lldb/packages/Python/lldbsuite/test/lldbinline.py
index ae38ab9d8c9d7..d1225db4d61a9 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbinline.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbinline.py
@@ -210,4 +210,5 @@ def MakeInlineTest(__file, __globals, decorators=None, name=None, build_dict=Non
# correctly in test results.
test_class.test_filename = __file
test_class.mydir = TestBase.compute_mydir(__file)
+ test_class.SHARED_BUILD_TESTCASE = False
return test_class
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index 004a25d3c5678..c7df01dba2c80 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -571,7 +571,7 @@ class Base(unittest.TestCase):
# Subclasses can set this to True to avoid repeated building of the test
# source (by default, a separate build happens for each test function).
- SHARED_BUILD_TESTCASE = False
+ SHARED_BUILD_TESTCASE = True
@staticmethod
def compute_mydir(test_file):
diff --git a/lldb/test/API/commands/dwim-print/TestDWIMPrint.py b/lldb/test/API/commands/dwim-print/TestDWIMPrint.py
index 694671faedfc2..82ff59f74f41f 100644
--- a/lldb/test/API/commands/dwim-print/TestDWIMPrint.py
+++ b/lldb/test/API/commands/dwim-print/TestDWIMPrint.py
@@ -10,8 +10,6 @@
class TestCase(TestBase):
- SHARED_BUILD_TESTCASE = True
-
def _run_cmd(self, cmd: str) -> str:
"""Run the given lldb command and return its output."""
result = lldb.SBCommandReturnObject()
diff --git a/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py b/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py
index 0a863c85bbc69..616d049459ab9 100644
--- a/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py
+++ b/lldb/test/API/commands/dwim-print/objc/TestDWIMPrintObjC.py
@@ -9,8 +9,6 @@
class TestCase(TestBase):
- SHARED_BUILD_TESTCASE = True
-
@skipUnlessDarwin
def test(self):
self.build()
diff --git a/lldb/test/API/commands/frame/var/TestFrameVar.py b/lldb/test/API/commands/frame/var/TestFrameVar.py
index d8260a5657618..b70120cb2d8e1 100644
--- a/lldb/test/API/commands/frame/var/TestFrameVar.py
+++ b/lldb/test/API/commands/frame/var/TestFrameVar.py
@@ -16,6 +16,7 @@ class TestFrameVar(TestBase):
# set this to true. That way it won't be run once for
# each debug info format.
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def test_frame_var(self):
self.build()
diff --git a/lldb/test/API/commands/process/launch/TestProcessLaunch.py b/lldb/test/API/commands/process/launch/TestProcessLaunch.py
index 92d0c468741e5..90d95d6bd5c75 100644
--- a/lldb/test/API/commands/process/launch/TestProcessLaunch.py
+++ b/lldb/test/API/commands/process/launch/TestProcessLaunch.py
@@ -9,10 +9,12 @@
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
from pathlib import Path
+import re
class ProcessLaunchTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def setUp(self):
# Call super's setUp().
diff --git a/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py b/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
index 8425ab09ab9d7..01f5e652d37bd 100644
--- a/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
+++ b/lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
@@ -12,6 +12,7 @@
class SettingsUseSourceCacheTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def test_set_use_source_cache_false(self):
"""Test that after 'set use-source-cache false', files are not locked."""
diff --git a/lldb/test/API/commands/statistics/basic/TestStats.py b/lldb/test/API/commands/statistics/basic/TestStats.py
index c8527abf3c84e..a32b8feecc5cf 100644
--- a/lldb/test/API/commands/statistics/basic/TestStats.py
+++ b/lldb/test/API/commands/statistics/basic/TestStats.py
@@ -11,6 +11,7 @@
class TestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def test_enable_disable(self):
"""
diff --git a/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py b/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
index 165fae72319ae..3120b141c8bcd 100644
--- a/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
+++ b/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
@@ -9,10 +9,13 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
+import lldb
+import os
class TestAutoInstallMainExecutable(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
@skipIfRemote
@skipIfWindows # This test is flaky on Windows
diff --git a/lldb/test/API/commands/trace/TestTraceStartStop.py b/lldb/test/API/commands/trace/TestTraceStartStop.py
index 9450f8b0961a8..d88d80bac93a0 100644
--- a/lldb/test/API/commands/trace/TestTraceStartStop.py
+++ b/lldb/test/API/commands/trace/TestTraceStartStop.py
@@ -3,10 +3,13 @@
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
from lldbsuite.test.decorators import *
+import os
@skipIfNoIntelPT
class TestTraceStartStop(TraceIntelPTTestCaseBase):
+ SHARED_BUILD_TESTCASE = False
+
def expectGenericHelpMessageForStartCommand(self):
self.expect(
"help thread trace start",
diff --git a/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py b/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
index 605561c757372..e45362295690d 100644
--- a/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
+++ b/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
@@ -14,6 +14,7 @@
class BreakpointCommandTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
@expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24528")
def test_breakpoint_command_sequence(self):
diff --git a/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py b/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
index 29cf31563a9a9..7cecd1d290683 100644
--- a/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
+++ b/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
@@ -13,6 +13,8 @@
class TestObjCBreakpoints(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@add_test_categories(["objc"])
def test_break(self):
"""Test setting Objective-C specific breakpoints (DWARF in .o files)."""
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestPty.py b/lldb/test/API/functionalities/gdb_remote_client/TestPty.py
index 94eeb6e3ba11a..f8d56b170fc02 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestPty.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestPty.py
@@ -3,10 +3,13 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.gdbclientutils import *
from lldbsuite.test.lldbgdbclient import GDBRemoteTestBase
+import os
@skipIf(hostoslist=["windows"])
class TestPty(GDBRemoteTestBase):
+ SHARED_BUILD_TESTCASE = False
+
server_socket_class = PtyServerSocket
def get_term_attrs(self):
diff --git a/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py b/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
index ea0283e119f1e..c8114ab78d9e0 100644
--- a/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
+++ b/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
@@ -10,6 +10,8 @@
class ChangedInferiorTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIf(hostoslist=["windows"])
@no_debug_info_test
def test_inferior_crashing(self):
diff --git a/lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py b/lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py
index 18371669462e2..668d31d8a5acd 100644
--- a/lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py
+++ b/lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py
@@ -10,6 +10,8 @@
class LimitDebugInfoTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def _check_type(self, target, name):
exe = target.FindModule(lldb.SBFileSpec("a.out"))
type_ = exe.FindFirstType(name)
diff --git a/lldb/test/API/functionalities/module_cache/bsd/TestModuleCacheBSD.py b/lldb/test/API/functionalities/module_cache/bsd/TestModuleCacheBSD.py
index 20312f829fdc1..180d487fd4845 100644
--- a/lldb/test/API/functionalities/module_cache/bsd/TestModuleCacheBSD.py
+++ b/lldb/test/API/functionalities/module_cache/bsd/TestModuleCacheBSD.py
@@ -10,6 +10,8 @@
class ModuleCacheTestcaseBSD(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
# Call super's setUp().
TestBase.setUp(self)
diff --git a/lldb/test/API/functionalities/module_cache/debug_index/TestDebugIndexCache.py b/lldb/test/API/functionalities/module_cache/debug_index/TestDebugIndexCache.py
index 501ceb705c579..7d7d31b366f4b 100644
--- a/lldb/test/API/functionalities/module_cache/debug_index/TestDebugIndexCache.py
+++ b/lldb/test/API/functionalities/module_cache/debug_index/TestDebugIndexCache.py
@@ -9,6 +9,8 @@
class DebugIndexCacheTestcase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
# Call super's setUp().
TestBase.setUp(self)
diff --git a/lldb/test/API/functionalities/rerun_and_expr/TestRerunAndExpr.py b/lldb/test/API/functionalities/rerun_and_expr/TestRerunAndExpr.py
index 1d62af4299c3b..e0d6a811fc22c 100644
--- a/lldb/test/API/functionalities/rerun_and_expr/TestRerunAndExpr.py
+++ b/lldb/test/API/functionalities/rerun_and_expr/TestRerunAndExpr.py
@@ -11,6 +11,8 @@
class TestRerunExpr(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
# FIXME: on Windows rebuilding the binary isn't enough to unload it
# on progrem restart. One will have to try hard to evict
# the module from the ModuleList (possibly including a call to
diff --git a/lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py b/lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
index 19edaac964e62..cc9ffd280a021 100644
--- a/lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
+++ b/lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
@@ -26,6 +26,8 @@ def isUbuntu18_04():
class TestRerunExprDylib(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipTestIfFn(isUbuntu18_04, bugnumber="rdar://103831050")
@skipIfWindows
@skipIfRemote
diff --git a/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py b/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
index 9540dc066f308..dff3bc97f9998 100644
--- a/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
+++ b/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
@@ -3,10 +3,12 @@
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
from lldbsuite.test_event.build_exception import BuildError
+import re
class TestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def build_and_run(self, test_file):
"""
diff --git a/lldb/test/API/lang/cpp/abi_tag_lookup/TestAbiTagLookup.py b/lldb/test/API/lang/cpp/abi_tag_lookup/TestAbiTagLookup.py
index 4f6e41ed29de1..19f4a4e14ed22 100644
--- a/lldb/test/API/lang/cpp/abi_tag_lookup/TestAbiTagLookup.py
+++ b/lldb/test/API/lang/cpp/abi_tag_lookup/TestAbiTagLookup.py
@@ -10,6 +10,8 @@
class AbiTagLookupTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIfWindows
@expectedFailureAll(debug_info=["dwarf", "gmodules", "dwo"])
def test_abi_tag_lookup(self):
diff --git a/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py b/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
index 2d3e4f7cdd472..58b726417ee0a 100644
--- a/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
+++ b/lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
@@ -10,6 +10,8 @@
class AbiTagStructorsTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIf(
compiler="clang",
compiler_version=["<", "22"],
diff --git a/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py b/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
index 9de7eb2e4a6e3..3f42dc195d118 100644
--- a/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
+++ b/lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
@@ -9,6 +9,8 @@
class TestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def test(self):
self.build()
lldbutil.run_to_source_breakpoint(
diff --git a/lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py b/lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py
index b3bed43c75873..b0781c8d442e5 100644
--- a/lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py
+++ b/lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py
@@ -5,6 +5,7 @@
class ExprDefinitionInDylibTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
@skipIf(
compiler="clang",
diff --git a/lldb/test/API/lang/cpp/gmodules/template-with-same-arg/TestTemplateWithSameArg.py b/lldb/test/API/lang/cpp/gmodules/template-with-same-arg/TestTemplateWithSameArg.py
index d40be55872eae..00fa739ee0591 100644
--- a/lldb/test/API/lang/cpp/gmodules/template-with-same-arg/TestTemplateWithSameArg.py
+++ b/lldb/test/API/lang/cpp/gmodules/template-with-same-arg/TestTemplateWithSameArg.py
@@ -27,6 +27,8 @@
class TestTemplateWithSameArg(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
TestBase.setUp(self)
self.build()
diff --git a/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py b/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
index 41141164769ec..73d43207cd12c 100644
--- a/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
+++ b/lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
@@ -11,6 +11,8 @@
from lldbsuite.test import lldbplatformutil
class NamespaceLookupTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
# Call super's setUp().
TestBase.setUp(self)
diff --git a/lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py b/lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py
index 8b6d6dcbc38ba..83a776fc1735d 100644
--- a/lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py
+++ b/lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py
@@ -5,6 +5,8 @@
class TestTemplateAlias(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def do_test(self, extra_flags):
self.build(dictionary=extra_flags)
self.main_source_file = lldb.SBFileSpec("main.cpp")
diff --git a/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py b/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
index 3be93dedfd11d..aac9b0a2450cc 100644
--- a/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
+++ b/lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
@@ -8,6 +8,8 @@
class TemplateFunctionsTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def do_test_template_function(self, add_cast):
self.build()
lldbutil.run_to_source_breakpoint(
diff --git a/lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py b/lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py
index 480d99523e8a2..921db09db1c57 100644
--- a/lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py
+++ b/lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py
@@ -8,6 +8,8 @@
class TestObjCStructArgument(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
# Call super's setUp().
TestBase.setUp(self)
diff --git a/lldb/test/API/macosx/lc-note/firmware-corefile/TestFirmwareCorefiles.py b/lldb/test/API/macosx/lc-note/firmware-corefile/TestFirmwareCorefiles.py
index 9309de4824ec4..c941d7a61da05 100644
--- a/lldb/test/API/macosx/lc-note/firmware-corefile/TestFirmwareCorefiles.py
+++ b/lldb/test/API/macosx/lc-note/firmware-corefile/TestFirmwareCorefiles.py
@@ -12,6 +12,8 @@
class TestFirmwareCorefiles(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIf(
debug_info=no_match(["dsym"]),
bugnumber="This test is looking explicitly for a dSYM",
diff --git a/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py b/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
index b17ee83ea04fe..2773a2cf072e4 100644
--- a/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
+++ b/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
@@ -3,10 +3,12 @@
from lldbsuite.test.decorators import *
import lldbsuite.test.lldbutil as lldbutil
import json
+import subprocess
class TestSimulatorPlatformLaunching(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def check_load_commands(self, expected_load_command):
"""sanity check the built binary for the expected number of load commands"""
diff --git a/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py b/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
index bc19c69df7620..34284cb23b269 100644
--- a/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
+++ b/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
@@ -9,9 +9,12 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
+import shutil
class TestSkinnyCorefile(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIf(
debug_info=no_match(["dsym"]),
bugnumber="This test is looking explicitly for a dSYM",
diff --git a/lldb/test/API/python_api/debugger/TestDebuggerAPI.py b/lldb/test/API/python_api/debugger/TestDebuggerAPI.py
index 600cde3c6b807..93ee52dc88ef8 100644
--- a/lldb/test/API/python_api/debugger/TestDebuggerAPI.py
+++ b/lldb/test/API/python_api/debugger/TestDebuggerAPI.py
@@ -11,6 +11,7 @@
class DebuggerAPITestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def test_debugger_api_boundary_condition(self):
"""Exercise SBDebugger APIs with boundary conditions."""
diff --git a/lldb/test/API/python_api/target-arch-from-module/TestTargetArchFromModule.py b/lldb/test/API/python_api/target-arch-from-module/TestTargetArchFromModule.py
index 0141828ae1eab..ba9ab286f82e6 100644
--- a/lldb/test/API/python_api/target-arch-from-module/TestTargetArchFromModule.py
+++ b/lldb/test/API/python_api/target-arch-from-module/TestTargetArchFromModule.py
@@ -12,6 +12,8 @@
class TargetArchFromModule(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIf(
debug_info=no_match(["dsym"]),
bugnumber="This test is looking explicitly for a dSYM",
diff --git a/lldb/test/API/source-manager/TestSourceManager.py b/lldb/test/API/source-manager/TestSourceManager.py
index 3500dded815b9..9055dcba93fd1 100644
--- a/lldb/test/API/source-manager/TestSourceManager.py
+++ b/lldb/test/API/source-manager/TestSourceManager.py
@@ -30,6 +30,7 @@ def ansi_color_surround_regex(inner_regex_text):
class SourceManagerTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def setUp(self):
# Call super's setUp().
diff --git a/lldb/test/API/test_utils/base/TestBaseTest.py b/lldb/test/API/test_utils/base/TestBaseTest.py
index 41ba481b9b74f..afff48d0c6d13 100644
--- a/lldb/test/API/test_utils/base/TestBaseTest.py
+++ b/lldb/test/API/test_utils/base/TestBaseTest.py
@@ -9,6 +9,8 @@
class TestBuildMethod(Base):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
super().setUp()
self._traces = []
diff --git a/lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py b/lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
index 3309800c1dd10..7f9d4325ce4f8 100644
--- a/lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
+++ b/lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
@@ -12,6 +12,8 @@
class TestDAP_setBreakpoints(lldbdap_testcase.DAPTestCaseBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
lldbdap_testcase.DAPTestCaseBase.setUp(self)
diff --git a/lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py b/lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
index 19f88d88c2ff4..3a4bc62fc6872 100644
--- a/lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
+++ b/lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
@@ -12,6 +12,8 @@
class TestDAP_disconnect(lldbdap_testcase.DAPTestCaseBase):
+ SHARED_BUILD_TESTCASE = False
+
source = "main.cpp"
def disconnect_and_assert_no_output_printed(self):
diff --git a/lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py b/lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
index dfb4906ae6a49..0fdc719b6cb76 100644
--- a/lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
+++ b/lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
@@ -12,6 +12,8 @@
@skipIfBuildType(["debug"])
class TestDAP_runInTerminal(lldbdap_testcase.DAPTestCaseBase):
+ SHARED_BUILD_TESTCASE = False
+
def read_pid_message(self, fifo_file):
with open(fifo_file, "r") as file:
self.assertIn("pid", file.readline())
diff --git a/lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py b/lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
index 1dbb0143e7a55..8b87d5e13ebd4 100644
--- a/lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
+++ b/lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
@@ -17,6 +17,8 @@ def make_buffer_verify_dict(start_idx, count, offset=0):
class TestDAP_variables(lldbdap_testcase.DAPTestCaseBase):
+ SHARED_BUILD_TESTCASE = False
+
def verify_values(self, verify_dict, actual, varref_dict=None, expression=None):
if "equals" in verify_dict:
verify = verify_dict["equals"]
diff --git a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
index ed600d396fad4..7e37de53494b3 100644
--- a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
+++ b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
@@ -6,9 +6,12 @@
from lldbgdbserverutils import Server
import lldbsuite.test.lldbplatformutil
from lldbgdbserverutils import Pipe
+import lldb
class TestGdbRemoteConnection(gdbremote_testcase.GdbRemoteTestCaseBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipIfRemote # reverse connect is not a supported use case for now
def test_reverse_connect(self):
# Reverse connect is the default connection method.
diff --git a/lldb/test/API/types/AbstractBase.py b/lldb/test/API/types/AbstractBase.py
index fb1e25254b281..0420ffd8f3bbb 100644
--- a/lldb/test/API/types/AbstractBase.py
+++ b/lldb/test/API/types/AbstractBase.py
@@ -22,6 +22,8 @@ class GenericTester(TestBase):
# printf() stmts (see basic_type.cpp).
pattern = re.compile(r" (\*?a[^=]*) = '([^=]*)'$")
+ SHARED_BUILD_TESTCASE = False
+
# Assert message.
DATA_TYPE_GROKKED = "Data type from expr parser output is parsed correctly"
>From e115238c9a0ce9f505effbad6264ae5fcb07aaf8 Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Tue, 17 Feb 2026 13:41:06 -0800
Subject: [PATCH 5/8] Remove added import
---
lldb/test/API/commands/process/launch/TestProcessLaunch.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/lldb/test/API/commands/process/launch/TestProcessLaunch.py b/lldb/test/API/commands/process/launch/TestProcessLaunch.py
index 90d95d6bd5c75..28de5bc0623d0 100644
--- a/lldb/test/API/commands/process/launch/TestProcessLaunch.py
+++ b/lldb/test/API/commands/process/launch/TestProcessLaunch.py
@@ -9,7 +9,6 @@
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
from pathlib import Path
-import re
class ProcessLaunchTestCase(TestBase):
>From 644cec7d8d7c0e8bcdc56e867a3cbc63ac39a3f7 Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Tue, 17 Feb 2026 13:49:11 -0800
Subject: [PATCH 6/8] Remove more inadvertent imports
---
.../TestAutoInstallMainExecutable.py | 2 --
lldb/test/API/commands/trace/TestTraceStartStop.py | 1 -
lldb/test/API/functionalities/gdb_remote_client/TestPty.py | 1 -
.../API/lang/c/calling-conventions/TestCCallingConventions.py | 1 -
.../tools/lldb-server/commandline/TestGdbRemoteConnection.py | 1 -
5 files changed, 6 deletions(-)
diff --git a/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py b/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
index 3120b141c8bcd..47bbd2439434c 100644
--- a/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
+++ b/lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
@@ -9,8 +9,6 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
-import lldb
-import os
class TestAutoInstallMainExecutable(TestBase):
diff --git a/lldb/test/API/commands/trace/TestTraceStartStop.py b/lldb/test/API/commands/trace/TestTraceStartStop.py
index d88d80bac93a0..8f882eb5d974b 100644
--- a/lldb/test/API/commands/trace/TestTraceStartStop.py
+++ b/lldb/test/API/commands/trace/TestTraceStartStop.py
@@ -3,7 +3,6 @@
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
from lldbsuite.test.decorators import *
-import os
@skipIfNoIntelPT
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestPty.py b/lldb/test/API/functionalities/gdb_remote_client/TestPty.py
index f8d56b170fc02..47f687806dbab 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestPty.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestPty.py
@@ -3,7 +3,6 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.gdbclientutils import *
from lldbsuite.test.lldbgdbclient import GDBRemoteTestBase
-import os
@skipIf(hostoslist=["windows"])
diff --git a/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py b/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
index dff3bc97f9998..a8cb87063f50a 100644
--- a/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
+++ b/lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
@@ -3,7 +3,6 @@
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
from lldbsuite.test_event.build_exception import BuildError
-import re
class TestCase(TestBase):
diff --git a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
index 7e37de53494b3..12946d9d42d11 100644
--- a/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
+++ b/lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
@@ -6,7 +6,6 @@
from lldbgdbserverutils import Server
import lldbsuite.test.lldbplatformutil
from lldbgdbserverutils import Pipe
-import lldb
class TestGdbRemoteConnection(gdbremote_testcase.GdbRemoteTestCaseBase):
>From 2583fd2ceda0abfca3d454df1477c0c711af6d03 Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Tue, 17 Feb 2026 13:51:09 -0800
Subject: [PATCH 7/8] Another round of inadvertent import removal
---
lldb/test/API/macosx/simulator/TestSimulatorPlatform.py | 1 -
lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py | 1 -
2 files changed, 2 deletions(-)
diff --git a/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py b/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
index 2773a2cf072e4..b6f6368f6da80 100644
--- a/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
+++ b/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
@@ -3,7 +3,6 @@
from lldbsuite.test.decorators import *
import lldbsuite.test.lldbutil as lldbutil
import json
-import subprocess
class TestSimulatorPlatformLaunching(TestBase):
diff --git a/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py b/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
index 34284cb23b269..66a3cba83ff45 100644
--- a/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
+++ b/lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
@@ -9,7 +9,6 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil
-import shutil
class TestSkinnyCorefile(TestBase):
>From acf8b20cb8aef1445cdcd94c89b1b0c9a76366ef Mon Sep 17 00:00:00 2001
From: Dave Lee <davelee.com at gmail.com>
Date: Tue, 17 Feb 2026 14:02:32 -0800
Subject: [PATCH 8/8] Opt-out more tests based on Linux CI test failures
---
.../platform/launchgdbserver/TestPlatformLaunchGDBServer.py | 1 +
.../commands/target/dump-separate-debug-info/dwo/TestDumpDwo.py | 1 +
.../breakpoint/comp_dir_symlink/TestCompDirSymLink.py | 2 ++
.../shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py | 2 ++
lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py | 2 ++
.../unified_section_list/TestModuleUnifiedSectionList.py | 2 ++
lldb/test/API/tools/lldb-server/TestGdbRemotePlatformFile.py | 2 ++
7 files changed, 12 insertions(+)
diff --git a/lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py b/lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
index 65f0cefae96b4..e9e6845c0f549 100644
--- a/lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
+++ b/lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
@@ -9,6 +9,7 @@
class TestPlatformProcessLaunchGDBServer(TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def _launch_and_connect(self, exe):
hostname = socket.getaddrinfo("localhost", 0, proto=socket.IPPROTO_TCP)[0][4][0]
diff --git a/lldb/test/API/commands/target/dump-separate-debug-info/dwo/TestDumpDwo.py b/lldb/test/API/commands/target/dump-separate-debug-info/dwo/TestDumpDwo.py
index d819b5ed9ca87..7ac4e16e8cdcb 100644
--- a/lldb/test/API/commands/target/dump-separate-debug-info/dwo/TestDumpDwo.py
+++ b/lldb/test/API/commands/target/dump-separate-debug-info/dwo/TestDumpDwo.py
@@ -12,6 +12,7 @@
class TestDumpDWO(lldbtest.TestBase):
NO_DEBUG_INFO_TESTCASE = True
+ SHARED_BUILD_TESTCASE = False
def get_dwos_from_json_output(self):
"""Returns a dictionary of `symfile` -> {`dwo_name` -> dwo_info object}."""
diff --git a/lldb/test/API/functionalities/breakpoint/comp_dir_symlink/TestCompDirSymLink.py b/lldb/test/API/functionalities/breakpoint/comp_dir_symlink/TestCompDirSymLink.py
index ca2c7c3d1ad93..1430eb890c2e6 100644
--- a/lldb/test/API/functionalities/breakpoint/comp_dir_symlink/TestCompDirSymLink.py
+++ b/lldb/test/API/functionalities/breakpoint/comp_dir_symlink/TestCompDirSymLink.py
@@ -16,6 +16,8 @@
class CompDirSymLinkTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def setUp(self):
# Call super's setUp().
TestBase.setUp(self)
diff --git a/lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py b/lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
index 5440778572f8d..173ebc769b922 100644
--- a/lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
+++ b/lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
@@ -9,6 +9,8 @@
class SharedLibStrippedTestCase(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@expectedFailureAll(oslist=["windows"])
# Sometimes fails with:
# error: Couldn't allocate space for materialized struct: Couldn't malloc: address space is full
diff --git a/lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py b/lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py
index f72701b5eee07..9f41bbeee0636 100644
--- a/lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py
+++ b/lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py
@@ -9,6 +9,8 @@
class UniqueTypesTestCase3(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
def do_test(self, debug_flags):
"""Test that we display the correct template instantiation."""
self.build(dictionary=debug_flags)
diff --git a/lldb/test/API/python_api/unified_section_list/TestModuleUnifiedSectionList.py b/lldb/test/API/python_api/unified_section_list/TestModuleUnifiedSectionList.py
index 93b23d0ba81cb..a559307e59930 100644
--- a/lldb/test/API/python_api/unified_section_list/TestModuleUnifiedSectionList.py
+++ b/lldb/test/API/python_api/unified_section_list/TestModuleUnifiedSectionList.py
@@ -13,6 +13,8 @@
class ModuleUnifiedSectionList(TestBase):
+ SHARED_BUILD_TESTCASE = False
+
@skipUnlessPlatform(["linux", "freebsd", "netbsd"])
def test_unified_section_list(self):
self.build()
diff --git a/lldb/test/API/tools/lldb-server/TestGdbRemotePlatformFile.py b/lldb/test/API/tools/lldb-server/TestGdbRemotePlatformFile.py
index 76b0b204123dd..fd08abc72b4bc 100644
--- a/lldb/test/API/tools/lldb-server/TestGdbRemotePlatformFile.py
+++ b/lldb/test/API/tools/lldb-server/TestGdbRemotePlatformFile.py
@@ -43,6 +43,8 @@ def uint32_trunc(x):
class TestGdbRemotePlatformFile(GdbRemoteTestCaseBase):
+ BUILD_SHARED_TESTCASE = False
+
@skipIfWindows
@add_test_categories(["llgs"])
def test_platform_file_rdonly(self):
More information about the lldb-commits
mailing list