103 lines
3.4 KiB
Diff
103 lines
3.4 KiB
Diff
diff -Naur Python-2.7.9-orig/configure.ac Python-2.7.9/configure.ac
|
|
--- Python-2.7.9-orig/configure.ac 2014-12-11 13:50:50.996600000 +0300
|
|
+++ Python-2.7.9/configure.ac 2014-12-11 13:51:02.103800000 +0300
|
|
@@ -4928,18 +4928,54 @@
|
|
# [n]curses.h, ncurses will expose fields of the structs regardless of the
|
|
# configuration.
|
|
AC_MSG_CHECKING(whether WINDOW has _flags)
|
|
-AC_CACHE_VAL(ac_cv_window_has_flags,
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
|
#define NCURSES_OPAQUE 0
|
|
#include <curses.h>
|
|
]], [[
|
|
WINDOW *w;
|
|
w->_flags = 0;
|
|
]])],
|
|
[ac_cv_window_has_flags=yes],
|
|
-[ac_cv_window_has_flags=no]))
|
|
+[ac_cv_window_has_flags=no])
|
|
AC_MSG_RESULT($ac_cv_window_has_flags)
|
|
|
|
+py_curses_window_is_opaque=no
|
|
+if test no = $ac_cv_window_has_flags; then
|
|
+ AC_MSG_CHECKING([whether WINDOW has _flags in non-opaque structure])
|
|
+ AC_COMPILE_IFELSE([
|
|
+ AC_LANG_PROGRAM([[
|
|
+ #define NCURSES_OPAQUE 0
|
|
+ #include <curses.h>
|
|
+ ]],[[
|
|
+ WINDOW *w;
|
|
+ w->_flags = 0;
|
|
+ ]])],
|
|
+ [py_curses_window_is_opaque=yes])
|
|
+ AC_MSG_RESULT([$py_curses_window_is_opaque])
|
|
+fi
|
|
+if test yes = $py_curses_window_is_opaque; then
|
|
+ ac_cv_window_has_flags=yes
|
|
+ AC_DEFINE([NCURSES_OPAQUE], [0], [Define to 0 if you have WINDOW _flags in non-opaque structure.])
|
|
+fi
|
|
+
|
|
+py_curses_window_is_internal=no
|
|
+if test no = $ac_cv_window_has_flags; then
|
|
+ AC_MSG_CHECKING([whether WINDOW has _flags as internal structure])
|
|
+ AC_COMPILE_IFELSE([
|
|
+ AC_LANG_PROGRAM([[
|
|
+ #define NCURSES_INTERNALS 1
|
|
+ #include <curses.h>
|
|
+ ]],[[
|
|
+ WINDOW *w;
|
|
+ w->_flags = 0;
|
|
+ ]])],
|
|
+ [py_curses_window_is_internal=yes])
|
|
+ AC_MSG_RESULT([$py_curses_window_is_internal])
|
|
+fi
|
|
+if test yes = $py_curses_window_is_internal; then
|
|
+ ac_cv_window_has_flags=yes
|
|
+ AC_DEFINE([NCURSES_INTERNALS], [1], [Define to 1 if you have WINDOW _flags as internal structure.])
|
|
+fi
|
|
|
|
if test "$ac_cv_window_has_flags" = yes
|
|
then
|
|
diff -Naur Python-2.7.15-orig/Include/py_curses.h Python-2.7.15/Include/py_curses.h
|
|
--- Python-2.7.15-orig/Include/py_curses.h 2014-12-10 18:59:32.000000000 +0300
|
|
+++ Python-2.7.15/Include/py_curses.h 2014-12-11 13:51:02.103800000 +0300
|
|
@@ -14,7 +14,9 @@
|
|
/* The following definition is necessary for ncurses 5.7; without it,
|
|
some of [n]curses.h set NCURSES_OPAQUE to 1, and then Python
|
|
can't get at the WINDOW flags field. */
|
|
+/* NOTE configure check if ncurses require such definition
|
|
#define NCURSES_OPAQUE 0
|
|
+*/
|
|
#endif
|
|
|
|
#ifdef HAVE_NCURSES_H
|
|
@@ -57,9 +59,12 @@
|
|
#ifdef HAVE_NCURSES_H
|
|
/* configure was checking <curses.h>, but we will
|
|
use <ncurses.h>, which has some or all these features. */
|
|
+/* NOTE configure check for existence of flags
|
|
+ * Also flags are visible only if WINDOW structure is not opaque
|
|
#if !defined(WINDOW_HAS_FLAGS) && !(NCURSES_OPAQUE+0)
|
|
#define WINDOW_HAS_FLAGS 1
|
|
#endif
|
|
+*/
|
|
#if !defined(HAVE_CURSES_IS_PAD) && NCURSES_VERSION_PATCH+0 >= 20090906
|
|
#define HAVE_CURSES_IS_PAD 1
|
|
#endif
|
|
diff -Naur Python-2.7.9-orig/pyconfig.h.in Python-2.7.9/pyconfig.h.in
|
|
--- Python-2.7.9-orig/pyconfig.h.in 2014-12-11 13:50:34.460600000 +0300
|
|
+++ Python-2.7.9/pyconfig.h.in 2014-12-11 13:51:02.103800000 +0300
|
|
@@ -945,6 +945,12 @@
|
|
/* Define to 1 if you want to use native NT threads */
|
|
#undef NT_THREADS
|
|
|
|
+/* Define to 1 if you have WINDOW _flags as internal structure. */
|
|
+#undef NCURSES_INTERNALS
|
|
+
|
|
+/* Define to 0 if you have WINDOW _flags in non-opaque structure. */
|
|
+#undef NCURSES_OPAQUE
|
|
+
|
|
/* Define to the address where bug reports for this package should be sent. */
|
|
#undef PACKAGE_BUGREPORT
|
|
|