X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/0e88b5f88f2a9f3f2e559af1b3104156467b9be4..ae7de36436dc212a9537e15b06cf433f50594f63:/include/simgrid_config.h.in diff --git a/include/simgrid_config.h.in b/include/simgrid_config.h.in index 74c1495de9..a12421b3f4 100644 --- a/include/simgrid_config.h.in +++ b/include/simgrid_config.h.in @@ -1,5 +1,3 @@ -/* $Id$ */ - /* simgrid_config.h - Results of the configure made visible to user code */ /* Copyright (c) 2009, 2010, 2011. Da SimGrid team. All rights reserved. */ @@ -14,20 +12,42 @@ SG_BEGIN_DECL() +/** Define the version numbers of the used header files. + sg_version() can be used to retrieve the version of the dynamic library. + But actually, if these numbers don't match, SimGrid refuses to start (so you shouldn't have to care about sg_version() yourself) */ + +#define SIMGRID_VERSION_MAJOR @SIMGRID_VERSION_MAJOR@ +#define SIMGRID_VERSION_MINOR @SIMGRID_VERSION_MINOR@ +#define SIMGRID_VERSION_PATCH @SIMGRID_VERSION_PATCH@ + /* Version X.Y.Z will get version number XYZ: all digits concatenated without dots * (with Y and Z must be on two positions)*/ -#define SIMGRID_VERSION 30599 /* 3.5.99, aka 3.6 svn */ +#define MAKE_SIMGRID_VERSION(major, minor, patch) \ + (100UL * (100UL * (major) + (minor)) + (patch)) +#define SIMGRID_VERSION MAKE_SIMGRID_VERSION(SIMGRID_VERSION_MAJOR, \ + SIMGRID_VERSION_MINOR, \ + SIMGRID_VERSION_PATCH) + +/** Retrieves the version numbers of the used dynamic library (so, DLL or dynlib) , while + SIMGRID_VERSION_MAJOR and friends give the version numbers of the used header files */ +XBT_PUBLIC(void) sg_version(int *major,int *minor,int *patch); /* take care of DLL usage madness */ #ifdef _XBT_DLL_EXPORT - #define DLL_EXPORT + #ifndef DLL_EXPORT + #define DLL_EXPORT + #endif #else #ifdef _XBT_DLL_STATIC - #define DLL_STATIC + #ifndef DLL_STATIC + #define DLL_STATIC + #endif #else - #define DLL_IMPORT + #ifndef DLL_EXPORT + #define DLL_IMPORT + #endif #endif #endif @@ -116,5 +136,11 @@ XBT_PUBLIC(char *) bprintf(const char *fmt, ...) _XBT_GNUC_PRINTF(1, 2); /* Tracking of latency bound */ #cmakedefine HAVE_LATENCY_BOUND_TRACKING @HAVE_LATENCY_BOUND_TRACKING@ +/* If __thread is available */ +#cmakedefine HAVE_THREAD_LOCAL_STORAGE @HAVE_THREAD_LOCAL_STORAGE@ + +/* If Model-Checking support was requested */ +#cmakedefine HAVE_MC @HAVE_MC@ + SG_END_DECL() #endif /* SIMGRID_PUBLIC_CONFIG_H */