From 4806504180cdea44ce612b8106f2a3e134d2db2f Mon Sep 17 00:00:00 2001 From: Frank Osterfeld Date: Fri, 24 Jul 2009 10:39:54 +0100 Subject: [PATCH] with msvc, replace va_copy by assigning the va_lists (cherry picked from commit 42d613fc9284afaa9543549be26f32e503a58348) --- cmake/ConfigureChecks.cmake | 5 ++++- cmake/config.h.cmake | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/cmake/ConfigureChecks.cmake b/cmake/ConfigureChecks.cmake index f42ce767c..1e83d8092 100644 --- a/cmake/ConfigureChecks.cmake +++ b/cmake/ConfigureChecks.cmake @@ -86,6 +86,9 @@ endif(SIZEOF_INT EQUAL 2) find_program(DOXYGEN doxygen) find_program(XMLTO xmlto) +if(MSVC) + SET(DBUS_VA_COPY_FUNC "_DBUS_VA_COPY_ASSIGN";) +else(MSVC) write_file("${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/cmake_try_compile.c" "#include void f (int i, ...) { va_list args1, args2; @@ -130,7 +133,7 @@ else(DBUS_HAVE_VA_COPY) SET(DBUS_VA_COPY_AS_ARRAY "1" CACHE STRING "'va_lists' cannot be copies as values") endif(DBUS_HAVE___VA_COPY) endif(DBUS_HAVE_VA_COPY) - +endif(MSVC) # _not_ MSVC #### Abstract sockets if (DBUS_ENABLE_ABSTRACT_SOCKETS) diff --git a/cmake/config.h.cmake b/cmake/config.h.cmake index d3d59baee..1aee90f8a 100644 --- a/cmake/config.h.cmake +++ b/cmake/config.h.cmake @@ -78,6 +78,8 @@ #cmakedefine DBUS_BUILD_X11 1 +#define _DBUS_VA_COPY_ASSIGN(a1,a2) { a1 = a2; } + #cmakedefine DBUS_VA_COPY_FUNC #if (defined DBUS_VA_COPY_FUNC) # define DBUS_VA_COPY @DBUS_VA_COPY_FUNC@ -- 2.47.3