From 06a5edb452a3806cb79a514a4e4d2f6f314efb94 Mon Sep 17 00:00:00 2001 From: Michael Elkins Date: Wed, 14 Nov 2001 17:40:10 +0000 Subject: [PATCH] move strndup() code into config.c for less complexity change AC_REPLACE_FUNC(strndup) to AC_CHECK_FUNCS(strndup) sed expression checking for gcc-3.0 should be quoted beccause it fails under Solaris 2.7 --- config.c | 11 +++++++++++ configure.in | 5 ++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/config.c b/config.c index ceb70ec..85e4fe3 100644 --- a/config.c +++ b/config.c @@ -57,6 +57,17 @@ config_defaults (config_t * conf) #endif } +#ifndef HAVE_STRNDUP +static char * +strndup (const char *s, size_t nchars) +{ + char *r = malloc (sizeof (char) * (nchars + 1)); + strncpy (r, s, nchars); + r[nchars] = 0; + return r; +} +#endif /* ! HAVE_STRNDUP */ + char * expand_strdup (const char *s) { diff --git a/configure.in b/configure.in index d07b136..cbbbe86 100644 --- a/configure.in +++ b/configure.in @@ -8,14 +8,13 @@ AC_ARG_WITH(ssl-dir, [ --with-ssl-dir=DIR location where openssl is insalled], else AC_MSG_ERROR(can't find OpenSSL in $withval) fi]) -AC_REPLACE_FUNCS(strndup) -AC_CHECK_FUNCS(getopt_long) +AC_CHECK_FUNCS(getopt_long strndup) AC_CHECK_LIB(socket,socket) AC_CHECK_LIB(nsl,inet_ntoa) AC_CHECK_LIB(crypto,ERR_error_string) AC_CHECK_LIB(ssl,SSL_library_init) dnl test for gcc. use the prefix so we know that gcc-3.0 is also gcc -if test `echo $CC | sed s,^gcc.*,gcc,` = gcc; then +if test `echo $CC | sed 's/^gcc.*/gcc/'` = gcc; then CFLAGS="$CFLAGS -pipe -W -Wall -Wshadow -Wmissing-prototypes" fi AC_OUTPUT(Makefile)