Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Correct macro declaration for VA_COPY so that it does not fool cpp and works on windo...
authornavarrop <navarrop@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 4 Jun 2010 16:04:29 +0000 (16:04 +0000)
committernavarrop <navarrop@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 4 Jun 2010 16:04:29 +0000 (16:04 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7830 48e7efb5-ca39-0410-a469-dd3cf9ba447f

buildtools/Cmake/CompleteInFiles.cmake
buildtools/Cmake/gras_config.h.in

index 749356f..e5b01d7 100644 (file)
@@ -484,6 +484,7 @@ if(HAVE_MAKECONTEXT)
                )
        
        file(READ ${simgrid_BINARY_DIR}/conftestval MAKECONTEXT_ADDR_SIZE)
                )
        
        file(READ ${simgrid_BINARY_DIR}/conftestval MAKECONTEXT_ADDR_SIZE)
+       message("MAKECONTEXT_ADDR_SIZE : ${MAKECONTEXT_ADDR_SIZE}")
        string(REPLACE "\n" "" MAKECONTEXT_ADDR_SIZE "${MAKECONTEXT_ADDR_SIZE}")
        string(REGEX MATCH ;^.*,;MAKECONTEXT_ADDR "${MAKECONTEXT_ADDR_SIZE}")
        string(REGEX MATCH ;,.*$; MAKECONTEXT_SIZE "${MAKECONTEXT_ADDR_SIZE}")
        string(REPLACE "\n" "" MAKECONTEXT_ADDR_SIZE "${MAKECONTEXT_ADDR_SIZE}")
        string(REGEX MATCH ;^.*,;MAKECONTEXT_ADDR "${MAKECONTEXT_ADDR_SIZE}")
        string(REGEX MATCH ;,.*$; MAKECONTEXT_SIZE "${MAKECONTEXT_ADDR_SIZE}")
@@ -623,7 +624,7 @@ foreach(fct ${diff_va})
                endif(${fctbis} STREQUAL "memcpy((void *)(d), (void *)(s)), sizeof(*(s))")
                                
                if(NOT STATUS_OK)
                endif(${fctbis} STREQUAL "memcpy((void *)(d), (void *)(s)), sizeof(*(s))")
                                
                if(NOT STATUS_OK)
-               set(__VA_COPY_USE "__VA_COPY_USE_${ac_cv_va_copy}")
+               set(__VA_COPY_USE "__VA_COPY_USE_${ac_cv_va_copy}(d, s)")
                endif(NOT STATUS_OK)
                set(STATUS_OK "1")
                
                endif(NOT STATUS_OK)
                set(STATUS_OK "1")
                
index 5dcb5b1..e313981 100644 (file)
 #ifndef _WIN32
        #cmakedefine _WIN32 @_WIN32@
 #endif
 #ifndef _WIN32
        #cmakedefine _WIN32 @_WIN32@
 #endif
+#ifndef WIN32
+       #cmakedefine WIN32 @WIN32@
+#endif
+#ifdef _WIN32
+       #define DLL_EXPORT
+       #define __VISUALC__
+#endif
 
 /* Set to true if enable_model-checking is true */
 #cmakedefine MMALLOC_WANT_OVERIDE_LEGACY @MMALLOC_WANT_OVERIDE_LEGACY@
 
 /* Set to true if enable_model-checking is true */
 #cmakedefine MMALLOC_WANT_OVERIDE_LEGACY @MMALLOC_WANT_OVERIDE_LEGACY@
 #cmakedefine ADDR2LINE "@ADDR2LINE@"
 
 /* Predefined possible va_copy() implementation (id: ASP) */
 #cmakedefine ADDR2LINE "@ADDR2LINE@"
 
 /* Predefined possible va_copy() implementation (id: ASP) */
-#cmakedefine __VA_COPY_USE_ASP @__VA_COPY_USE_ASP@
+#cmakedefine __VA_COPY_USE_ASP(d, s) @__VA_COPY_USE_ASP@
 
 /* Predefined possible va_copy() implementation (id: ASS) */
 
 /* Predefined possible va_copy() implementation (id: ASS) */
-#cmakedefine __VA_COPY_USE_ASS @__VA_COPY_USE_ASS@
+#cmakedefine __VA_COPY_USE_ASS(d, s) @__VA_COPY_USE_ASS@
 
 /* Predefined possible va_copy() implementation (id: C99) */
 
 /* Predefined possible va_copy() implementation (id: C99) */
-#cmakedefine __VA_COPY_USE_C99 @__VA_COPY_USE_C99@
+#cmakedefine __VA_COPY_USE_C99(d, s) @__VA_COPY_USE_C99@
 
 /* Define if xbt contexts are based on our threads implementation or not */
 #cmakedefine CONTEXT_THREADS @CONTEXT_THREADS@
 
 /* Define if xbt contexts are based on our threads implementation or not */
 #cmakedefine CONTEXT_THREADS @CONTEXT_THREADS@
 #cmakedefine CONTEXT_UCONTEXT @CONTEXT_UCONTEXT@
 
 /* Predefined possible va_copy() implementation (id: CPP) */
 #cmakedefine CONTEXT_UCONTEXT @CONTEXT_UCONTEXT@
 
 /* Predefined possible va_copy() implementation (id: CPP) */
-#cmakedefine __VA_COPY_USE_CPP @__VA_COPY_USE_CPP@
+#cmakedefine __VA_COPY_USE_CPP(d, s) @__VA_COPY_USE_CPP@
 
 /* Predefined possible va_copy() implementation (id: CPS) */
 
 /* Predefined possible va_copy() implementation (id: CPS) */
-#cmakedefine __VA_COPY_USE_CPS @__VA_COPY_USE_CPS@
+#cmakedefine __VA_COPY_USE_CPS(d, s) @__VA_COPY_USE_CPS@
 
 /* Predefined possible va_copy() implementation (id: GCB) */
 
 /* Predefined possible va_copy() implementation (id: GCB) */
-#cmakedefine __VA_COPY_USE_GCB @__VA_COPY_USE_GCB@
+#cmakedefine __VA_COPY_USE_GCB(d, s) @__VA_COPY_USE_GCB@
 
 /* Predefined possible va_copy() implementation (id: GCH) */
 
 /* Predefined possible va_copy() implementation (id: GCH) */
-#cmakedefine __VA_COPY_USE_GCH @__VA_COPY_USE_GCH@
+#cmakedefine __VA_COPY_USE_GCH(d, s) @__VA_COPY_USE_GCH@
 
 /* Predefined possible va_copy() implementation (id: GCM) */
 
 /* Predefined possible va_copy() implementation (id: GCM) */
-#cmakedefine __VA_COPY_USE_GCM @__VA_COPY_USE_GCM@
+#cmakedefine __VA_COPY_USE_GCM(d, s) @__VA_COPY_USE_GCM@
 
 /* Defined if arrays in struct can straddle struct alignment boundaries. This
    is like than the structure compaction above, but this time, the argument to
 
 /* Defined if arrays in struct can straddle struct alignment boundaries. This
    is like than the structure compaction above, but this time, the argument to
    `char[]'. */
 #cmakedefine YYTEXT_POINTER 
 
    `char[]'. */
 #cmakedefine YYTEXT_POINTER 
 
-/* Optional va_copy() implementation activation */
-#ifndef HAVE_VA_COPY
-#define va_copy(d, s) __VA_COPY_USE
+ #ifndef __VISUALC__
+       /* Optional va_copy() implementation activation */
+       #ifndef HAVE_VA_COPY
+       #define va_copy(d, s) __VA_COPY_USE(d, s)
+       #endif
+       /* Define to id of used va_copy() implementation */
+       #cmakedefine __VA_COPY_USE(d, s) @__VA_COPY_USE@
 #endif
 
 #endif
 
-
-/* Define to id of used va_copy() implementation */
-#cmakedefine __VA_COPY_USE @__VA_COPY_USE@
-
 /* Define to empty if `const' does not conform to ANSI C. */
 #cmakedefine const @const@
 
 /* Define to empty if `const' does not conform to ANSI C. */
 #cmakedefine const @const@
 
 #endif
 
 /* Define to `unsigned int' if <sys/types.h> does not define. */
 #endif
 
 /* Define to `unsigned int' if <sys/types.h> does not define. */
-#cmakedefine size_t @size_t@
+#cmakedefine size_t @size_t@
\ No newline at end of file