Index: configure.ac ================================================================== --- configure.ac +++ configure.ac @@ -607,10 +607,12 @@ AC_CHECK_FUNC(sched_yield, [ AC_DEFINE(OF_HAVE_SCHED_YIELD, 1, [Whether we have sched_yield()]) ]) + + AC_CHECK_FUNCS(pthread_attr_setinheritsched) AC_CHECK_HEADERS(pthread_np.h, [], [], [#include ]) AC_CHECK_FUNCS(pthread_set_name_np pthread_setname_np, break) ;; esac Index: src/threading_pthread.m ================================================================== --- src/threading_pthread.m +++ src/threading_pthread.m @@ -104,13 +104,15 @@ maxPrio = sched_get_priority_max(policy); param.sched_priority = (float)minPrio + attr->priority * (maxPrio - minPrio); +#ifdef HAVE_PTHREAD_ATTR_SETINHERITSCHED if (pthread_attr_setinheritsched(&pattr, PTHREAD_EXPLICIT_SCHED) != 0) return false; +#endif if (pthread_attr_setschedparam(&pattr, ¶m) != 0) return false; if (attr->stackSize > 0) {