[PATCH] D47692: [LLDB] Unit tests basic support for OpenBSD
David CARLIER via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 3 15:24:07 PDT 2018
devnexen created this revision.
devnexen added reviewers: labath, zturner.
Herald added subscribers: llvm-commits, krytarowski.
Add OpenBSD python module in order to support unit tests.
Repository:
rL LLVM
https://reviews.llvm.org/D47692
Files:
lit/lit.cfg
packages/Python/lldbsuite/test/lldbtest.py
packages/Python/lldbsuite/test/plugins/builder_openbsd.py
Index: packages/Python/lldbsuite/test/plugins/builder_openbsd.py
===================================================================
--- /dev/null
+++ packages/Python/lldbsuite/test/plugins/builder_openbsd.py
@@ -0,0 +1,10 @@
+from builder_base import *
+
+
+def buildDsym(
+ sender=None,
+ architecture=None,
+ compiler=None,
+ dictionary=None,
+ testdir=None):
+ return False
Index: packages/Python/lldbsuite/test/lldbtest.py
===================================================================
--- packages/Python/lldbsuite/test/lldbtest.py
+++ packages/Python/lldbsuite/test/lldbtest.py
@@ -490,6 +490,8 @@
def builder_module():
if sys.platform.startswith("freebsd"):
return __import__("builder_freebsd")
+ if sys.platform.startswith("openbsd"):
+ return __import__("builder_openbsd")
if sys.platform.startswith("netbsd"):
return __import__("builder_netbsd")
if sys.platform.startswith("linux"):
@@ -1395,7 +1397,7 @@
def getstdlibFlag(self):
""" Returns the proper -stdlib flag, or empty if not required."""
- if self.platformIsDarwin() or self.getPlatform() == "freebsd":
+ if self.platformIsDarwin() or self.getPlatform() == "freebsd" or self.getPlatform() == "openbsd":
stdlibflag = "-stdlib=libc++"
else: # this includes NetBSD
stdlibflag = ""
@@ -1424,7 +1426,7 @@
'FRAMEWORK_INCLUDES': "-F%s" % self.framework_dir,
'LD_EXTRAS': "%s -Wl,-rpath,%s" % (self.dsym, self.framework_dir),
}
- elif sys.platform.rstrip('0123456789') in ('freebsd', 'linux', 'netbsd', 'darwin') or os.environ.get('LLDB_BUILD_TYPE') == 'Makefile':
+ elif sys.platform.rstrip('0123456789') in ('freebsd', 'linux', 'netbsd', 'openbsd', 'darwin') or os.environ.get('LLDB_BUILD_TYPE') == 'Makefile':
d = {
'CXX_SOURCES': sources,
'EXE': exe_name,
@@ -1464,7 +1466,7 @@
'FRAMEWORK_INCLUDES': "-F%s" % self.framework_dir,
'LD_EXTRAS': "%s -Wl,-rpath,%s -dynamiclib" % (self.dsym, self.framework_dir),
}
- elif sys.platform.rstrip('0123456789') in ('freebsd', 'linux', 'netbsd', 'darwin') or os.environ.get('LLDB_BUILD_TYPE') == 'Makefile':
+ elif sys.platform.rstrip('0123456789') in ('freebsd', 'linux', 'netbsd', 'openbsd', 'darwin') or os.environ.get('LLDB_BUILD_TYPE') == 'Makefile':
d = {
'DYLIB_CXX_SOURCES': sources,
'DYLIB_NAME': lib_name,
@@ -1672,6 +1674,8 @@
cflags += "c++11"
if self.platformIsDarwin() or self.getPlatform() == "freebsd":
cflags += " -stdlib=libc++"
+ elif self.getPlatform() == "openbsd":
+ cflags += " -stdlib=libc++"
elif self.getPlatform() == "netbsd":
cflags += " -stdlib=libstdc++"
elif "clang" in self.getCompiler():
@@ -1706,7 +1710,7 @@
return lib_dir
def getLibcPlusPlusLibs(self):
- if self.getPlatform() in ('freebsd', 'linux', 'netbsd'):
+ if self.getPlatform() in ('freebsd', 'linux', 'netbsd', 'openbsd'):
return ['libc++.so.1']
else:
return ['libc++.1.dylib', 'libc++abi.dylib']
Index: lit/lit.cfg
===================================================================
--- lit/lit.cfg
+++ lit/lit.cfg
@@ -78,6 +78,10 @@
config.cc += " -isysroot %s" % sdk_path
config.cxx += " -isysroot %s" % sdk_path
+if platform.system() in ['OpenBSD']:
+ config.cc += " -pthread"
+ config.cxx += " -pthread"
+
config.substitutions.append(('%cc', config.cc))
config.substitutions.append(('%cxx', config.cxx))
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47692.149656.patch
Type: text/x-patch
Size: 3778 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180603/483c7fdf/attachment.bin>
More information about the llvm-commits
mailing list