Add :application-type parameter for save-lisp-and-die on Windows.
[sbcl.git] / src / runtime / darwin-os.h
index bc39a33..9d0e000 100644 (file)
@@ -5,6 +5,8 @@
 
 #include <mach/mach_init.h>
 #include <mach/task.h>
+#include <AvailabilityMacros.h>
+#include <sys/cdefs.h>
 
 /* 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 <sys/ucontext.h>
 #include <sys/_types.h>
+
 #if __DARWIN_UNIX03
 typedef struct __darwin_ucontext os_context_t;
 #else
@@ -24,14 +27,23 @@ typedef struct ucontext os_context_t;
 
 
 #else
-#include <ucontext.h>
 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 <mach/semaphore.h>
+typedef semaphore_t os_sem_t;
+#endif
 
 #endif /* _DARWIN_OS_H */