emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MinGW build on master broken by Gnulib update


From: Paul Eggert
Subject: Re: MinGW build on master broken by Gnulib update
Date: Thu, 5 Sep 2024 09:28:15 -0700
User-agent: Mozilla Thunderbird

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 <signal.h>; 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 <stdio.h>.

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.)

Attachment: 0001-Move-MinGW-sig2str-workaround-into-ms-w32.h.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]