Files
MINGW-packages/mingw-w64-python/0086-build-Fix-ncursesw-include-lookup.patch
2023-10-03 09:04:31 +02:00

63 lines
2.1 KiB
Diff

From 2894a762a591ed7df3efe7992e57a0fc639a7282 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:09 +0530
Subject: [PATCH 086/N] build: Fix ncursesw include lookup
Mirror what is already done for libffi; Look it up via
pkg-config and use the exported path via sysconfig in setup.py
---
Makefile.pre.in | 1 +
configure.ac | 9 ++++++++-
setup.py | 2 +-
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 2acca5d..89eb642 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -355,6 +355,7 @@ IO_OBJS= \
##########################################################################
LIBFFI_INCLUDEDIR= @LIBFFI_INCLUDEDIR@
+NCURSESW_INCLUDEDIR= @NCURSESW_INCLUDEDIR@
##########################################################################
# Parser
diff --git a/configure.ac b/configure.ac
index 5fc6259..9a5150c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6414,10 +6414,17 @@ then
[Define if you have struct stat.st_mtimensec])
fi
+if test -n "$PKG_CONFIG"; then
+ NCURSESW_INCLUDEDIR="`"$PKG_CONFIG" ncursesw --cflags-only-I 2>/dev/null | sed -e 's/^-I//;s/ *$//'`"
+else
+ NCURSESW_INCLUDEDIR=""
+fi
+AC_SUBST(NCURSESW_INCLUDEDIR)
+
# first curses header check
ac_save_cppflags="$CPPFLAGS"
if test "$cross_compiling" = no; then
- CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
+ CPPFLAGS="$CPPFLAGS -I$NCURSESW_INCLUDEDIR"
fi
AC_CHECK_HEADERS(curses.h ncurses.h)
diff --git a/setup.py b/setup.py
index 6bf58bf..b6b6a5e 100644
--- a/setup.py
+++ b/setup.py
@@ -1145,7 +1145,7 @@ class PyBuildExt(build_ext):
if curses_library == 'ncursesw':
curses_defines.append(('HAVE_NCURSESW', '1'))
if not CROSS_COMPILING:
- curses_includes.append('/usr/include/ncursesw')
+ curses_includes.append(sysconfig.get_config_var("NCURSESW_INCLUDEDIR"))
# Bug 1464056: If _curses.so links with ncursesw,
# _curses_panel.so must link with panelw.
panel_library = 'panelw'