$OpenBSD: patch-third_party_webrtc_rtc_base_platform_thread_cc,v 1.2 2017/12/04 13:55:42 robert Exp $

Index: third_party/webrtc/rtc_base/platform_thread.cc
--- third_party/webrtc/rtc_base/platform_thread.cc.orig
+++ third_party/webrtc/rtc_base/platform_thread.cc
@@ -16,7 +16,9 @@
 #include "webrtc/rtc_base/trace_event.h"
 
 #if defined(WEBRTC_LINUX)
+#if !defined(__OpenBSD__)
 #include <sys/prctl.h>
+#endif
 #include <sys/syscall.h>
 #endif
 
@@ -31,8 +33,10 @@ PlatformThreadId CurrentThreadId() {
   ret = pthread_mach_thread_np(pthread_self());
 #elif defined(WEBRTC_ANDROID)
   ret = gettid();
-#elif defined(WEBRTC_LINUX)
+#elif defined(WEBRTC_LINUX) && !defined(__OpenBSD__)
   ret =  syscall(__NR_gettid);
+#elif defined(__OpenBSD__)
+  ret = reinterpret_cast<uint64_t>(pthread_self());
 #else
   // Default implementation for nacl and solaris.
   ret = reinterpret_cast<pid_t>(pthread_self());
@@ -59,6 +63,7 @@ bool IsThreadRefEqual(const PlatformThreadRef& a, cons
 }
 
 void SetCurrentThreadName(const char* name) {
+#if !defined(__OpenBSD__)
 #if defined(WEBRTC_WIN)
   struct {
     DWORD dwType;
@@ -76,6 +81,7 @@ void SetCurrentThreadName(const char* name) {
   prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(name));
 #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS)
   pthread_setname_np(name);
+#endif
 #endif
 }
 
