From 0ce8aa7c1dfb56c1f64dcc799a4038eac1f55e95 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Thu, 15 May 2008 19:55:56 -0600 Subject: [PATCH] Extend previous patch to cygwin 1.7.0. * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast implementation in cygwin >= 1.7.0. * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise. * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise. Signed-off-by: Eric Blake --- ChangeLog | 8 ++++++++ m4/memmem.m4 | 16 +++++++++++----- m4/strcasestr.m4 | 16 +++++++++++----- m4/strstr.m4 | 16 +++++++++++----- 4 files changed, 41 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index ddbc8e26f..71ae8360d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2008-05-15 Eric Blake + + Extend previous patch to cygwin 1.7.0. + * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a + fast implementation in cygwin >= 1.7.0. + * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise. + * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise. + 2008-05-15 Bruno Haible * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast diff --git a/m4/memmem.m4 b/m4/memmem.m4 index c7bd9d617..d8c123097 100644 --- a/m4/memmem.m4 +++ b/m4/memmem.m4 @@ -1,4 +1,4 @@ -# memmem.m4 serial 11 +# memmem.m4 serial 12 dnl Copyright (C) 2002, 2003, 2004, 2007, 2008 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -49,14 +49,20 @@ AC_DEFUN([gl_FUNC_MEMMEM], /* Check for empty needle behavior. */ return !result || !memmem ("a", 1, 0, 0);]])], [gl_cv_func_memmem_works=yes], [gl_cv_func_memmem_works=no], - [dnl Only glibc >= 2.9 is known to have a memmem that works in - dnl linear time. - AC_EGREP_CPP([Lucky GNU user], + [dnl Only glibc >= 2.9 and cygwin >= 1.7.0 are known to have a + dnl memmem that works in linear time. + AC_EGREP_CPP([Lucky user], [ #include #ifdef __GNU_LIBRARY__ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 9) || (__GLIBC__ > 2) - Lucky GNU user + Lucky user + #endif +#endif +#ifdef __CYGWIN__ + #include + #if CYGWIN_VERSION_DLL_MAJOR >= 1007 + Lucky user #endif #endif ], diff --git a/m4/strcasestr.m4 b/m4/strcasestr.m4 index d8925adf8..0ad895acf 100644 --- a/m4/strcasestr.m4 +++ b/m4/strcasestr.m4 @@ -1,4 +1,4 @@ -# strcasestr.m4 serial 10 +# strcasestr.m4 serial 11 dnl Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -49,14 +49,20 @@ AC_DEFUN([gl_FUNC_STRCASESTR], } return !result;]])], [gl_cv_func_strcasestr_linear=yes], [gl_cv_func_strcasestr_linear=no], - [dnl Only glibc >= 2.9 is known to have an strcasestr that works in - dnl linear time. - AC_EGREP_CPP([Lucky GNU user], + [dnl Only glibc >= 2.9 and cygwin >= 1.7.0 are known to have a + dnl strcasestr that works in linear time. + AC_EGREP_CPP([Lucky user], [ #include #ifdef __GNU_LIBRARY__ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 9) || (__GLIBC__ > 2) - Lucky GNU user + Lucky user + #endif +#endif +#ifdef __CYGWIN__ + #include + #if CYGWIN_VERSION_DLL_MAJOR >= 1007 + Lucky user #endif #endif ], diff --git a/m4/strstr.m4 b/m4/strstr.m4 index fe01d5f49..67b93c9f7 100644 --- a/m4/strstr.m4 +++ b/m4/strstr.m4 @@ -1,4 +1,4 @@ -# strstr.m4 serial 3 +# strstr.m4 serial 4 dnl Copyright (C) 2008 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -34,14 +34,20 @@ AC_DEFUN([gl_FUNC_STRSTR], } return !result;]])], [gl_cv_func_strstr_linear=yes], [gl_cv_func_strstr_linear=no], - [dnl Only glibc >= 2.9 is known to have an strstr that works in - dnl linear time. - AC_EGREP_CPP([Lucky GNU user], + [dnl Only glibc >= 2.9 and cygwin >= 1.7.0 are known to have a + dnl strstr that works in linear time. + AC_EGREP_CPP([Lucky user], [ #include #ifdef __GNU_LIBRARY__ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 9) || (__GLIBC__ > 2) - Lucky GNU user + Lucky user + #endif +#endif +#ifdef __CYGWIN__ + #include + #if CYGWIN_VERSION_DLL_MAJOR >= 1007 + Lucky user #endif #endif ], -- 2.11.0