nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit cc91ee603c24429375ace5d4b55d85c396668c2e
parent c84324bc7a26ab0a56f01d8f538d04adaae07953
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Tue,  4 Apr 2017 12:42:23 -0400

configure: ignore the REG_ENHANCED test when we use gnulib

If we're using the bundled gnulib regex module, then assume REG_ENHANCED
is not supported (since gnulib doesn't support it).

This fixes https://savannah.gnu.org/bugs/?50714.

Diffstat:
Mconfigure.ac | 19++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/configure.ac b/configure.ac @@ -587,17 +587,26 @@ else fi fi -AC_CACHE_CHECK([for enhanced regular expression flag], nano_cv_flag_reg_extended, +AC_CACHE_CHECK([for enhanced regular expression flag], nano_cv_flag_reg_enhanced, [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <regex.h>]], [[ #ifndef REG_ENHANCED error: No REG_ENHANCED support! #endif ]])], - [nano_cv_flag_reg_extended="REG_EXTENDED | REG_ENHANCED"], - [nano_cv_flag_reg_extended="REG_EXTENDED"])]) + [nano_cv_flag_reg_enhanced=yes], + [nano_cv_flag_reg_enhanced=no])]) +dnl The bundled gnulib regex module doesn't support REG_ENHANCED. +if test "$ac_use_included_regex" = "yes"; then + nano_cv_flag_reg_enhanced="no" +fi +if test "$nano_cv_flag_reg_enhanced" = "yes"; then + nano_reg_extended="REG_EXTENDED | REG_ENHANCED" +else + nano_reg_extended="REG_EXTENDED" +fi -AC_DEFINE_UNQUOTED(NANO_REG_EXTENDED, $nano_cv_flag_reg_extended, +AC_DEFINE_UNQUOTED(NANO_REG_EXTENDED, $nano_reg_extended, [Flag(s) to use to get the full range of extended regular expressions]) # Check for word-boundary support (/< and />). @@ -625,7 +634,7 @@ int main(void) size_t nmatch; regmatch_t pmatch; - if (regcomp(&r, "\\\\>", $nano_cv_flag_reg_extended|REG_NOSUB)) + if (regcomp(&r, "\\\\>", $nano_reg_extended|REG_NOSUB)) return 1; if (regexec(&r, "word boundary", nmatch, &pmatch, 0)) return 1;