-#if HAVE_DISPATCH_DISPATCH_H
-#include <dispatch/dispatch.h>
-#define sem_t dispatch_semaphore_t
-#define sem_init(psem,x,val) *psem = dispatch_semaphore_create(val)
-#define sem_post(psem) dispatch_semaphore_signal(*psem)
-#define sem_wait(psem) dispatch_semaphore_wait(*psem, DISPATCH_TIME_FOREVER)
-#define sem_timedwait(psem, val) dispatch_semaphore_wait(*psem, dispatch_walltime(val, 0))
-#define sem_destroy(psem) dispatch_release(*psem)
-#endif
-