mirror of
https://github.com/python/cpython.git
synced 2024-11-28 08:20:55 +01:00
36 lines
937 B
C
36 lines
937 B
C
|
// Define Py_NSIG constant for signal handling.
|
||
|
|
||
|
#ifndef Py_INTERNAL_SIGNAL_H
|
||
|
#define Py_INTERNAL_SIGNAL_H
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#ifndef Py_BUILD_CORE
|
||
|
# error "this header requires Py_BUILD_CORE define"
|
||
|
#endif
|
||
|
|
||
|
#include <signal.h> // NSIG
|
||
|
|
||
|
#ifdef _SIG_MAXSIG
|
||
|
// gh-91145: On FreeBSD, <signal.h> defines NSIG as 32: it doesn't include
|
||
|
// realtime signals: [SIGRTMIN,SIGRTMAX]. Use _SIG_MAXSIG instead. For
|
||
|
// example on x86-64 FreeBSD 13, SIGRTMAX is 126 and _SIG_MAXSIG is 128.
|
||
|
# define Py_NSIG _SIG_MAXSIG
|
||
|
#elif defined(NSIG)
|
||
|
# define Py_NSIG NSIG
|
||
|
#elif defined(_NSIG)
|
||
|
# define Py_NSIG _NSIG // BSD/SysV
|
||
|
#elif defined(_SIGMAX)
|
||
|
# define Py_NSIG (_SIGMAX + 1) // QNX
|
||
|
#elif defined(SIGMAX)
|
||
|
# define Py_NSIG (SIGMAX + 1) // djgpp
|
||
|
#else
|
||
|
# define Py_NSIG 64 // Use a reasonable default value
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
#endif // !Py_INTERNAL_SIGNAL_H
|