Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[From Arnaud Giersch] Add missing {BEGIN,END}_DECL() for compiling in C++.
[simgrid.git] / include / simgrid_config.h.in
index 18e01d0..d5e8cab 100644 (file)
@@ -9,8 +9,28 @@
 
 #include "xbt/misc.h"           /* XBT_PUBLIC */
 
+#ifdef _XBT_DLL_EXPORT
+       #define DLL_EXPORT
+#else
+       #ifdef _XBT_DLL_STATIC
+               #define DLL_STATIC
+       #else
+               #define DLL_IMPORT
+       #endif
+#endif
+
+#cmakedefine _XBT_WIN32 @_XBT_WIN32@   //this variable is set if it is a windows platform
+#cmakedefine _WIN32 @_WIN32@                   //this variable is set if it is a 32 bits windows platform
+#cmakedefine _WIN64 @_WIN64@                   //this variable is set if it is a 64 bits  windows platform
+#cmakedefine __VISUALC__ @__VISUALC__@
+#cmakedefine __BORLANDC__ @__BORLANDC__@
+
 #ifndef SIMGRID_PUBLIC_CONFIG_H
 #define SIMGRID_PUBLIC_CONFIG_H
+SG_BEGIN_DECL()
+
+/* Define to 1 if you have the `mmap' function. */
+#cmakedefine HAVE_MMAP @HAVE_MMAP@
 
 /* Get the config */
 #undef SIMGRID_NEED_GETLINE
 
 /* Use that config to declare missing elements */
 #ifdef SIMGRID_NEED_GETLINE
+#include <stdlib.h> /* size_t */
+#include <stdio.h>  /* FILE*  */
 XBT_PUBLIC(long) getline(char **lineptr, size_t * n, FILE * stream);
+#else
+#ifndef _GNU_SOURCE
+       #define _GNU_SOURCE
+#endif
+#include <stdio.h>
 #endif
 
 
@@ -47,6 +74,7 @@ XBT_PUBLIC(int) asprintf(char **ptr, const char *fmt,   /*args */
  * See asprintf()
  */
 #if defined(SIMGRID_NEED_VASPRINTF)||defined(DOXYGEN)
+#include <stdarg.h>
 XBT_PUBLIC(int) vasprintf(char **ptr, const char *fmt, va_list ap);
 #endif
 /** @brief print to allocated string
@@ -56,4 +84,5 @@ XBT_PUBLIC(int) vasprintf(char **ptr, const char *fmt, va_list ap);
 XBT_PUBLIC(char *) bprintf(const char *fmt, ...) _XBT_GNUC_PRINTF(1, 2);
 /** @} */
 
+SG_END_DECL()
 #endif /* SIMGRID_PUBLIC_CONFIG_H */