Issue #13415: Help to locate curses.h when _curses module is linked to ncursesw
This commit is contained in:
parent
5604ef3e36
commit
756c6ecdc4
|
@ -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:
|
||||
|
|
4
setup.py
4
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')
|
||||
|
|
Loading…
Reference in New Issue