Mercurial > hg > octave-kai > gnulib-hg
changeset 11634:b0f6e24e92ac
Skip linear-time test if it is redundant.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Thu, 18 Jun 2009 10:16:21 +0200 |
parents | e62851e0bf87 |
children | a395edd0f5a4 |
files | ChangeLog m4/strcasestr.m4 |
diffstat | 2 files changed, 18 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-06-18 Bruno Haible <bruno@clisp.org> + + * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Invoke AC_LIBOBJ only + in one place. + (gl_FUNC_STRCASESTR): Skip linear time test if strcasestr is going to + be replaced anyway. + 2009-06-18 Eric Blake <ebb9@byu.net> hash: check for resize before insertion
--- a/m4/strcasestr.m4 +++ b/m4/strcasestr.m4 @@ -7,17 +7,21 @@ dnl Check that strcasestr is present and works. AC_DEFUN([gl_FUNC_STRCASESTR_SIMPLE], [ + AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) + dnl Persuade glibc <string.h> to declare strcasestr(). AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MEMCHR]) - AC_REPLACE_FUNCS([strcasestr]) + AC_CHECK_FUNCS([strcasestr]) if test $ac_cv_func_strcasestr = no; then HAVE_STRCASESTR=0 - gl_PREREQ_STRCASESTR - elif test "$gl_cv_func_memchr_works" != yes; then - REPLACE_STRCASESTR=1 + else + if test "$gl_cv_func_memchr_works" != yes; then + REPLACE_STRCASESTR=1 + fi + fi + if test $HAVE_STRCASESTR = 0 || test $REPLACE_STRCASESTR = 1; then AC_LIBOBJ([strcasestr]) gl_PREREQ_STRCASESTR fi @@ -27,7 +31,7 @@ AC_DEFUN([gl_FUNC_STRCASESTR], [ AC_REQUIRE([gl_FUNC_STRCASESTR_SIMPLE]) - if test $ac_cv_func_strcasestr = yes; then + if test $HAVE_STRCASESTR = 1 && test $REPLACE_STRCASESTR = 0; then AC_CACHE_CHECK([whether strcasestr works in linear time], [gl_cv_func_strcasestr_linear], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ @@ -80,6 +84,7 @@ if test "$gl_cv_func_strcasestr_linear" != yes; then REPLACE_STRCASESTR=1 AC_LIBOBJ([strcasestr]) + gl_PREREQ_STRCASESTR fi fi ]) # gl_FUNC_STRCASESTR