aboutsummaryrefslogtreecommitdiff
path: root/lldb/packages/Python/lldbsuite/test
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
-rw-r--r--lldb/packages/Python/lldbsuite/test/dotest.py26
-rw-r--r--lldb/packages/Python/lldbsuite/test/lldbplatformutil.py29
2 files changed, 25 insertions, 30 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/dotest.py b/lldb/packages/Python/lldbsuite/test/dotest.py
index ce01146..2d8bf53 100644
--- a/lldb/packages/Python/lldbsuite/test/dotest.py
+++ b/lldb/packages/Python/lldbsuite/test/dotest.py
@@ -822,9 +822,9 @@ def checkObjcSupport():
configuration.skip_categories.append("objc")
def checkDebugInfoSupport():
- import lldb
+ from lldbsuite.test import lldbplatformutil
- platform = lldb.selected_platform.GetTriple().split('-')[2]
+ platform = lldbplatformutil.getPlatform()
compiler = configuration.compiler
for cat in test_categories.debug_info_categories:
if cat in configuration.categories_list:
@@ -840,14 +840,14 @@ def checkDebugServerSupport():
skip_msg = "Skipping %s tests, as they are not compatible with remote testing on this platform"
if lldbplatformutil.platformIsDarwin():
configuration.skip_categories.append("llgs")
- if lldb.remote_platform:
+ if configuration.lldb_platform_name:
# <rdar://problem/34539270>
configuration.skip_categories.append("debugserver")
if configuration.verbose:
print(skip_msg%"debugserver");
else:
configuration.skip_categories.append("debugserver")
- if lldb.remote_platform and lldbplatformutil.getPlatform() == "windows":
+ if configuration.lldb_platform_name and lldbplatformutil.getPlatform() == "windows":
configuration.skip_categories.append("llgs")
if configuration.verbose:
print(skip_msg%"lldb-server");
@@ -881,7 +881,16 @@ def run_suite():
import lldb
lldb.SBDebugger.Initialize()
+ checkLibcxxSupport()
+ checkLibstdcxxSupport()
+ checkWatchpointSupport()
+ checkDebugInfoSupport()
+ checkDebugServerSupport()
+ checkObjcSupport()
+ checkForkVForkSupport()
+
# Use host platform by default.
+ lldb.remote_platform = None
lldb.selected_platform = lldb.SBPlatform.GetHostPlatform()
# Now we can also import lldbutil
@@ -892,6 +901,7 @@ def run_suite():
(configuration.lldb_platform_name))
lldb.remote_platform = lldb.SBPlatform(
configuration.lldb_platform_name)
+ lldb.selected_platform = lldb.remote_platform
if not lldb.remote_platform.IsValid():
print(
"error: unable to create the LLDB platform named '%s'." %
@@ -938,14 +948,6 @@ def run_suite():
# Note that it's not dotest's job to clean this directory.
lldbutil.mkdir_p(configuration.test_build_dir)
- checkLibcxxSupport()
- checkLibstdcxxSupport()
- checkWatchpointSupport()
- checkDebugInfoSupport()
- checkDebugServerSupport()
- checkObjcSupport()
- checkForkVForkSupport()
-
print("Skipping the following test categories: {}".format(configuration.skip_categories))
for testdir in configuration.testdirs:
diff --git a/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py b/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
index 94b1335..6b93dcf 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
@@ -57,12 +57,7 @@ def _run_adb_command(cmd, device_id):
def target_is_android():
- if not hasattr(target_is_android, 'result'):
- triple = lldb.selected_platform.GetTriple()
- match = re.match(".*-.*-.*-android", triple)
- target_is_android.result = match is not None
- return target_is_android.result
-
+ return configuration.lldb_platform_name == "remote-android"
def android_device_api():
if not hasattr(android_device_api, 'result'):
@@ -139,18 +134,16 @@ def getPlatform():
platform = 'ios'
return platform
- # Use the triple to determine the platform if set.
- triple = lldb.selected_platform.GetTriple()
- if triple:
- platform = triple.split('-')[2]
- if platform.startswith('freebsd'):
- platform = 'freebsd'
- elif platform.startswith('netbsd'):
- platform = 'netbsd'
- return platform
-
- # It still might be an unconnected remote platform.
- return ''
+ platform = configuration.lldb_platform_name
+ if platform is None:
+ platform = "host"
+ if platform == "qemu-user":
+ platform = "host"
+ if platform == "host":
+ return getHostPlatform()
+ if platform.startswith("remote-"):
+ return platform[7:]
+ return platform
def platformIsDarwin():