GNU bug report logs -
#62792
Emacs 29.0.90 build fails
Previous Next
Reported by: Tak Ota <takaaki.ota <at> gmail.com>
Date: Wed, 12 Apr 2023 15:22:01 UTC
Severity: normal
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 62792 in the body.
You can then email your comments to 62792 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 15:22:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Tak Ota <takaaki.ota <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Wed, 12 Apr 2023 15:22:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
When attempted to build using MinGW the next section of code in src/w32.c
conflicts with the definition in MinGW/include/wincon.h
This typedef was not in src/w32.c of Emacs 28.2.
#if _WIN32_WINNT < 0x0501
typedef struct
{
DWORD nFont;
COORD dwFontSize;
} CONSOLE_FONT_INFO;
#endif
By removing the above portion of code from rc/w32.c the build completes
successfully.
-Tak
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 15:33:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 62792 <at> debbugs.gnu.org (full text, mbox):
> From: Tak Ota <takaaki.ota <at> gmail.com>
> Date: Tue, 11 Apr 2023 11:16:28 -0700
>
> When attempted to build using MinGW the next section of code in src/w32.c conflicts with the definition
> in MinGW/include/wincon.h
Thank you for your report.
Please show the exact compilation error message you get due to this
conflict. I don't see any errors here, and Emacs 29 compiles with
MinGW flawlessly here.
> This typedef was not in src/w32.c of Emacs 28.2.
>
> #if _WIN32_WINNT < 0x0501
> typedef struct
> {
> DWORD nFont;
> COORD dwFontSize;
> } CONSOLE_FONT_INFO;
> #endif
Also, which flavor of MinGW and which version are you using? The
above should be only visible with _WIN32_WINNT that is smaller than
0x0501, which should not happen with latest MinGW64. And looking at
the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
structure there that is identical to the above, so how can it
conflict?
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 16:19:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
This is what I saw.
CC w32fns.o
CC w32menu.o
CC w32reg.o
CC w32font.o
CC w32term.o
CC w32xfns.o
CC w32select.o
CC w32uniscribe.o
CC w32cygwinx.o
CC w32.o
w32.c:551:3: error: conflicting types for 'CONSOLE_FONT_INFO'
} CONSOLE_FONT_INFO;
^
In file included from c:\mingw\include\windows.h:43:0,
from c:\mingw\include\winsock2.h:22,
from c:/d/pub/emacs/emacs-29.0.90/nt/inc/sys/socket.h:57,
from thread.h:25,
from lisp.h:2268,
from w32.c:98:
c:\mingw\include\wincon.h:86:3: note: previous declaration of
'CONSOLE_FONT_INFO' was here
} CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
^
make[2]: *** [w32.o] Error 1
make[2]: Leaving directory `/c/d/pub/emacs/emacs-29.0.90/src'
make[1]: *** [src] Error 2
make[1]: Leaving directory `/c/d/pub/emacs/emacs-29.0.90'
make[1]: Entering directory `/c/d/pub/emacs/emacs-29.0.90'
***
*** "make all" failed with exit status 2.
***
*** You could try to:
*** - run "make bootstrap", which might fix the problem
*** - run "make V=1", which displays the full commands invoked by make,
*** to further investigate the problem
***
make[1]: *** [advice-on-failure] Error 2
make[1]: Leaving directory `/c/d/pub/emacs/emacs-29.0.90'
make: *** [all] Error 2
On Wed, Apr 12, 2023 at 8:32 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Tak Ota <takaaki.ota <at> gmail.com>
> > Date: Tue, 11 Apr 2023 11:16:28 -0700
> >
> > When attempted to build using MinGW the next section of code in
> src/w32.c conflicts with the definition
> > in MinGW/include/wincon.h
>
> Thank you for your report.
>
> Please show the exact compilation error message you get due to this
> conflict. I don't see any errors here, and Emacs 29 compiles with
> MinGW flawlessly here.
>
> > This typedef was not in src/w32.c of Emacs 28.2.
> >
> > #if _WIN32_WINNT < 0x0501
> > typedef struct
> > {
> > DWORD nFont;
> > COORD dwFontSize;
> > } CONSOLE_FONT_INFO;
> > #endif
>
> Also, which flavor of MinGW and which version are you using? The
> above should be only visible with _WIN32_WINNT that is smaller than
> 0x0501, which should not happen with latest MinGW64. And looking at
> the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
> structure there that is identical to the above, so how can it
> conflict?
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 16:37:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 62792 <at> debbugs.gnu.org (full text, mbox):
Hi Tak,
On Wed, Apr 12, 2023 at 11:18 AM Tak Ota <takaaki.ota <at> gmail.com> wrote:
>
> This is what I saw.
Thanks for the error message detail. Unfortunately, I'm still not
able to reproduce this error. I'm building the emacs-29 branch under
MINGW32, in case that might be it. (It has been several days since I
tried x32 build.)
Are you building from a git checkout or starting from the 29.0.90
source archive?
Can you share the output from running "uname -a" in the shell where
you are building? Here's mine, for reference:
MINGW64_NT-10.0-19043 Avalon 3.3.4-341.x86_64 2022-02-15 17:24 UTC x86_64 Msys
Finally, can you answer Eli's question below?
>>
>> Also, which flavor of MinGW and which version are you using? The
>> above should be only visible with _WIN32_WINNT that is smaller than
>> 0x0501, which should not happen with latest MinGW64. And looking at
>> the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
>> structure there that is identical to the above, so how can it
>> conflict?
Thanks for reporting!
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 16:37:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 62792 <at> debbugs.gnu.org (full text, mbox):
> From: Tak Ota <takaaki.ota <at> gmail.com>
> Date: Wed, 12 Apr 2023 09:18:39 -0700
> Cc: 62792 <at> debbugs.gnu.org
>
> This is what I saw.
>
> CC w32fns.o
> CC w32menu.o
> CC w32reg.o
> CC w32font.o
> CC w32term.o
> CC w32xfns.o
> CC w32select.o
> CC w32uniscribe.o
> CC w32cygwinx.o
> CC w32.o
> w32.c:551:3: error: conflicting types for 'CONSOLE_FONT_INFO'
> } CONSOLE_FONT_INFO;
> ^
> In file included from c:\mingw\include\windows.h:43:0,
> from c:\mingw\include\winsock2.h:22,
> from c:/d/pub/emacs/emacs-29.0.90/nt/inc/sys/socket.h:57,
> from thread.h:25,
> from lisp.h:2268,
> from w32.c:98:
> c:\mingw\include\wincon.h:86:3: note: previous declaration of 'CONSOLE_FONT_INFO' was here
> } CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
> ^
Please show the definition of CONSOLE_FONT_INFO in your wincon.h, it
should begin a few lines before line 86 of wincon.h.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 17:45:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 62792 <at> debbugs.gnu.org (full text, mbox):
> Cc: 62792 <at> debbugs.gnu.org
> Date: Wed, 12 Apr 2023 19:37:31 +0300
> From: Eli Zaretskii <eliz <at> gnu.org>
>
> > w32.c:551:3: error: conflicting types for 'CONSOLE_FONT_INFO'
> > } CONSOLE_FONT_INFO;
> > ^
> > In file included from c:\mingw\include\windows.h:43:0,
> > from c:\mingw\include\winsock2.h:22,
> > from c:/d/pub/emacs/emacs-29.0.90/nt/inc/sys/socket.h:57,
> > from thread.h:25,
> > from lisp.h:2268,
> > from w32.c:98:
> > c:\mingw\include\wincon.h:86:3: note: previous declaration of 'CONSOLE_FONT_INFO' was here
> > } CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
> > ^
>
> Please show the definition of CONSOLE_FONT_INFO in your wincon.h, it
> should begin a few lines before line 86 of wincon.h.
And in addition, please show the values of
__MINGW32_VERSION
__MINGW32_MAJOR_VERSION
__MINGW32_MINOR_VERSION
__MINGW32_PATCHLEVEL
They should all be defined in c:\mingw\include\_mingw.h
I think you are using a very old version of MinGW, where this
declaration was not protected by a suitable #if condition.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 18:17:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Here is my MinGW information.
ota <at> Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90
$ which gcc
/mingw/bin/gcc.exe
ota <at> Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90
$ gcc --version
gcc.exe (GCC) 5.3.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
ota <at> Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90
$ gcc -v
Using built-in specs.
COLLECT_GCC=C:\MinGW\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/5.3.0/lto-wrapper.exe
Target: mingw32
Configured with: ../src/gcc-5.3.0/configure --build=x86_64-pc-linux-gnu
--host=mingw32 --prefix=/mingw --disable-win32-registry --target=mingw32
--with-arch=i586 --enable-languages=c,c++,objc,obj-c++,fortran,ada
--enable-static --enable-shared --enable-threads --with-dwarf2
--disable-sjlj-exceptions --enable-version-specific-runtime-libs
--with-libintl-prefix=/mingw --enable-libstdcxx-debug --with-tune=generic
--enable-libgomp --disable-libvtv --enable-nls : (reconfigured)
../src/gcc-5.3.0/configure --build=x86_64-pc-linux-gnu --host=mingw32
--prefix=/mingw --disable-win32-registry --target=mingw32 --with-arch=i586
--enable-languages=c,c++,objc,obj-c++,fortran,ada --enable-static
--enable-shared --enable-threads --with-dwarf2 --disable-sjlj-exceptions
--enable-version-specific-runtime-libs --with-libiconv-prefix=/mingw
--with-libintl-prefix=/mingw --enable-libstdcxx-debug --with-tune=generic
--enable-libgomp --disable-libvtv --enable-nls
Thread model: win32
gcc version 5.3.0 (GCC)
On Wed, Apr 12, 2023 at 8:32 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Tak Ota <takaaki.ota <at> gmail.com>
> > Date: Tue, 11 Apr 2023 11:16:28 -0700
> >
> > When attempted to build using MinGW the next section of code in
> src/w32.c conflicts with the definition
> > in MinGW/include/wincon.h
>
> Thank you for your report.
>
> Please show the exact compilation error message you get due to this
> conflict. I don't see any errors here, and Emacs 29 compiles with
> MinGW flawlessly here.
>
> > This typedef was not in src/w32.c of Emacs 28.2.
> >
> > #if _WIN32_WINNT < 0x0501
> > typedef struct
> > {
> > DWORD nFont;
> > COORD dwFontSize;
> > } CONSOLE_FONT_INFO;
> > #endif
>
> Also, which flavor of MinGW and which version are you using? The
> above should be only visible with _WIN32_WINNT that is smaller than
> 0x0501, which should not happen with latest MinGW64. And looking at
> the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
> structure there that is identical to the above, so how can it
> conflict?
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 18:37:01 GMT)
Full text and
rfc822 format available.
Message #26 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi Corwin,
ota <at> Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90
$ uname -a
MINGW32_NT-6.2 TAK-DELL-XPS15 1.0.19(0.48/3/2) 2016-07-13 17:45 i686 Msys
On Wed, Apr 12, 2023 at 9:36 AM Corwin Brust <corwin <at> bru.st> wrote:
> Hi Tak,
>
> On Wed, Apr 12, 2023 at 11:18 AM Tak Ota <takaaki.ota <at> gmail.com> wrote:
> >
> > This is what I saw.
>
> Thanks for the error message detail. Unfortunately, I'm still not
> able to reproduce this error. I'm building the emacs-29 branch under
> MINGW32, in case that might be it. (It has been several days since I
> tried x32 build.)
>
> Are you building from a git checkout or starting from the 29.0.90
> source archive?
>
> Can you share the output from running "uname -a" in the shell where
> you are building? Here's mine, for reference:
>
> MINGW64_NT-10.0-19043 Avalon 3.3.4-341.x86_64 2022-02-15 17:24 UTC
> x86_64 Msys
>
> Finally, can you answer Eli's question below?
>
> >>
> >> Also, which flavor of MinGW and which version are you using? The
> >> above should be only visible with _WIN32_WINNT that is smaller than
> >> 0x0501, which should not happen with latest MinGW64. And looking at
> >> the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
> >> structure there that is identical to the above, so how can it
> >> conflict?
>
> Thanks for reporting!
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 18:43:02 GMT)
Full text and
rfc822 format available.
Message #29 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Corwin,
I have attached MinGW/include/wincon.h from my system.
-Tak
On Wed, Apr 12, 2023 at 11:36 AM Tak Ota <takaaki.ota <at> gmail.com> wrote:
> Hi Corwin,
>
> ota <at> Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90
> $ uname -a
> MINGW32_NT-6.2 TAK-DELL-XPS15 1.0.19(0.48/3/2) 2016-07-13 17:45 i686 Msys
>
> On Wed, Apr 12, 2023 at 9:36 AM Corwin Brust <corwin <at> bru.st> wrote:
>
>> Hi Tak,
>>
>> On Wed, Apr 12, 2023 at 11:18 AM Tak Ota <takaaki.ota <at> gmail.com> wrote:
>> >
>> > This is what I saw.
>>
>> Thanks for the error message detail. Unfortunately, I'm still not
>> able to reproduce this error. I'm building the emacs-29 branch under
>> MINGW32, in case that might be it. (It has been several days since I
>> tried x32 build.)
>>
>> Are you building from a git checkout or starting from the 29.0.90
>> source archive?
>>
>> Can you share the output from running "uname -a" in the shell where
>> you are building? Here's mine, for reference:
>>
>> MINGW64_NT-10.0-19043 Avalon 3.3.4-341.x86_64 2022-02-15 17:24 UTC
>> x86_64 Msys
>>
>> Finally, can you answer Eli's question below?
>>
>> >>
>> >> Also, which flavor of MinGW and which version are you using? The
>> >> above should be only visible with _WIN32_WINNT that is smaller than
>> >> 0x0501, which should not happen with latest MinGW64. And looking at
>> >> the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
>> >> structure there that is identical to the above, so how can it
>> >> conflict?
>>
>> Thanks for reporting!
>>
>
[Message part 2 (text/html, inline)]
[wincon.h (text/plain, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 18:47:02 GMT)
Full text and
rfc822 format available.
Message #32 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
#define __MINGW32_VERSION 3022004L
#define __MINGW32_MAJOR_VERSION 3
#define __MINGW32_MINOR_VERSION 22
#define __MINGW32_PATCHLEVEL 4
On Wed, Apr 12, 2023 at 10:44 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > Cc: 62792 <at> debbugs.gnu.org
> > Date: Wed, 12 Apr 2023 19:37:31 +0300
> > From: Eli Zaretskii <eliz <at> gnu.org>
> >
> > > w32.c:551:3: error: conflicting types for 'CONSOLE_FONT_INFO'
> > > } CONSOLE_FONT_INFO;
> > > ^
> > > In file included from c:\mingw\include\windows.h:43:0,
> > > from c:\mingw\include\winsock2.h:22,
> > > from
> c:/d/pub/emacs/emacs-29.0.90/nt/inc/sys/socket.h:57,
> > > from thread.h:25,
> > > from lisp.h:2268,
> > > from w32.c:98:
> > > c:\mingw\include\wincon.h:86:3: note: previous declaration of
> 'CONSOLE_FONT_INFO' was here
> > > } CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
> > > ^
> >
> > Please show the definition of CONSOLE_FONT_INFO in your wincon.h, it
> > should begin a few lines before line 86 of wincon.h.
>
> And in addition, please show the values of
>
> __MINGW32_VERSION
> __MINGW32_MAJOR_VERSION
> __MINGW32_MINOR_VERSION
> __MINGW32_PATCHLEVEL
>
> They should all be defined in c:\mingw\include\_mingw.h
>
> I think you are using a very old version of MinGW, where this
> declaration was not protected by a suitable #if condition.
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 18:50:01 GMT)
Full text and
rfc822 format available.
Message #35 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I am curious. What is the reason the next was added to w32.c?
#if _WIN32_WINNT < 0x0501
typedef struct
{
DWORD nFont;
COORD dwFontSize;
} CONSOLE_FONT_INFO;
#endif
This was not in the previous emacs source w32.c.
-Tak
On Wed, Apr 12, 2023 at 11:36 AM Tak Ota <takaaki.ota <at> gmail.com> wrote:
> Hi Corwin,
>
> ota <at> Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90
> $ uname -a
> MINGW32_NT-6.2 TAK-DELL-XPS15 1.0.19(0.48/3/2) 2016-07-13 17:45 i686 Msys
>
> On Wed, Apr 12, 2023 at 9:36 AM Corwin Brust <corwin <at> bru.st> wrote:
>
>> Hi Tak,
>>
>> On Wed, Apr 12, 2023 at 11:18 AM Tak Ota <takaaki.ota <at> gmail.com> wrote:
>> >
>> > This is what I saw.
>>
>> Thanks for the error message detail. Unfortunately, I'm still not
>> able to reproduce this error. I'm building the emacs-29 branch under
>> MINGW32, in case that might be it. (It has been several days since I
>> tried x32 build.)
>>
>> Are you building from a git checkout or starting from the 29.0.90
>> source archive?
>>
>> Can you share the output from running "uname -a" in the shell where
>> you are building? Here's mine, for reference:
>>
>> MINGW64_NT-10.0-19043 Avalon 3.3.4-341.x86_64 2022-02-15 17:24 UTC
>> x86_64 Msys
>>
>> Finally, can you answer Eli's question below?
>>
>> >>
>> >> Also, which flavor of MinGW and which version are you using? The
>> >> above should be only visible with _WIN32_WINNT that is smaller than
>> >> 0x0501, which should not happen with latest MinGW64. And looking at
>> >> the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO
>> >> structure there that is identical to the above, so how can it
>> >> conflict?
>>
>> Thanks for reporting!
>>
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 18:58:02 GMT)
Full text and
rfc822 format available.
Message #38 received at 62792 <at> debbugs.gnu.org (full text, mbox):
> From: Tak Ota <takaaki.ota <at> gmail.com>
> Date: Wed, 12 Apr 2023 11:45:58 -0700
> Cc: 62792 <at> debbugs.gnu.org
>
> #define __MINGW32_VERSION 3022004L
> #define __MINGW32_MAJOR_VERSION 3
> #define __MINGW32_MINOR_VERSION 22
> #define __MINGW32_PATCHLEVEL 4
OK, thanks. I think I see the reason now. Please try the patch below
and tell if it solves the problem.
diff --git a/src/w32.c b/src/w32.c
index 8d344d2..bb3b35f 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -543,7 +543,13 @@ int (WINAPI *pWideCharToMultiByte)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOO
typedef COORD (WINAPI *GetConsoleFontSize_Proc) (HANDLE, DWORD);
-#if _WIN32_WINNT < 0x0501
+/* Old versions of mingw.org's MinGW, before v5.2.0, don't have a
+ _WIN32_WINNT guard for CONSOLE_FONT_INFO in wincon.h, which causes
+ compilation errors. Note: MinGW64 sets _WIN32_WINNT to a higher
+ version, and its w32api.h version stays fixed at 3.14. */
+#if _WIN32_WINNT < 0x0501 \
+ && (__W32API_MAJOR_VERSION > 5 \
+ || (__W32API_MAJOR_VERSION == 5 && __W32API_MINOR_VERSION >= 2))
typedef struct
{
DWORD nFont;
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 19:00:02 GMT)
Full text and
rfc822 format available.
Message #41 received at 62792 <at> debbugs.gnu.org (full text, mbox):
> From: Tak Ota <takaaki.ota <at> gmail.com>
> Date: Wed, 12 Apr 2023 11:48:48 -0700
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 62792 <at> debbugs.gnu.org
>
> I am curious. What is the reason the next was added to w32.c?
>
> #if _WIN32_WINNT < 0x0501
> typedef struct
> {
> DWORD nFont;
> COORD dwFontSize;
> } CONSOLE_FONT_INFO;
> #endif
>
> This was not in the previous emacs source w32.c.
It was added to support the new command restart-emacs. See the
function get_console_font_size and how it is used in w32_reexec_emacs.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 19:02:02 GMT)
Full text and
rfc822 format available.
Message #44 received at 62792 <at> debbugs.gnu.org (full text, mbox):
> From: Tak Ota <takaaki.ota <at> gmail.com>
> Date: Wed, 12 Apr 2023 11:42:06 -0700
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 62792 <at> debbugs.gnu.org
>
> I have attached MinGW/include/wincon.h from my system.
Interesting. It sounds like you are using (an old version of)
MinGW64, but your system headers are from mingw.org's MinGW.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 19:56:02 GMT)
Full text and
rfc822 format available.
Message #47 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Yes, this patch averts the error. Thank you.
-Tak
On Wed, Apr 12, 2023 at 11:57 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Tak Ota <takaaki.ota <at> gmail.com>
> > Date: Wed, 12 Apr 2023 11:45:58 -0700
> > Cc: 62792 <at> debbugs.gnu.org
> >
> > #define __MINGW32_VERSION 3022004L
> > #define __MINGW32_MAJOR_VERSION 3
> > #define __MINGW32_MINOR_VERSION 22
> > #define __MINGW32_PATCHLEVEL 4
>
> OK, thanks. I think I see the reason now. Please try the patch below
> and tell if it solves the problem.
>
> diff --git a/src/w32.c b/src/w32.c
> index 8d344d2..bb3b35f 100644
> --- a/src/w32.c
> +++ b/src/w32.c
> @@ -543,7 +543,13 @@ int (WINAPI
> *pWideCharToMultiByte)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOO
>
> typedef COORD (WINAPI *GetConsoleFontSize_Proc) (HANDLE, DWORD);
>
> -#if _WIN32_WINNT < 0x0501
> +/* Old versions of mingw.org's MinGW, before v5.2.0, don't have a
> + _WIN32_WINNT guard for CONSOLE_FONT_INFO in wincon.h, which causes
> + compilation errors. Note: MinGW64 sets _WIN32_WINNT to a higher
> + version, and its w32api.h version stays fixed at 3.14. */
> +#if _WIN32_WINNT < 0x0501 \
> + && (__W32API_MAJOR_VERSION > 5 \
> + || (__W32API_MAJOR_VERSION == 5 && __W32API_MINOR_VERSION >= 2))
> typedef struct
> {
> DWORD nFont;
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Wed, 12 Apr 2023 19:57:01 GMT)
Full text and
rfc822 format available.
Message #50 received at 62792 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I understand now. Thanks for the explanation.
-Tak
On Wed, Apr 12, 2023 at 11:59 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Tak Ota <takaaki.ota <at> gmail.com>
> > Date: Wed, 12 Apr 2023 11:48:48 -0700
> > Cc: Eli Zaretskii <eliz <at> gnu.org>, 62792 <at> debbugs.gnu.org
> >
> > I am curious. What is the reason the next was added to w32.c?
> >
> > #if _WIN32_WINNT < 0x0501
> > typedef struct
> > {
> > DWORD nFont;
> > COORD dwFontSize;
> > } CONSOLE_FONT_INFO;
> > #endif
> >
> > This was not in the previous emacs source w32.c.
>
> It was added to support the new command restart-emacs. See the
> function get_console_font_size and how it is used in w32_reexec_emacs.
>
[Message part 2 (text/html, inline)]
Reply sent
to
Eli Zaretskii <eliz <at> gnu.org>
:
You have taken responsibility.
(Thu, 13 Apr 2023 05:20:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Tak Ota <takaaki.ota <at> gmail.com>
:
bug acknowledged by developer.
(Thu, 13 Apr 2023 05:20:02 GMT)
Full text and
rfc822 format available.
Message #55 received at 62792-done <at> debbugs.gnu.org (full text, mbox):
> From: Tak Ota <takaaki.ota <at> gmail.com>
> Date: Wed, 12 Apr 2023 12:54:45 -0700
> Cc: 62792 <at> debbugs.gnu.org
>
> Yes, this patch averts the error. Thank you.
Thanks, I've now installed this on the emacs-29 branch, and I'm
closing the bug.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#62792
; Package
emacs
.
(Thu, 13 Apr 2023 16:19:01 GMT)
Full text and
rfc822 format available.
Message #58 received at 62792-done <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Sounds good. Thank you.
-Tak
On Wed, Apr 12, 2023 at 10:19 PM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Tak Ota <takaaki.ota <at> gmail.com>
> > Date: Wed, 12 Apr 2023 12:54:45 -0700
> > Cc: 62792 <at> debbugs.gnu.org
> >
> > Yes, this patch averts the error. Thank you.
>
> Thanks, I've now installed this on the emacs-29 branch, and I'm
> closing the bug.
>
[Message part 2 (text/html, inline)]
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 12 May 2023 11:24:09 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 40 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.