aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/hipe/hipe_x86_signal.c
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2010-09-07 10:27:14 +0200
committerBjörn Gustavsson <[email protected]>2010-09-07 10:27:14 +0200
commit03997d5a1c166e8470dd9c888a5dba121144986a (patch)
tree76ef98d2fc2cf0588392b036be18d984072207c1 /erts/emulator/hipe/hipe_x86_signal.c
parent4763e0b7b8c4859d9e56f1fc9aa1426eebc8f65d (diff)
parent88a04a19d751c4c6712fc9b079e16d3976a4d731 (diff)
downloadotp-03997d5a1c166e8470dd9c888a5dba121144986a.tar.gz
otp-03997d5a1c166e8470dd9c888a5dba121144986a.tar.bz2
otp-03997d5a1c166e8470dd9c888a5dba121144986a.zip
Merge branch 'mk/net-dragonfly-bsd-patches' into dev
* mk/net-dragonfly-bsd-patches: Remove unused variables Use proper install method Add support for DragonFly BSD Add support for NetBSD
Diffstat (limited to 'erts/emulator/hipe/hipe_x86_signal.c')
-rw-r--r--erts/emulator/hipe/hipe_x86_signal.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/erts/emulator/hipe/hipe_x86_signal.c b/erts/emulator/hipe/hipe_x86_signal.c
index a4fff4ce31..0c61e7bf96 100644
--- a/erts/emulator/hipe/hipe_x86_signal.c
+++ b/erts/emulator/hipe/hipe_x86_signal.c
@@ -195,7 +195,7 @@ static void do_init(void)
#define INIT() do { if (!init_done()) do_init(); } while (0)
#endif /* __DARWIN__ */
-#if !defined(__GLIBC__) && !defined(__DARWIN__)
+#if !defined(__GLIBC__) && !defined(__DARWIN__) && !defined(__NetBSD__)
/*
* Assume Solaris/x86 2.8.
* There is a number of sigaction() procedures in libc:
@@ -231,6 +231,7 @@ static void do_init(void)
#define INIT() do { if (!init_done()) do_init(); } while (0)
#endif /* not glibc or darwin */
+#if !defined(__NetBSD__)
/*
* This is our wrapper for sigaction(). sigaction() can be called before
* hipe_signal_init() has been executed, especially when threads support
@@ -253,7 +254,7 @@ static int my_sigaction(int signum, const struct sigaction *act, struct sigactio
}
return __next_sigaction(signum, act, oldact);
}
-
+#endif
/*
* This overrides the C library's core sigaction() procedure, catching
* all its internal calls.
@@ -268,7 +269,7 @@ int __SIGACTION(int signum, const struct sigaction *act, struct sigaction *oldac
/*
* This catches the application's own sigaction() calls.
*/
-#if !defined(__DARWIN__)
+#if !defined(__DARWIN__) && !defined(__NetBSD__)
int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact)
{
return my_sigaction(signum, act, oldact);
@@ -326,7 +327,9 @@ void hipe_signal_init(void)
struct sigaction sa;
int i;
+#ifndef __NetBSD__
INIT();
+#endif
hipe_sigaltstack_init();