X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FSignals.h;h=32c7fbdcc71048ce3046fe2db3bdc5aab227ff32;hb=b43be28258a3d49bde40095b210047e99742f8a5;hp=09ecec0814c8b18b4076e0439d5fcfa781724c8d;hpb=bb01a96bea6bd7808332d43a5bed78d1aff4a3fd;p=ghc-hetmet.git diff --git a/ghc/rts/Signals.h b/ghc/rts/Signals.h index 09ecec0..32c7fbd 100644 --- a/ghc/rts/Signals.h +++ b/ghc/rts/Signals.h @@ -6,20 +6,27 @@ * * ---------------------------------------------------------------------------*/ -#if !defined(PAR) && !defined(mingw32_TARGET_OS) +#if !defined(PAR) && !defined(mingw32_HOST_OS) #define RTS_USER_SIGNALS 1 -extern StgPtr pending_handler_buf[]; -extern StgPtr *next_pending_handler; - -#define signals_pending() (next_pending_handler != pending_handler_buf) - extern void initUserSignals(void); extern void blockUserSignals(void); extern void unblockUserSignals(void); extern rtsBool anyUserHandlers(void); -extern void awaitUserSignals(void); + +#if !defined(RTS_SUPPORTS_THREADS) + +extern StgPtr pending_handler_buf[]; +extern StgPtr *next_pending_handler; +#define signals_pending() (next_pending_handler != pending_handler_buf) +extern void awaitUserSignals(void); + +#else + +extern void startSignalHandler(int sig); + +#endif /* sig_install declared in PrimOps.h */ @@ -27,10 +34,7 @@ extern void startSignalHandlers(void); extern void markSignalHandlers (evac_fn evac); extern void initDefaultHandlers(void); -extern void handleSignalsInThisThread(void); -extern void handleSignalsInPrevThread(void); - -#elif defined(mingw32_TARGET_OS) +#elif defined(mingw32_HOST_OS) #define RTS_USER_SIGNALS 1 #include "win32/ConsoleHandler.h"