[project @ 2005-01-28 12:55:17 by simonmar]
[ghc-hetmet.git] / ghc / rts / Signals.h
index 4ea7523..ffcac55 100644 (file)
@@ -1,5 +1,4 @@
 /* -----------------------------------------------------------------------------
- * $Id: Signals.h,v 1.7 2002/03/12 13:57:14 simonmar Exp $
  *
  * (c) The GHC Team, 1998-1999
  *
@@ -7,7 +6,8 @@
  *
  * ---------------------------------------------------------------------------*/
 
-#ifndef PAR
+#if !defined(PAR) && !defined(mingw32_HOST_OS)
+#define RTS_USER_SIGNALS 1
 
 extern StgPtr pending_handler_buf[];
 extern StgPtr *next_pending_handler;
@@ -24,10 +24,18 @@ extern void    awaitUserSignals(void);
 /* sig_install declared in PrimOps.h */
 
 extern void startSignalHandlers(void);
+extern void markSignalHandlers (evac_fn evac);
 extern void initDefaultHandlers(void);
 
-#else
+extern void handleSignalsInThisThread(void);
+extern void handleSignalsInPrevThread(void);
 
+#elif defined(mingw32_HOST_OS)
+#define RTS_USER_SIGNALS 1
+#include "win32/ConsoleHandler.h"
+
+#else /* PAR */
 #define signals_pending() (rtsFalse)
+#define handleSignalsInThisThread() /* nothing */
 
 #endif /* PAR */