# HG changeset patch # User Eric Blake # Date 1213050094 21600 # Node ID 2304e9103317fbbfe52b62c3bdccb3d9eaff47bb # Parent d97126852324f78093875d57fae8ce33560be482 Work around environments that (stupidly) ignore SIGALRM. * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling before using alarm(). * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise. * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise. Reported by Ian Beckwith . Signed-off-by: Eric Blake diff -r d97126852324 -r 2304e9103317 ChangeLog --- a/ChangeLog Mon Jun 09 08:14:45 2008 -0600 +++ b/ChangeLog Mon Jun 09 16:21:34 2008 -0600 @@ -1,5 +1,12 @@ 2008-06-09 Eric Blake + Work around environments that (stupidly) ignore SIGALRM. + * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling + before using alarm(). + * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise. + * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise. + Reported by Ian Beckwith . + Produce autobuild blurb earlier in log. * modules/autobuild (configure.ac-early): Move AB_INIT here. diff -r d97126852324 -r 2304e9103317 m4/memmem.m4 --- a/m4/memmem.m4 Mon Jun 09 08:14:45 2008 -0600 +++ b/m4/memmem.m4 Mon Jun 09 16:21:34 2008 -0600 @@ -1,4 +1,4 @@ -# memmem.m4 serial 12 +# memmem.m4 serial 13 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, @@ -27,6 +27,7 @@ AC_CACHE_CHECK([whether memmem works in linear time], [gl_cv_func_memmem_works], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include /* for signal */ #include /* for memmem */ #include /* for malloc */ #include /* for alarm */ @@ -36,6 +37,7 @@ void *result = 0; /* Failure to compile this test due to missing alarm is okay, since all such platforms (mingw) also lack memmem. */ + signal (SIGALRM, SIG_DFL); alarm (5); /* Check for quadratic performance. */ if (haystack && needle) diff -r d97126852324 -r 2304e9103317 m4/strcasestr.m4 --- a/m4/strcasestr.m4 Mon Jun 09 08:14:45 2008 -0600 +++ b/m4/strcasestr.m4 Mon Jun 09 16:21:34 2008 -0600 @@ -1,4 +1,4 @@ -# strcasestr.m4 serial 11 +# strcasestr.m4 serial 12 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, @@ -26,6 +26,7 @@ AC_CACHE_CHECK([whether strcasestr works in linear time], [gl_cv_func_strcasestr_linear], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include /* for signal */ #include /* for memmem */ #include /* for malloc */ #include /* for alarm */ @@ -35,6 +36,7 @@ void *result = 0; /* Failure to compile this test due to missing alarm is okay, since all such platforms (mingw) also lack strcasestr. */ + signal (SIGALRM, SIG_DFL); alarm (5); /* Check for quadratic performance. */ if (haystack && needle) diff -r d97126852324 -r 2304e9103317 m4/strstr.m4 --- a/m4/strstr.m4 Mon Jun 09 08:14:45 2008 -0600 +++ b/m4/strstr.m4 Mon Jun 09 16:21:34 2008 -0600 @@ -1,4 +1,4 @@ -# strstr.m4 serial 4 +# strstr.m4 serial 5 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, @@ -11,6 +11,7 @@ AC_CACHE_CHECK([whether strstr works in linear time], [gl_cv_func_strstr_linear], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include /* for signal */ #include /* for memmem */ #include /* for malloc */ #include /* for alarm */ @@ -20,6 +21,7 @@ void *result = 0; /* Failure to compile this test due to missing alarm is okay, since all such platforms (mingw) also have quadratic strstr. */ + signal (SIGALRM, SIG_DFL); alarm (5); /* Check for quadratic performance. */ if (haystack && needle)