$OpenBSD$ Index: threads.c --- threads.c.orig +++ threads.c @@ -49,13 +49,15 @@ #include <pthread.h> #include <sched.h> -#elif defined(TARGET_OS_SOLARIS) +#elif defined(TARGET_OS_SOLARIS) || defined(TARGET_OS_OPENBSD) #include <string.h> #include <unistd.h> #include <errno.h> #include <sys/types.h> +#if defined(TARGET_OS_SOLARIS) #include <sys/processor.h> #include <sys/procset.h> +#endif #elif defined(TARGET_OS_MACOSX) @@ -116,7 +118,7 @@ uint32_t thread_count_native(struct cpuid_state_t *sta return 1; return count; -#elif defined(TARGET_OS_SOLARIS) +#elif defined(TARGET_OS_SOLARIS) || defined(TARGET_OS_OPENBSD) long count; if ((count = sysconf(_SC_NPROCESSORS_ONLN)) == -1) @@ -289,7 +291,8 @@ int thread_bind_native(__unused_variable struct cpuid_ return ret == 0 ? 0 : 1; #else -#error "thread_bind_native() not defined for this platform" +#warning "thread_bind_native() not defined for this platform" + return 0; #endif }