diff --git a/src/unix/haiku/mod.rs b/src/unix/haiku/mod.rs index 4d77316162de38062570fdb34a3afc4008009453..eb1203c7ffbc095ffaf829e762a45fa29f0503f9 100644 --- a/src/unix/haiku/mod.rs +++ b/src/unix/haiku/mod.rs @@ -8,6 +8,7 @@ pub type tcflag_t = ::c_uint; pub type speed_t = ::c_uint; pub type c_char = i8; pub type clock_t = i32; +pub type clockid_t = i32; pub type time_t = i32; pub type suseconds_t = i32; pub type wchar_t = i32; @@ -615,6 +616,9 @@ pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = pthread_rwlock_t { waiters: [0 as *mut _; 2], }; +pub const PTHREAD_MUTEX_DEFAULT: ::c_int = 0; +pub const PTHREAD_MUTEX_NORMAL: ::c_int = 1; +pub const PTHREAD_MUTEX_ERRORCHECK: ::c_int = 2; pub const PTHREAD_MUTEX_RECURSIVE: ::c_int = 3; pub const FIOCLEX: c_ulong = 0; // TODO: does not exist on Haiku! @@ -703,6 +707,10 @@ extern { pub fn pthread_attr_getstack(attr: *const ::pthread_attr_t, stackaddr: *mut *mut ::c_void, stacksize: *mut ::size_t) -> ::c_int; + pub fn pthread_condattr_getclock(attr: *const pthread_condattr_t, + clock_id: *mut clockid_t) -> ::c_int; + pub fn pthread_condattr_setclock(attr: *mut pthread_condattr_t, + clock_id: clockid_t) -> ::c_int; pub fn memalign(align: ::size_t, size: ::size_t) -> *mut ::c_void; pub fn setgroups(ngroups: ::size_t, ptr: *const ::gid_t) -> ::c_int;