X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.in;h=26230f7505ac9c118858087dd84c71124031925c;hb=917343b099777d5aae031c5062b01e4d3a694b5a;hp=fae9a994a710f5683a2abfaca1dc357136f8120a;hpb=447e7c6c61998eec4fde4b489e4e1e2e32290b52;p=collectd.git diff --git a/configure.in b/configure.in index fae9a994..26230f75 100644 --- a/configure.in +++ b/configure.in @@ -373,6 +373,68 @@ AC_CHECK_FUNCS(gettimeofday select strdup strtol getaddrinfo getnameinfo strchr AC_FUNC_STRERROR_R +AC_CACHE_CHECK([for strtok_r], + [have_strtok_r_default], + AC_LINK_IFELSE( + AC_LANG_PROGRAM( + [[[[ +#include +#include +#include + ]]]], + [[[[ + char buffer[] = "foo,bar,baz"; + char *token; + char *dummy; + char *saveptr; + + dummy = buffer; + saveptr = NULL; + while ((token = strtok_r (dummy, ",", &saveptr)) != NULL) + { + dummy = NULL; + printf ("token = %s;\n", token); + } + ]]]]), + [have_strtok_r_default="yes"], + [have_strtok_r_default="no"] + ) +) + +if test "x$have_strtok_r_default" = "xno" +then + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -D_REENTRANT=1" + + AC_CACHE_CHECK([if strtok_r needs _REENTRANT], + [have_strtok_r_reentrant], + AC_LINK_IFELSE( + AC_LANG_PROGRAM( + [[[[ +#include +#include +#include + ]]]], + [[[[ + char buffer[] = "foo,bar,baz"; + char *token; + char *dummy; + char *saveptr; + + dummy = buffer; + saveptr = NULL; + while ((token = strtok_r (dummy, ",", &saveptr)) != NULL) + { + dummy = NULL; + printf ("token = %s;\n", token); + } + ]]]]), + [have_strtok_r_reentrant="yes"], + [AC_MSG_FAILURE([strtok_r isn't available. Please file a bugreport!])] + ) + ) +fi + AC_CHECK_FUNCS(getpwnam_r getgrnam_r setgroups regcomp regerror regexec regfree) socket_needs_socket="no"