[3.9] bpo-41498: Fix build on platforms without sigset_t (GH-29770) (… · python/cpython@71b4147
@@ -68,6 +68,8 @@ module signal
6868[clinic start generated code]*/
6969/*[clinic end generated code: output=da39a3ee5e6b4b0d input=b0301a3bde5fe9d3]*/
707071+#ifdef HAVE_SETSIG_T
72+7173/*[python input]
72747375class sigset_t_converter(CConverter):
@@ -76,6 +78,7 @@ class sigset_t_converter(CConverter):
76787779[python start generated code]*/
7880/*[python end generated code: output=da39a3ee5e6b4b0d input=b5689d14466b6823]*/
81+#endif
79828083/*
8184 NOTES ON THE INTERACTION BETWEEN SIGNALS AND THREADS
@@ -880,6 +883,7 @@ signal_getitimer_impl(PyObject *module, int which)
880883881884#endif
882885886+#ifdef HAVE_SIGSET_T
883887#if defined(PYPTHREAD_SIGMASK) || defined(HAVE_SIGPENDING)
884888static PyObject*
885889sigset_to_set(sigset_t mask)
@@ -1011,9 +1015,9 @@ signal_sigwait_impl(PyObject *module, sigset_t sigset)
10111015}
1012101610131017#endif /* #ifdef HAVE_SIGWAIT */
1018+#endif /* #ifdef HAVE_SIGSET_T */
101410191015-1016-#if defined(HAVE_SIGFILLSET) || defined(MS_WINDOWS)
1020+#if (defined(HAVE_SIGFILLSET) && defined(HAVE_SIGSET_T)) || defined(MS_WINDOWS)
1017102110181022/*[clinic input]
10191023signal.valid_signals
@@ -1051,7 +1055,8 @@ signal_valid_signals_impl(PyObject *module)
10511055#endif
10521056}
105310571054-#endif /* #if defined(HAVE_SIGFILLSET) || defined(MS_WINDOWS) */
1058+#endif /* #if (defined(HAVE_SIGFILLSET) && defined(HAVE_SIGSET_T)) || defined(MS_WINDOWS) */
1059+105510601056106110571062#if defined(HAVE_SIGWAITINFO) || defined(HAVE_SIGTIMEDWAIT)
@@ -1117,6 +1122,7 @@ fill_siginfo(siginfo_t *si)
11171122}
11181123#endif
111911241125+#ifdef HAVE_SIGSET_T
11201126#ifdef HAVE_SIGWAITINFO
1121112711221128/*[clinic input]
@@ -1219,6 +1225,7 @@ signal_sigtimedwait_impl(PyObject *module, sigset_t sigset,
12191225}
1220122612211227#endif /* #ifdef HAVE_SIGTIMEDWAIT */
1228+#endif /* #ifdef HAVE_SIGSET_T */
122212291223123012241231#if defined(HAVE_PTHREAD_KILL)