def checkObjcSupport(): from lldbsuite.test import lldbplatformutil if not lldbplatformutil.platformIsDarwin(): if configuration.verbose: print("objc tests will be skipped because of unsupported platform") configuration.skip_categories.append("objc")
def canRunLibcxxTests(): from lldbsuite.test import lldbplatformutil platform = lldbplatformutil.getPlatform() if lldbplatformutil.target_is_android( ) or lldbplatformutil.platformIsDarwin(): return True, "libc++ always present" if platform == "linux": with tempfile.NamedTemporaryFile() as f: cmd = [ configuration.compiler, "-xc++", "-stdlib=libc++", "-o", f.name, "-" ] p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True) _, stderr = p.communicate("#include <cassert>\nint main() {}") if not p.returncode: return True, "Compiling with -stdlib=libc++ works" return False, "Compiling with -stdlib=libc++ fails with the error: %s" % stderr return False, "Don't know how to build with libc++ on %s" % platform
def checkDebugServerSupport(): from lldbsuite.test import lldbplatformutil if lldbplatformutil.platformIsDarwin(): configuration.skip_categories.append("llgs") else: configuration.skip_categories.append("debugserver")
def canRunLibcxxTests(): from lldbsuite.test import lldbplatformutil platform = lldbplatformutil.getPlatform() if lldbplatformutil.target_is_android() or lldbplatformutil.platformIsDarwin(): return True, "libc++ always present" if platform == "linux": if not os.path.isdir("/usr/include/c++/v1"): return False, "Unable to find libc++ installation" return True, "Headers found, let's hope they work" return False, "Don't know how to build with libc++ on %s" % platform
def checkDebugServerSupport(): from lldbsuite.test import lldbplatformutil import lldb 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: # <rdar://problem/34539270> configuration.skip_categories.append("debugserver") print(skip_msg%"debugserver"); else: configuration.skip_categories.append("debugserver") if lldb.remote_platform and lldbplatformutil.getPlatform() == "windows": configuration.skip_categories.append("llgs") print(skip_msg%"lldb-server");