Gnulib moved the prototypes of 'sig2str' and 'str2sig' from
sig2str.h to signal.h, but MinGW does not use the Gnulib
signal.h header, and doesn't have these functions in its
own signal.h.
* lib/sig2str.h (SIG2STR_MAX, sig2str, str2sig): Define and
prototype if not already defined.
(cherry picked from commit
b737c6125d69497ad5d2a29d4b5a2b17698992e5)
#include <signal.h>
+/* Maximum size of a signal name returned by sig2str(), including the
+ terminating NUL byte. */
+#ifndef SIG2STR_MAX
+/* The longest one: "RTMAX", then "+" or "-", then up to 10 digits, then NUL.
+ Add + 2 as a reserve for the future. */
+# define SIG2STR_MAX (5 + 1 + 10 + 1 + 2)
+#endif
+
+#ifndef HAVE_SIG2STR
+int sig2str (int, char *);
+#endif
+#ifndef HAVE_STR2SIG
+int str2sig (char const *, int *);
+#endif
+
/* An upper bound on signal numbers allowed by the system. */
#if defined _sys_nsig