Chi Hsuan Yen added the comment: > second issue is that you apparently don't do the changes for term.h
term.h is included only if ncurses is missing and the system (SysV) curses is used, so I didn't change it. See below: #ifdef __sgi #include <term.h> #endif #ifdef HAVE_NCURSES_H #include <ncurses.h> #else #include <curses.h> #ifdef HAVE_TERM_H /* for tigetstr, which is not declared in SysV curses */ #include <term.h> #endif #endif > Third issue is that you can't make these changes for third party extensions Did you mean 3rd party extensions that include py_curses.h may get broken with this patch? IMO they shouldn't include this as it's CPython's implementation detail and shouldn't be used outside Modules/_cursesmodule.c and Modules/_curses_panel.c > however the ncursesw installation can be found in <prefix>/include instead This is what I want to solve at the first place - make _curses compatible with different configurations. In configure.ac, there's a line: AC_CHECK_HEADERS(curses.h ncurses.h ncursesw/ncurses.h ncurses/ncurses.h panel.h ncursesw/panel.h ncurses/panel.h) > so you apparently can assume that this directory name is fixed *iff* it exists Did you mean there's no need to check panel.h? I'll try to update the patch. There's something missing from this patch: if ncurses is built with --enable-reentrant, the library and include paths get an additional 't'. For example, the library name becomes libncursestw.so and includedir becomes $prefix/include/ncursestw. Note that 't' comes before 'w' as ncurses's configure.in handles --enable-widec before --enable-reentrant. I skip such cases as --enable-reentrant is not compatible with Modules/_cursesmodule.c yet (issue25720). I'd like to postpone it until issue25720 is resolved as it does not make sense to detect incompatible header paths. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue28190> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com