X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fdarwin-os.h;h=9d0e000b2c47f0236bb450fb3ead58bbe69979a4;hb=dd54f9e004a0a83d1328e94648f48dcc27e0be5b;hp=bc39a33a00d9c69552068dae9092bd471298388f;hpb=127fd3d2fb843c6bb7ad0763e143d81877e760e8;p=sbcl.git diff --git a/src/runtime/darwin-os.h b/src/runtime/darwin-os.h index bc39a33..9d0e000 100644 --- a/src/runtime/darwin-os.h +++ b/src/runtime/darwin-os.h @@ -5,6 +5,8 @@ #include #include +#include +#include /* man pages claim that the third argument is a sigcontext struct, but ucontext_t is defined, matches sigcontext where sensible, @@ -16,6 +18,7 @@ #if defined(LISP_FEATURE_X86) #include #include + #if __DARWIN_UNIX03 typedef struct __darwin_ucontext os_context_t; #else @@ -24,14 +27,23 @@ typedef struct ucontext os_context_t; #else -#include typedef ucontext_t os_context_t; #endif #define SIG_MEMORY_FAULT SIGBUS -#define SIG_INTERRUPT_THREAD (SIGINFO) -#define SIG_STOP_FOR_GC (SIGUSR1) -#define SIG_RESUME_FROM_GC (SIGUSR2) +#define SIG_STOP_FOR_GC (SIGUSR2) + +#ifdef LISP_FEATURE_MACH_EXCEPTION_HANDLER +extern mach_port_t current_mach_task; +#endif + +void darwin_init(void); + +#ifdef LISP_FEATURE_SB_THREAD +#define CANNOT_USE_POSIX_SEM_T +#include +typedef semaphore_t os_sem_t; +#endif #endif /* _DARWIN_OS_H */