summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_curses.py5
-rw-r--r--setup.py4
2 files changed, 8 insertions, 1 deletions
diff --git a/Lib/test/test_curses.py b/Lib/test/test_curses.py
index b416403e90..ce09855ac5 100644
--- a/Lib/test/test_curses.py
+++ b/Lib/test/test_curses.py
@@ -268,7 +268,10 @@ def test_unget_wch(stdscr):
if not hasattr(curses, 'unget_wch'):
return
for ch in ('a', '\xe9', '\u20ac', '\U0010FFFF'):
- curses.unget_wch(ch)
+ try:
+ curses.unget_wch(ch)
+ except Exception as err:
+ raise Exception("unget_wch(%a) failed: %s" % (ch, err))
read = stdscr.get_wch()
read = chr(read)
if read != ch:
diff --git a/setup.py b/setup.py
index 97a92bae0e..1e450c7822 100644
--- a/setup.py
+++ b/setup.py
@@ -1173,13 +1173,16 @@ class PyBuildExt(build_ext):
# Curses support, requiring the System V version of curses, often
# provided by the ncurses library.
panel_library = 'panel'
+ curses_includes = []
if curses_library.startswith('ncurses'):
if curses_library == 'ncursesw':
# Bug 1464056: If _curses.so links with ncursesw,
# _curses_panel.so must link with panelw.
panel_library = 'panelw'
+ curses_includes = ['/usr/include/ncursesw']
curses_libs = [curses_library]
exts.append( Extension('_curses', ['_cursesmodule.c'],
+ include_dirs=curses_includes,
define_macros=curses_defines,
libraries = curses_libs) )
elif curses_library == 'curses' and platform != 'darwin':
@@ -1202,6 +1205,7 @@ class PyBuildExt(build_ext):
if (module_enabled(exts, '_curses') and
self.compiler.find_library_file(lib_dirs, panel_library)):
exts.append( Extension('_curses_panel', ['_curses_panel.c'],
+ include_dirs=curses_includes,
libraries = [panel_library] + curses_libs) )
else:
missing.append('_curses_panel')