From c410e9182d322a8c095ef94fbadf4d8f541e6b98 Mon Sep 17 00:00:00 2001 From: Martin Doege Date: Thu, 26 Jun 2014 20:30:22 +0200 Subject: OS X compatibility fixes --- src/jthread/pthread/jevent.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/jthread/pthread/jevent.cpp') diff --git a/src/jthread/pthread/jevent.cpp b/src/jthread/pthread/jevent.cpp index 26a6fb05c..6a45a37d2 100644 --- a/src/jthread/pthread/jevent.cpp +++ b/src/jthread/pthread/jevent.cpp @@ -29,6 +29,19 @@ #define UNUSED(expr) do { (void)(expr); } while (0) +#ifdef __MACH__ +#undef sem_t +#define sem_t semaphore_t +#undef sem_init +#define sem_init(s, p, c) semaphore_create(mach_task_self(), (s), 0, (c)) +#undef sem_wait +#define sem_wait(s) semaphore_wait(*(s)) +#undef sem_post +#define sem_post(s) semaphore_signal(*(s)) +#undef sem_destroy +#define sem_destroy(s) semaphore_destroy(mach_task_self(), *(s)) +#endif + Event::Event() { int sem_init_retval = sem_init(&sem, 0, 0); assert(sem_init_retval == 0); -- cgit v1.2.3