From d9d41b57e95a941f038d2c3a0c9261e1027a6dcc Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Wed, 12 Jan 2005 22:06:52 +0000 Subject: r4717: fixed our usage of VA_COPY to be more standards compliant (This used to be commit 48b52584ab7db747feaf7ad4382bd3877935ee26) --- source4/build/m4/rewrite.m4 | 16 +++++++++++++--- source4/include/includes.h | 3 ++- 2 files changed, 15 insertions(+), 4 deletions(-) (limited to 'source4') diff --git a/source4/build/m4/rewrite.m4 b/source4/build/m4/rewrite.m4 index 6a466801f8..8d68c4cc74 100644 --- a/source4/build/m4/rewrite.m4 +++ b/source4/build/m4/rewrite.m4 @@ -820,12 +820,22 @@ if test x"$samba_cv_HAVE_GETTIMEOFDAY_TZ" = x"yes"; then AC_DEFINE(HAVE_GETTIMEOFDAY_TZ,1,[Whether gettimeofday() is available]) fi -AC_CACHE_CHECK([for __va_copy],samba_cv_HAVE_VA_COPY,[ +AC_CACHE_CHECK([for va_copy],samba_cv_HAVE_VA_COPY,[ AC_TRY_LINK([#include -va_list ap1,ap2;], [__va_copy(ap1,ap2);], +va_list ap1,ap2;], [va_copy(ap1,ap2);], samba_cv_HAVE_VA_COPY=yes,samba_cv_HAVE_VA_COPY=no)]) if test x"$samba_cv_HAVE_VA_COPY" = x"yes"; then - AC_DEFINE(HAVE_VA_COPY,1,[Whether __va_copy() is available]) + AC_DEFINE(HAVE_VA_COPY,1,[Whether va_copy() is available]) +fi + +if test x"$samba_cv_HAVE_VA_COPY" != x"yes"; then +AC_CACHE_CHECK([for __va_copy],samba_cv_HAVE___VA_COPY,[ +AC_TRY_LINK([#include +va_list ap1,ap2;], [__va_copy(ap1,ap2);], +samba_cv_HAVE___VA_COPY=yes,samba_cv_HAVE___VA_COPY=no)]) +if test x"$samba_cv_HAVE___VA_COPY" = x"yes"; then + AC_DEFINE(HAVE___VA_COPY,1,[Whether __va_copy() is available]) +fi fi AC_CACHE_CHECK([for C99 vsnprintf],samba_cv_HAVE_C99_VSNPRINTF,[ diff --git a/source4/include/includes.h b/source4/include/includes.h index 4d49a3b1ff..cc03607e91 100644 --- a/source4/include/includes.h +++ b/source4/include/includes.h @@ -281,8 +281,9 @@ int asprintf(char **,const char *, ...) PRINTF_ATTRIBUTE(2,3); #define slprintf snprintf -/* we need to use __va_copy() on some platforms */ #ifdef HAVE_VA_COPY +#define VA_COPY(dest, src) va_copy(dest, src) +#elif defined(HAVE___VA_COPY) #define VA_COPY(dest, src) __va_copy(dest, src) #else #define VA_COPY(dest, src) (dest) = (src) -- cgit