diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-11-09 11:27:52 +0100 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2016-11-10 15:29:58 +0000 |
commit | 7c7030029626db81f4e7a003945f293fdd764611 (patch) | |
tree | 8449d94c11b769bcb4211cc1d27ac6bfec204359 | |
parent | 86f3bf0ebec1df6e7fd2dd5a4e76cbbcd2d1b01e (diff) |
Fix cursesw detection
On systems which do not provide ncursesw.pc and whose /usr/include/curses.h
does not include wide support, we should not only try with no -I, i.e.
/usr/include, but also with -I/usr/include/ncursesw.
To properly detect for wide support with and without -Werror, we need to
check for the presence of e.g. the WACS_DEGREE macro.
We also want to stop at the first curses_inc_list configuration which works,
and make sure to set IFS to : at each new loop.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Tested-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Message-id: 20161109102752.13255-1-samuel.thibault@ens-lyon.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rwxr-xr-x | configure | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -2926,7 +2926,7 @@ if test "$curses" != "no" ; then curses_inc_list="$($pkg_config --cflags ncurses 2>/dev/null):" curses_lib_list="$($pkg_config --libs ncurses 2>/dev/null):-lpdcurses" else - curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):" + curses_inc_list="$($pkg_config --cflags ncursesw 2>/dev/null):-I/usr/include/ncursesw:" curses_lib_list="$($pkg_config --libs ncursesw 2>/dev/null):-lncursesw:-lcursesw" fi curses_found=no @@ -2941,11 +2941,13 @@ int main(void) { resize_term(0, 0); addwstr(L"wide chars\n"); addnwstr(&wch, 1); + add_wch(WACS_DEGREE); return s != 0; } EOF IFS=: for curses_inc in $curses_inc_list; do + IFS=: for curses_lib in $curses_lib_list; do unset IFS if compile_prog "$curses_inc" "$curses_lib" ; then @@ -2955,6 +2957,9 @@ EOF break fi done + if test "$curses_found" = yes ; then + break + fi done unset IFS if test "$curses_found" = "yes" ; then |