unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#35410: 27.0.50; 32-bit build of master failing with MSYS2
@ 2019-04-24  7:28 martin rudalics
  2019-07-11 18:23 ` Noam Postavsky
  0 siblings, 1 reply; 6+ messages in thread
From: martin rudalics @ 2019-04-24  7:28 UTC (permalink / raw)
  To: 35410

Trying a 32-bit MSYS2 build of master on Windows 10 configured with
CFLAGS='-O3' gets me here:

w32.o:w32.c:(.text+0xa29f): undefined reference to `_imp___futime32'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [Makefile:643: temacs.exe] Fehler 1
make[1]: Verzeichnis „/c/emacs/trunk/opt-32/src“ wird verlassen
make: *** [Makefile:423: src] Fehler 2

A build configured with CFLAGS='-O0 -g3' proceeds without problems.
The 32-builds use gcc 7.4.0.  64-bit builds with the same options
proceed without problems using gcc 8.3.0.

A workaround here is to add a check to mingw_time.h like

/* The @#$%^&! MinGW developers stopped updating the values of
    __MINGW32_VERSION, __MINGW32_MAJOR_VERSION, and
    __MINGW32_MINOR_VERSION values in v4.x of the runtime, to
    "discourage its uses".  So the values of those macros can no longer
    be trusted, and we need the workaround below, to have a single set
    of macros we can trust.  (The .17 minor version is arbitrary.)  */
#ifdef __MINGW32__
#include <_mingw.h>
# ifndef __CRT__NO_INLINE
#  define __CRT__NO_INLINE
# endif
#endif

martin






^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-10-09 18:11 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-24  7:28 bug#35410: 27.0.50; 32-bit build of master failing with MSYS2 martin rudalics
2019-07-11 18:23 ` Noam Postavsky
2019-07-12  8:12   ` martin rudalics
2019-07-12 15:28     ` Noam Postavsky
2019-07-12 16:52       ` martin rudalics
2019-10-09 18:11         ` martin rudalics

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).