Mercurial > emacs
comparison src/syssignal.h @ 109636:2d3e59e887ac
Cleanup syssignal.h.
* src/syssignal.h (sighold, sigrelse, RETSIGTYPE): Remove, unused.
(main_thread): Move down to remove #ifdef.
(SIGMASKTYPE, SIGEMPTYMASK, SIGFULLMASK, sigmask, sigunblock):
Remove conditional definition following unconditional ones.
author | Dan Nicolaescu <dann@ics.uci.edu> |
---|---|
date | Thu, 05 Aug 2010 16:22:18 -0700 |
parents | 68ca98ae70fb |
children | e04aa89bb748 |
comparison
equal
deleted
inserted
replaced
109635:fc7a8c411aa3 | 109636:2d3e59e887ac |
---|---|
22 #if defined (HAVE_GTK_AND_PTHREAD) || defined (HAVE_NS) | 22 #if defined (HAVE_GTK_AND_PTHREAD) || defined (HAVE_NS) |
23 #include <pthread.h> | 23 #include <pthread.h> |
24 /* If defined, asynchronous signals delivered to a non-main thread are | 24 /* If defined, asynchronous signals delivered to a non-main thread are |
25 forwarded to the main thread. */ | 25 forwarded to the main thread. */ |
26 #define FORWARD_SIGNAL_TO_MAIN_THREAD | 26 #define FORWARD_SIGNAL_TO_MAIN_THREAD |
27 #endif | |
28 | |
29 #ifdef FORWARD_SIGNAL_TO_MAIN_THREAD | |
30 extern pthread_t main_thread; | |
31 #endif | 27 #endif |
32 | 28 |
33 /* Don't #include <signal.h>. That header should always be #included | 29 /* Don't #include <signal.h>. That header should always be #included |
34 before "config.h", because some configuration files (like s/hpux.h) | 30 before "config.h", because some configuration files (like s/hpux.h) |
35 indicate that SIGIO doesn't work by #undef-ing SIGIO. If this file | 31 indicate that SIGIO doesn't work by #undef-ing SIGIO. If this file |
67 #define sigblock(SIG) sys_sigblock (SIG) | 63 #define sigblock(SIG) sys_sigblock (SIG) |
68 #define sigunblock(SIG) sys_sigunblock (SIG) | 64 #define sigunblock(SIG) sys_sigunblock (SIG) |
69 #ifndef sigsetmask | 65 #ifndef sigsetmask |
70 #define sigsetmask(SIG) sys_sigsetmask (SIG) | 66 #define sigsetmask(SIG) sys_sigsetmask (SIG) |
71 #endif | 67 #endif |
72 #define sighold(SIG) ONLY_USED_IN_BSD_4_1 | |
73 #define sigrelse(SIG) ONLY_USED_IN_BSD_4_1 | |
74 #undef signal | 68 #undef signal |
75 #define signal(SIG,ACT) sys_signal(SIG,ACT) | 69 #define signal(SIG,ACT) sys_signal(SIG,ACT) |
76 | |
77 /* Whether this is what all systems want or not, this is what | |
78 appears to be assumed in the source, for example data.c:arith_error. */ | |
79 typedef RETSIGTYPE (*signal_handler_t) (int); | |
80 | 70 |
81 signal_handler_t sys_signal (int signal_number, signal_handler_t action); | 71 signal_handler_t sys_signal (int signal_number, signal_handler_t action); |
82 sigset_t sys_sigblock (sigset_t new_mask); | 72 sigset_t sys_sigblock (sigset_t new_mask); |
83 sigset_t sys_sigunblock (sigset_t new_mask); | 73 sigset_t sys_sigunblock (sigset_t new_mask); |
84 sigset_t sys_sigsetmask (sigset_t new_mask); | 74 sigset_t sys_sigsetmask (sigset_t new_mask); |
85 | 75 |
86 #define sys_sigdel(MASK,SIG) sigdelset (&MASK,SIG) | 76 #define sys_sigdel(MASK,SIG) sigdelset (&MASK,SIG) |
87 | |
88 #ifndef SIGMASKTYPE | |
89 #define SIGMASKTYPE int | |
90 #endif | |
91 | |
92 #ifndef SIGEMPTYMASK | |
93 #define SIGEMPTYMASK (0) | |
94 #endif | |
95 | |
96 #ifndef SIGFULLMASK | |
97 #define SIGFULLMASK (0xffffffff) | |
98 #endif | |
99 | |
100 #ifndef sigmask | |
101 #define sigmask(no) (1L << ((no) - 1)) | |
102 #endif | |
103 | |
104 #ifndef sigunblock | |
105 #define sigunblock(SIG) \ | |
106 { SIGMASKTYPE omask = sigblock (SIGFULLMASK); sigsetmask (omask & ~SIG); } | |
107 #endif | |
108 | 77 |
109 #define sigfree() sigsetmask (SIGEMPTYMASK) | 78 #define sigfree() sigsetmask (SIGEMPTYMASK) |
110 | 79 |
111 #if defined (SIGINFO) && defined (BROKEN_SIGINFO) | 80 #if defined (SIGINFO) && defined (BROKEN_SIGINFO) |
112 #undef SIGINFO | 81 #undef SIGINFO |
162 /* strsignal is in sysdep.c */ | 131 /* strsignal is in sysdep.c */ |
163 char *strsignal (int); | 132 char *strsignal (int); |
164 #endif | 133 #endif |
165 | 134 |
166 #ifdef FORWARD_SIGNAL_TO_MAIN_THREAD | 135 #ifdef FORWARD_SIGNAL_TO_MAIN_THREAD |
136 extern pthread_t main_thread; | |
167 #define SIGNAL_THREAD_CHECK(signo) \ | 137 #define SIGNAL_THREAD_CHECK(signo) \ |
168 do { \ | 138 do { \ |
169 if (!pthread_equal (pthread_self (), main_thread)) \ | 139 if (!pthread_equal (pthread_self (), main_thread)) \ |
170 { \ | 140 { \ |
171 /* POSIX says any thread can receive the signal. On GNU/Linux \ | 141 /* POSIX says any thread can receive the signal. On GNU/Linux \ |