summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorTodd C. Miller <Todd.Miller@courtesan.com>2013-11-19 10:40:25 -0700
committerTodd C. Miller <Todd.Miller@courtesan.com>2013-11-19 10:40:25 -0700
commitdcbc8d94ed0263cece08bb444b98d1944ed041f8 (patch)
tree7b9ca2b6eb10a149d255e89da558256ef7565f89 /configure.ac
parentd9ee3d6331cfa80117cc3bf434d3a8e4cce2e978 (diff)
downloadsudo-dcbc8d94ed0263cece08bb444b98d1944ed041f8.tar.gz
Add check for C99 compliant (v)snprintf function.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac16
1 files changed, 8 insertions, 8 deletions
diff --git a/configure.ac b/configure.ac
index c9e3a6822..a55e23a9d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2401,7 +2401,14 @@ AC_CHECK_FUNCS(mkstemps mkdtemp, [], [
AC_CHECK_FUNCS(random lrand48, [break])
AC_LIBOBJ(mktemp)
])
-AC_CHECK_FUNCS(snprintf vsnprintf asprintf vasprintf, , [NEED_SNPRINTF=1])
+AX_FUNC_SNPRINTF
+AC_CHECK_FUNCS(asprintf vasprintf)
+if test X"$ac_cv_have_working_snprintf$ac_cv_have_working_vsnprintf" = X"yesyes"; then
+ # Don't add snprintf to LIBOBJS if it is already present.
+ if test X"$ac_cv_func_asprintf$ac_cv_func_vasprintf" != X"yesyes"; then
+ AC_LIBOBJ(snprintf)
+ fi
+fi
if test X"$ac_cv_type_struct_timespec" != X"no"; then
AC_CHECK_MEMBER([struct stat.st_mtim], [AC_DEFINE(HAVE_ST_MTIM)]
[AC_CHECK_MEMBER([struct stat.st_mtim.st__tim], AC_DEFINE(HAVE_ST__TIM))],
@@ -2466,13 +2473,6 @@ AC_INCLUDES_DEFAULT
#include <$ac_header_dirent>
])
dnl
-dnl If NEED_SNPRINTF is set, add snprintf.c to LIBOBJS
-dnl (it contains snprintf, vsnprintf, asprintf, and vasprintf)
-dnl
-if test -n "$NEED_SNPRINTF"; then
- AC_LIBOBJ(snprintf)
-fi
-dnl
dnl If socket(2) not in libc, check -lsocket and -linet
dnl May need to link with *both* -lnsl and -lsocket due to unresolved symbols
dnl