1
1

configure: fix up word boundary regex logic now that we have gnulib

If we're using the bundled gnulib regex module, then assume word boundary
support is available to avoid issues with the regcomp test.  This also
unifies the different code paths a bit.

This fixes https://savannah.gnu.org/bugs/?50705.
Этот коммит содержится в:
Mike Frysinger 2017-04-03 15:10:53 -04:00 коммит произвёл Benno Schulenberg
родитель f9a8d6ff4e
Коммит 8f2b5bbf3d

Просмотреть файл

@ -604,19 +604,17 @@ AC_DEFINE_UNQUOTED(NANO_REG_EXTENDED, $nano_cv_flag_reg_extended,
AC_MSG_CHECKING([for GNU-style word boundary regex support]) AC_MSG_CHECKING([for GNU-style word boundary regex support])
AC_ARG_WITH(wordbounds, AC_ARG_WITH(wordbounds,
AS_HELP_STRING([--with-wordbounds], [Use GNU-style word boundary delimiters]), AS_HELP_STRING([--with-wordbounds], [Use GNU-style word boundary delimiters]),
[ case "$with_wordbounds" in [with_wordbounds=$withval], [with_wordbounds=auto])
no) if test "$with_wordbounds" != "no"; then
AC_MSG_RESULT(no) dnl If we're using the bundled gnulib regex module, we know it's supported.
;; if test "$ac_use_included_regex" = "yes"; then
*) with_wordbounds="yes"
AC_MSG_RESULT(yes) fi
# We explicitly don't check if the user forced the option, because
# this is needed for cross compilers and we can't test the target. dnl We explicitly don't check if the user forced the option, because
AC_DEFINE(GNU_WORDBOUNDS, 1, [Define this if the system supports GNU-style word boundaries in regexes.]) gnu_wordbounds=yes, dnl this is needed for cross compilers and we can't test the target.
;; if test "$with_wordbounds" != "yes"; then
esac AC_TRY_RUN([
], [
AC_TRY_RUN([
#ifdef HAVE_SYS_TYPES_H #ifdef HAVE_SYS_TYPES_H
#include <sys/types.h> #include <sys/types.h>
#endif #endif
@ -633,12 +631,23 @@ int main(void)
return 1; return 1;
return 0; return 0;
}], }],
AC_MSG_RESULT(yes) with_wordbounds="yes",
AC_DEFINE(GNU_WORDBOUNDS, 1, [Define this if the system supports GNU-style word boundaries in regexes.]) gnu_wordbounds=yes, with_wordbounds="no",
AC_MSG_RESULT(no), with_wordbounds="cross")
AC_MSG_WARN([*** Can't check for GNU-style word boundary support when cross-compiling]) fi
) fi
]) case $with_wordbounds in
yes)
AC_MSG_RESULT(yes)
AC_DEFINE(GNU_WORDBOUNDS, 1, [Define this if the system supports GNU-style word boundaries in regexes.])
;;
no)
AC_MSG_RESULT(no)
;;
cross)
AC_MSG_WARN([*** Can't check for GNU-style word boundary support when cross-compiling])
;;
esac
if test x$color_support = xyes; then if test x$color_support = xyes; then
# if test x$CURSES_LIB_NAME = xcurses; then # if test x$CURSES_LIB_NAME = xcurses; then