$OpenBSD$

Index: runtime/druntime/src/core/sys/posix/sched.d
--- runtime/druntime/src/core/sys/posix/sched.d.orig
+++ runtime/druntime/src/core/sys/posix/sched.d
@@ -86,6 +86,17 @@ else version( FreeBSD )
     enum SCHED_OTHER    = 2;
     enum SCHED_RR       = 3;
 }
+else version (OpenBSD)
+{
+    struct sched_param
+    {
+        int sched_priority;
+    }
+
+    enum SCHED_FIFO     = 1;
+    enum SCHED_OTHER    = 2;
+    enum SCHED_RR       = 3;
+}
 else version( DragonFlyBSD )
 {
     struct sched_param
@@ -155,6 +166,10 @@ else version( FreeBSD )
 {
     int sched_yield();
 }
+else version (OpenBSD)
+{
+    int sched_yield();
+}
 else version( DragonFlyBSD )
 {
     int sched_yield();
@@ -194,6 +209,12 @@ else version( OSX )
     //int sched_rr_get_interval(pid_t, timespec*); // FIXME: unavailable?
 }
 else version( FreeBSD )
+{
+    int sched_get_priority_min(int);
+    int sched_get_priority_max(int);
+    int sched_rr_get_interval(pid_t, timespec*);
+}
+else version (OpenBSD)
 {
     int sched_get_priority_min(int);
     int sched_get_priority_max(int);
