Only marking Python3.8, but this is a historical issue I have ignored as long as possible. There are many - ancient and recent issues open around the extension module _curses - and over the years it appears many assumptions have come into the code (such as configure.ac that says CPP needs to be expended with /usr/include/ncursesw, but not /usr/include/ncurses (which is what the ncurses project uses). Further, Pyhton3 assumes that ncurses is the better solution, so if it can find a libncurses library that must be the best approach. While ncurses might, all other things being equal, be a preferred library - it does not mean it is the best for all platforms. On AIX - the assumptions made (at least where the include files are) tends to make it impossible to build the _cursesmodule in any form when a third-party ncurses is installed. When ncurses is not installed _curses builds fine and _curses_panel is skipped. I propose that "setup.py" - on AIX - specifies libcurses.a rather than libncurses - as the default.
Updating this to not only correct the failure of 3rd-party library ncurses (while IBM curses builds with no issue) to also stop announcing that the optional modules osaudiodev and spwd have not been built. Neither are supported on AIX - so they will never be there.
Hi all, Now that I have finally noticed that the 3.8 branches are active for AIX bots I see something that I had always thought was in the 3.8 branch, but is not yet. https://github.com/python/cpython/pull/12202 Seems the backport never succeeded. Although, iirc it was, then, very near the day that "3.9" started. So, surprised that it failed the backport. Can that process be started again, or will I need to do this manually, so that the PPC64 bot also passes.
messages: + title: ncurses versus cursus integration - platform differences and defaults -> correct AIX logic in setup.py for non-existant optional extensions