From 8134e6e23b2787322fa10e65e44d286da82eea91 Mon Sep 17 00:00:00 2001 From: Andrzej Rybczak Date: Sun, 23 Apr 2017 04:22:52 +0200 Subject: [PATCH] configure: check if curses.h exposes wide-char functions --- configure.ac | 14 +++++++++++--- src/curses/window.h | 1 - 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index 0d6d8442..f238507b 100644 --- a/configure.ac +++ b/configure.ac @@ -108,7 +108,9 @@ PKG_CHECK_MODULES([ICU], [icu-i18n icu-uc], [ CPPFLAGS="$CPPFLAGS $ICU_CFLAGS" LIBS="$LIBS $ICU_LIBS" AC_MSG_CHECKING([whether boost.regex was compiled with ICU support]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[boost::u32regex rx = boost::make_u32regex("foo"); if (boost::u32regex_search("foobar", rx)) { }]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([ + #include + ], [boost::u32regex rx = boost::make_u32regex("foo"); if (boost::u32regex_search("foobar", rx)) { }])], AC_MSG_RESULT([yes]) AC_DEFINE([BOOST_REGEX_ICU], [1]), AC_MSG_RESULT([no]) @@ -160,8 +162,14 @@ PKG_CHECK_MODULES([ncursesw], [ncursesw], [ AC_MSG_ERROR([missing curses.h header]) ) AC_CHECK_LIB(ncursesw, initscr, , AC_MSG_ERROR([ncursesw doesn't provide initscr])) - AC_CHECK_LIB(ncursesw, waddwstr, , AC_MSG_ERROR([ncursesw doesn't provide waddwstr])) - AC_CHECK_LIB(ncursesw, waddnwstr, , AC_MSG_ERROR([ncursesw doesn't provide waddnwstr])) + AC_MSG_CHECKING([whether curses.h exposes wide-char functions by default]) + AC_LINK_IFELSE([AC_LANG_PROGRAM([ + #include + ], [waddnwstr(stdscr, L"123", 3)])], + AC_MSG_RESULT([yes]), + AC_MSG_RESULT([no]) + CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED", + ) ], AC_MSG_ERROR([ncursesw is required!]) ) diff --git a/src/curses/window.h b/src/curses/window.h index 6b66fb72..f53fc4b2 100644 --- a/src/curses/window.h +++ b/src/curses/window.h @@ -22,7 +22,6 @@ #define NCMPCPP_WINDOW_H #define NCURSES_NOMACROS 1 -#define NCURSES_WIDECHAR 1 #include "config.h"