summaryrefslogtreecommitdiffstats
path: root/otherlibs/unix/signals.c
diff options
context:
space:
mode:
Diffstat (limited to 'otherlibs/unix/signals.c')
-rw-r--r--otherlibs/unix/signals.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/otherlibs/unix/signals.c b/otherlibs/unix/signals.c
index e5f1130b1..6edff9042 100644
--- a/otherlibs/unix/signals.c
+++ b/otherlibs/unix/signals.c
@@ -20,6 +20,8 @@
#include <signals.h>
#include "unixsupport.h"
+#ifdef POSIX_SIGNALS
+
static void decode_sigset(value vset, sigset_t * set)
{
sigemptyset(set);
@@ -74,3 +76,16 @@ value unix_sigsuspend(value vset) /* ML */
if (sigsuspend(&set) == -1 && errno != EINTR) uerror("sigsuspend", Nothing);
return Val_unit;
}
+
+#else
+
+value unix_sigprocmask(value vaction, value vset)
+{ invalid_argument("Unix.sigprocmask not available"); }
+
+value unix_sigpending(value unit)
+{ invalid_argument("Unix.sigpending not available"); }
+
+value unix_sigsuspend(value vset)
+{ invalid_argument("Unix.sigsuspend not available"); }
+
+#endif