emacs-devel
[Top][All Lists]
Advanced

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

Gnulib's boot-time.c breaks the build with mingw.org's MinGW


From: Eli Zaretskii
Subject: Gnulib's boot-time.c breaks the build with mingw.org's MinGW
Date: Tue, 04 Jun 2024 19:27:23 +0300

Paul imported today the latest changes from Gnulib, and that broke the
Emacs MinGW build on the master branch when mingw.org's MinGW is used:

  boot-time.c:49:11: fatal error: sysinfoapi.h: No such file or directory
     49 | # include <sysinfoapi.h>
        |           ^~~~~~~~~~~~~~
  compilation terminated.

mingw.org's MinGW doesn't have the sysinfoapi.h header (unlike
MinGW64).  However, that header is not really needed here because the
signature of the GetTickCount64 function, which boot-time-aux.h now
calls, is completely defined in boot-time-aux.h:

  typedef ULONGLONG (WINAPI * GetTickCount64FuncType) (void);

Moreover, the Microsoft documentation, here:

  
https://learn.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-gettickcount64

clearly says that the header file to be included when using
GetTickCount64 is windows.h, not sysinfoapi.h directly.

So I think the Gnulib code should be amended not to include
sysinfoapi.h.  For the time being I made a local change in Emacs, to
be able to build the master branch with MinGW, but I don't think it's
an Emacs-specific issue.

P.S. Paul, please from now on, and until the emacs-30 release branch
is cut, please coordinate with me any updates from Gnulib.  I don't
want us to destabilize the master branch inadvertently so close to the
beginning of the release cycle.  TIA.



reply via email to

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