pmccabe2html: escaping of special characters
[gnulib.git] / m4 / memmem.m4
index 0ad18e1..9102e77 100644 (file)
@@ -1,6 +1,5 @@
-# memmem.m4 serial 21
-dnl Copyright (C) 2002, 2003, 2004, 2007, 2008, 2009, 2010 Free Software
-dnl Foundation, Inc.
+# memmem.m4 serial 24
+dnl Copyright (C) 2002-2004, 2007-2013 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -12,7 +11,12 @@ AC_DEFUN([gl_FUNC_MEMMEM_SIMPLE],
   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
 
   AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
-  AC_REPLACE_FUNCS([memmem])
+  AC_CHECK_FUNCS([memmem])
+  if test $ac_cv_func_memmem = yes; then
+    HAVE_MEMMEM=1
+  else
+    HAVE_MEMMEM=0
+  fi
   AC_CHECK_DECLS_ONCE([memmem])
   if test $ac_cv_have_decl_memmem = no; then
     HAVE_DECL_MEMMEM=0
@@ -32,16 +36,16 @@ AC_DEFUN([gl_FUNC_MEMMEM_SIMPLE],
       result |= 1;
     /* Check for empty needle behavior.  */
     {
-      char* haystack="AAA";
-      if (memmem (haystack, 3, 0, 0) != haystack)
+      const char *haystack = "AAA";
+      if (memmem (haystack, 3, NULL, 0) != haystack)
         result |= 2;
     }
     return result;
     ]])],
         [gl_cv_func_memmem_works_always=yes],
         [gl_cv_func_memmem_works_always=no],
-        [dnl glibc 2.12 and cygwin 1.7.7 have issue #12092 above.
-         dnl Also empty needles work on glibc >= 2.1 and cygwin >= 1.7.0
+        [dnl glibc 2.9..2.12 and cygwin 1.7.7 have issue #12092 above.
+         dnl Also empty needles work on glibc >= 2.1 and cygwin >= 1.7.0.
          dnl uClibc is not affected, since it uses different source code.
          dnl Assume that it works on all other platforms (even if not linear).
          AC_EGREP_CPP([Lucky user],
@@ -50,7 +54,8 @@ AC_DEFUN([gl_FUNC_MEMMEM_SIMPLE],
  #include <features.h>
  #if ((__GLIBC__ == 2 && ((__GLIBC_MINOR > 0 && __GLIBC_MINOR__ < 9) \
                           || __GLIBC_MINOR__ > 12)) \
-     || (__GLIBC__ > 2)) || defined __UCLIBC__
+      || (__GLIBC__ > 2)) \
+     || defined __UCLIBC__
   Lucky user
  #endif
 #elif defined __CYGWIN__
@@ -62,14 +67,16 @@ AC_DEFUN([gl_FUNC_MEMMEM_SIMPLE],
   Lucky user
 #endif
            ],
-           [gl_cv_func_memmem_works_always=yes],
+           [gl_cv_func_memmem_works_always="guessing yes"],
            [gl_cv_func_memmem_works_always="guessing no"])
         ])
       ])
-    if test "$gl_cv_func_memmem_works_always" != yes; then
-      REPLACE_MEMMEM=1
-      AC_LIBOBJ([memmem])
-    fi
+    case "$gl_cv_func_memmem_works_always" in
+      *yes) ;;
+      *)
+        REPLACE_MEMMEM=1
+        ;;
+    esac
   fi
   gl_PREREQ_MEMMEM
 ]) # gl_FUNC_MEMMEM_SIMPLE
@@ -127,14 +134,16 @@ static void quit (int sig) { exit (sig + 128); }
  #endif
 #endif
            ],
-           [gl_cv_func_memmem_works_fast=yes],
+           [gl_cv_func_memmem_works_fast="guessing yes"],
            [gl_cv_func_memmem_works_fast="guessing no"])
         ])
       ])
-    if test "$gl_cv_func_memmem_works_fast" != yes; then
-      REPLACE_MEMMEM=1
-      AC_LIBOBJ([memmem])
-    fi
+    case "$gl_cv_func_memmem_works_fast" in
+      *yes) ;;
+      *)
+        REPLACE_MEMMEM=1
+        ;;
+    esac
   fi
 ]) # gl_FUNC_MEMMEM