diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2023-11-14 01:59:01 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-14 01:59:01 (GMT) |
commit | d34650e7409b6a7cc64d7a118e4500c2f3cdbcf3 (patch) | |
tree | c13cba10c3aa4d989e7db2c9665a85a8f93f4b36 | |
parent | 02fdb420186295c6435b23f7e030ae989a0e42ac (diff) | |
download | cpython-d34650e7409b6a7cc64d7a118e4500c2f3cdbcf3.zip cpython-d34650e7409b6a7cc64d7a118e4500c2f3cdbcf3.tar.gz cpython-d34650e7409b6a7cc64d7a118e4500c2f3cdbcf3.tar.bz2 |
[3.12] gh-111460: Restore ncurses widechar support on macOS (GH-111878) (gh-112034)
gh-111460: Restore ncurses widechar support on macOS (GH-111878)
(cherry picked from commit d2f305dfd183025a95592319b280fcf4b20c8694)
Co-authored-by: Davide Rizzo <sorcio@gmail.com>
-rw-r--r-- | Misc/NEWS.d/next/Library/2023-11-09-12-57-43.gh-issue-111460.TQaz9I.rst | 3 | ||||
-rwxr-xr-x | configure | 2 | ||||
-rw-r--r-- | configure.ac | 6 |
3 files changed, 8 insertions, 3 deletions
diff --git a/Misc/NEWS.d/next/Library/2023-11-09-12-57-43.gh-issue-111460.TQaz9I.rst b/Misc/NEWS.d/next/Library/2023-11-09-12-57-43.gh-issue-111460.TQaz9I.rst new file mode 100644 index 0000000..956c536 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2023-11-09-12-57-43.gh-issue-111460.TQaz9I.rst @@ -0,0 +1,3 @@ +:mod:`curses`: restore wide character support (including +:func:`curses.unget_wch` and :meth:`~curses.window.get_wch`) on macOS, which +was unavailable due to a regression in Python 3.12. @@ -26079,7 +26079,7 @@ fi fi CURSES_CFLAGS=$(echo $CURSES_CFLAGS | sed 's/-D_XOPEN_SOURCE=600//g') -if test "$have_curses" = no -a "$ac_sys_system" = "Darwin"; then +if test "$have_curses" != no -a "$ac_sys_system" = "Darwin"; then as_fn_append CURSES_CFLAGS " -D_XOPEN_SOURCE_EXTENDED=1" printf "%s\n" "#define HAVE_NCURSESW 1" >>confdefs.h diff --git a/configure.ac b/configure.ac index 3afa9ac..ac84001 100644 --- a/configure.ac +++ b/configure.ac @@ -6439,9 +6439,11 @@ dnl remove _XOPEN_SOURCE macro from curses cflags. pyconfig.h sets dnl the macro to 700. CURSES_CFLAGS=$(echo $CURSES_CFLAGS | sed 's/-D_XOPEN_SOURCE=600//g') -if test "$have_curses" = no -a "$ac_sys_system" = "Darwin"; then +if test "$have_curses" != no -a "$ac_sys_system" = "Darwin"; then dnl On macOS, there is no separate /usr/lib/libncursesw nor libpanelw. - dnl If we are here, we found a locally-supplied version of libncursesw. + dnl System-supplied ncurses combines libncurses/libpanel and supports wide + dnl characters, so we can use it like ncursesw. + dnl If a locally-supplied version of libncursesw is found, we will use that. dnl There should also be a libpanelw. dnl _XOPEN_SOURCE defines are usually excluded for macOS, but we need dnl _XOPEN_SOURCE_EXTENDED here for ncurses wide char support. |