diff options
author | Andreas Schwab <schwab@suse.de> | 1998-02-20 13:01:10 +0000 |
---|---|---|
committer | Andreas Schwab <schwab@suse.de> | 1998-02-20 13:01:10 +0000 |
commit | 47b682b73cd0086deff9a7e67d60d9b75d01ca82 (patch) | |
tree | a424d6e99dd4769ddd264a16d4fc913412ef867d /src/syssignal.h | |
parent | c639b0e327da46ab5328ef644576f8a1f987410e (diff) | |
download | emacs-47b682b73cd0086deff9a7e67d60d9b75d01ca82.tar.gz |
(sigmask) [POSIX_SIGNALS]: Always define our own
version that returns a sigset_t.
(sigpause) [POSIX_SIGNALS]: Unconditionally define in terms of
sigsuspend. Don't redefine SIGEMPTYMASK.
(sys_sigpause): Don't declare.
(temp_mask): Don't declare.
Diffstat (limited to 'src/syssignal.h')
-rw-r--r-- | src/syssignal.h | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/src/syssignal.h b/src/syssignal.h index 23a15c6c1d2..08b989c8f13 100644 --- a/src/syssignal.h +++ b/src/syssignal.h @@ -30,11 +30,13 @@ Boston, MA 02111-1307, USA. */ #define SIGEMPTYMASK (empty_mask) #define SIGFULLMASK (full_mask) -extern sigset_t empty_mask, full_mask, temp_mask; +extern sigset_t empty_mask, full_mask; /* POSIX pretty much destroys any possibility of writing sigmask as a - macro in standard C. */ -#ifndef sigmask + macro in standard C. We always define our own version because the + predefined macro in Glibc 2.1 is only provided for compatility for old + programs that use int as signal mask type. */ +#undef sigmask #ifdef __GNUC__ #define sigmask(SIG) \ ({ \ @@ -49,15 +51,8 @@ extern sigset_t sys_sigmask (); #endif /* ! defined (__GNUC__) */ #endif -#ifndef sigpause -#define sigpause(SIG) sys_sigpause (SIG) -#else -/* If sigpause is predefined, with POSIX_SIGNALS, - let's assume it needs this kind of argument. - This is true for Glibc 2.1. */ -#undef SIGEMPTYMASK -#define SIGEMPTYMASK sigmask (0) -#endif +#undef sigpause +#define sigpause(MASK) sigsuspend (&(MASK)) #define sigblock(SIG) sys_sigblock (SIG) #define sigunblock(SIG) sys_sigunblock (SIG) @@ -74,7 +69,6 @@ extern sigset_t sys_sigmask (); typedef RETSIGTYPE (*signal_handler_t) (/*int*/); signal_handler_t sys_signal (/*int signal_number, signal_handler_t action*/); -int sys_sigpause (/*sigset_t new_mask*/); sigset_t sys_sigblock (/*sigset_t new_mask*/); sigset_t sys_sigunblock (/*sigset_t new_mask*/); sigset_t sys_sigsetmask (/*sigset_t new_mask*/); |