# This file is part of MXE. See LICENSE.md for licensing information. From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Sat, 18 May 2019 18:01:31 +0200 Subject: [PATCH 1/1] build: Avoid trouble on mingw caused by mingw's *printf functions. Reported by Michele Locati in . * gettext-runtime/intl/Makefile.am (AM_CPPFLAGS): Define __USE_MINGW_ANSI_STDIO to 0. * gettext-runtime/libasprintf/Makefile.am (DEFS): Likewise. * libtextstyle/lib/Makefile.am (AM_CPPFLAGS): Likewise. (cherry picked from commit 45500ab1765581d6a3b7d2e6a6c2595466de70af) diff --git a/gettext-runtime/intl/Makefile.am b/gettext-runtime/intl/Makefile.am index 1111111..2222222 100644 --- a/gettext-runtime/intl/Makefile.am +++ b/gettext-runtime/intl/Makefile.am @@ -61,6 +61,15 @@ if WOE32 AM_CPPFLAGS += -D__USE_MINGW_ANSI_STDIO=0 endif +if WOE32 +# On mingw, disable the declarations of *printf functions as aliases to the +# corresponding __mingw_*printf functions, because +# - these functions are useless for i18n purposes (not POSIX/XSI compliant), +# - they pull in a dependency to the libgcc_s_sjlj DLL (through the symbols +# __udivdi3, __umoddi3). +AM_CPPFLAGS += -D__USE_MINGW_ANSI_STDIO=0 +endif + # Parametrization of the 'relocatable-lib-lgpl' module. AM_CPPFLAGS += \ -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(libdir)\" -DNO_XMALLOC \ diff --git a/gettext-runtime/libasprintf/Makefile.am b/gettext-runtime/libasprintf/Makefile.am index 1111111..2222222 100644 --- a/gettext-runtime/libasprintf/Makefile.am +++ b/gettext-runtime/libasprintf/Makefile.am @@ -35,6 +35,17 @@ if WOE32 DEFS += -D__USE_MINGW_ANSI_STDIO=0 endif +DEFS = -DIN_LIBASPRINTF @DEFS@ + +if WOE32 +# On mingw, disable the declarations of *printf functions as aliases to the +# corresponding __mingw_*printf functions, because +# - these functions are useless for i18n purposes (not POSIX/XSI compliant), +# - they pull in a dependency to the libgcc_s_sjlj DLL (through the symbols +# __udivdi3, __umoddi3). +DEFS += -D__USE_MINGW_ANSI_STDIO=0 +endif + # Library include file. diff --git a/libtextstyle/lib/Makefile.am b/libtextstyle/lib/Makefile.am index 1111111..2222222 100644 --- a/libtextstyle/lib/Makefile.am +++ b/libtextstyle/lib/Makefile.am @@ -56,6 +56,13 @@ if WOE32 AM_CPPFLAGS += -D__USE_MINGW_ANSI_STDIO=0 endif +if WOE32 +# On mingw, disable the declarations of *printf functions as aliases to the +# corresponding __mingw_*printf functions, because they pull in a dependency +# to the libgcc_s_sjlj DLL (through the symbols __udivdi3, __umoddi3). +AM_CPPFLAGS += -D__USE_MINGW_ANSI_STDIO=0 +endif + # Rules generated and collected by gnulib-tool. include Makefile.gnulib