Files
MINGW-packages/mingw-w64-python/0032-build-dont-link-with-gettext.patch
2026-01-07 22:17:09 +01:00

59 lines
1.9 KiB
Diff

From e20bb99edd3fe7ac314e5050d15b8b0d3160e05a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9?=
<alexey.pawlow@gmail.com>
Date: Thu, 17 Jun 2021 18:52:00 +0530
Subject: [PATCH 032/N] build: dont link with gettext
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: Алексей <alexey.pawlow@gmail.com>
---
Modules/_localemodule.c | 8 ++++++++
configure.ac | 9 +++++++++
2 files changed, 17 insertions(+)
diff --git a/Modules/_localemodule.c b/Modules/_localemodule.c
index 0af5a26..5171c61 100644
--- a/Modules/_localemodule.c
+++ b/Modules/_localemodule.c
@@ -13,6 +13,14 @@ This software comes with no warranty. Use at your own risk.
#include "pycore_fileutils.h" // _Py_GetLocaleconvNumeric()
#include "pycore_pymem.h" // _PyMem_Strdup()
+#ifdef __MINGW32__
+/* The header libintl.h and library libintl may exist on mingw host.
+ * To be compatible with MSVC build we has to undef some defines.
+ */
+#undef HAVE_LIBINTL_H
+#undef HAVE_BIND_TEXTDOMAIN_CODESET
+#endif
+
#include <locale.h> // setlocale()
#include <string.h> // strlen()
#ifdef HAVE_ERRNO_H
diff --git a/configure.ac b/configure.ac
index ea8799e..c71a3f5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4064,10 +4064,19 @@ AC_SEARCH_LIBS([sem_init], [pthread rt posix4])
fi
# check if we need libintl for locale functions
+case $host in
+ *-*-mingw*)
+ dnl Native windows build don't use libintl (see _localemodule.c).
+ dnl Also we don't like setup.py to add "intl" library to the list
+ dnl when build _locale module.
+ ;;
+ *)
AC_CHECK_LIB([intl], [textdomain],
[AC_DEFINE([WITH_LIBINTL], [1],
[Define to 1 if libintl is needed for locale functions.])
LIBS="-lintl $LIBS"])
+ ;;
+esac
# checks for system dependent C++ extensions support
case "$ac_sys_system" in