changeset 10082:44e8848f6ce8

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 <ebb9@byu.net>
author Eric Blake <ebb9@byu.net>
date Thu, 15 May 2008 19:55:56 -0600
parents ea9dd8bc5005
children 6622463f0576
files ChangeLog m4/memmem.m4 m4/strcasestr.m4 m4/strstr.m4
diffstat 4 files changed, 41 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-05-15  Eric Blake  <ebb9@byu.net>
+
+	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  <bruno@clisp.org>
 
 	* m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
--- 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 @@
     /* 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 <features.h>
 #ifdef __GNU_LIBRARY__
  #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 9) || (__GLIBC__ > 2)
-  Lucky GNU user
+  Lucky user
+ #endif
+#endif
+#ifdef __CYGWIN__
+ #include <cygwin/version.h>
+ #if CYGWIN_VERSION_DLL_MAJOR >= 1007
+  Lucky user
  #endif
 #endif
 	   ],
--- 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 @@
       }
     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 <features.h>
 #ifdef __GNU_LIBRARY__
  #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 9) || (__GLIBC__ > 2)
-  Lucky GNU user
+  Lucky user
+ #endif
+#endif
+#ifdef __CYGWIN__
+ #include <cygwin/version.h>
+ #if CYGWIN_VERSION_DLL_MAJOR >= 1007
+  Lucky user
  #endif
 #endif
 	   ],
--- 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 @@
       }
     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 <features.h>
 #ifdef __GNU_LIBRARY__
  #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 9) || (__GLIBC__ > 2)
-  Lucky GNU user
+  Lucky user
+ #endif
+#endif
+#ifdef __CYGWIN__
+ #include <cygwin/version.h>
+ #if CYGWIN_VERSION_DLL_MAJOR >= 1007
+  Lucky user
  #endif
 #endif
 	 ],