From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: MinGW build on master broken by Gnulib update Date: Thu, 05 Sep 2024 08:43:23 +0300 Message-ID: <86y1464pvo.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="15222"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Po Lu , Paul Eggert Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Sep 05 07:44:27 2024 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1sm5IB-0003pA-4K for ged-emacs-devel@m.gmane-mx.org; Thu, 05 Sep 2024 07:44:27 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sm5HH-0000Eu-8N; Thu, 05 Sep 2024 01:43:32 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sm5HC-0000Eg-MV for emacs-devel@gnu.org; Thu, 05 Sep 2024 01:43:27 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sm5HA-0001l0-PV; Thu, 05 Sep 2024 01:43:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Subject:To:From:Date:mime-version:in-reply-to: references; bh=Ra+qD/nb5wdruNH7j01DZmb88fEmKTxf+t/lkmwDg+o=; b=QB31wo9sh77pUQ XLBGWA7awEP2LlfBFwGxr+gSgGrBzAKKunuV3qs98wU7y29Mmg0n5IrqTNjD+z2iwTUApl4C9fV83 Ot1TjgDGRq7lviHlZNbLUJJ1vh93CG/Z9pZw8vLrWLKv7Zb97VoRI5fKU3b+azebgJdnjjkELf1cu Hs+b+CuaJ7V403mNAIwgK1owSNT2L645mTMcFvqGQxD8VosqKyvR47zAQ50VtwO0GDDhAj7sJhahI RagIGLwqHBenbXX2/uwbmBuBBb2FuRmdO48k6cSrIzWJQNjC0Z7BcSrkCJUUz7nAZjdEwLPFZArd+ gIOf1RtzH4LXTaHFjlKA==; X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:323375 Archived-At: The last update from Gnulib broke the MinGW build on master: sig2str.c:321:1: warning: no previous prototype for 'str2sig' [-Wmissing-prototypes] 321 | str2sig (char const *signame, int *signum) | ^~~~~~~ sig2str.c:332:1: warning: no previous prototype for 'sig2str' [-Wmissing-prototypes] 332 | sig2str (int signum, char *signame) | ^~~~~~~ [...] process.c: In function 'abbr_to_signal': process.c:7265:9: warning: implicit declaration of function 'str2sig' [-Wimplicit-function-declaration] 7265 | return str2sig (sigbuf, &signo) == 0 ? signo : -1; | ^~~~~~~ process.c:7265:9: warning: nested extern declaration of 'str2sig' [-Wnested-externs] process.c: In function 'Fsignal_names': process.c:8539:13: error: 'SIG2STR_MAX' undeclared (first use in this function) 8539 | char name[SIG2STR_MAX]; | ^~~~~~~~~~~ process.c:8539:13: note: each undeclared identifier is reported only once for each function it appears in CC intervals.o process.c:8544:12: warning: implicit declaration of function 'sig2str' [-Wimplicit-function-declaration] 8544 | if (!sig2str (i, name)) | ^~~~~~~ process.c:8544:12: warning: nested extern declaration of 'sig2str' [-Wnested-externs] process.c:8539:8: warning: unused variable 'name' [-Wunused-variable] 8539 | char name[SIG2STR_MAX]; | ^~~~ CC textprop.o Makefile:457: recipe for target `process.o' failed make[2]: *** [process.o] Error 1 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.