On 2024-09-04 22:43, Eli Zaretskii wrote: > Gnulib moved the prototypes of sig2str and str2sig from sig2str.h to > Gnulib's signal.h, evidently assuming that a build which uses the > Gnulib sig2str will also use the Gnulib signal.h header, but that > assumption is false for the MinGW build of Emacs, which omits > lib/signal.h (because it clashes with some w32 code in Emacs). > > I fixed that temporarily by modifying lib/sig2str.h to include the > missing stuff for MinGW, but this is really a Gnulib issue, and should > be fixed in Gnulib, IMO. The change to Gnulib was to align with POSIX.1-2024, which declares sig2str and str2sig in ; see: https://pubs.opengroup.org/onlinepubs/9799919799/functions/sig2str.html We don't want sig2str callers to depart from the POSIX API, any more than we'd want to require (say) fdopen callers to include a Gnulib-specific fdopen.h rather than including . Instead, how about adjusting Emacs's MinGW shims to supply the missing declarations? Something like the attached patch, say. (I don't use MinGW so can't easily test this.)