]> git.lizzy.rs Git - minetest.git/blobdiff - src/jthread/pthread/jevent.cpp
OS X compatibility fixes
[minetest.git] / src / jthread / pthread / jevent.cpp
index 26a6fb05cfbc3a2187d0be922d1827cdd18d01fc..6a45a37d27f3264f9c4e506c383171c984d0fbaf 100644 (file)
 
 #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);