-void sg_version_check(int lib_version_major, int lib_version_minor, int lib_version_patch)
-{
- if ((lib_version_major != SIMGRID_VERSION_MAJOR) || (lib_version_minor != SIMGRID_VERSION_MINOR)) {
- fprintf(stderr, "FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
- "and then linked against SimGrid %d.%d.%d. Please fix this.\n",
- lib_version_major, lib_version_minor, lib_version_patch, SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR,
- SIMGRID_VERSION_PATCH);
- abort();
- }
- if (lib_version_patch != SIMGRID_VERSION_PATCH) {
- if (SIMGRID_VERSION_PATCH >= 90 || lib_version_patch >= 90) {
- fprintf(
- stderr,
- "FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
- "and then linked against SimGrid %d.%d.%d. \n"
- "One of them is a development version, and should not be mixed with the stable release. Please fix this.\n",
- lib_version_major, lib_version_minor, lib_version_patch, SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR,
- SIMGRID_VERSION_PATCH);
- abort();
- }
- fprintf(stderr, "Warning: Your program was compiled with SimGrid version %d.%d.%d, "
- "and then linked against SimGrid %d.%d.%d. Proceeding anyway.\n",
- lib_version_major, lib_version_minor, lib_version_patch, SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR,
- SIMGRID_VERSION_PATCH);
- }
-}
-
-void sg_version_get(int* ver_major, int* ver_minor, int* ver_patch)
-{
- *ver_major = SIMGRID_VERSION_MAJOR;
- *ver_minor = SIMGRID_VERSION_MINOR;
- *ver_patch = SIMGRID_VERSION_PATCH;
-}
-
-void sg_version()
-{
- std::printf("This program was linked against %s (git: %s), found in %s.\n",
- SIMGRID_VERSION_STRING, SIMGRID_GIT_VERSION, SIMGRID_INSTALL_PREFIX);
-
-#if SIMGRID_HAVE_MC
- std::printf(" Model-checking support compiled in.\n");
-#else
- std::printf(" Model-checking support disabled at compilation.\n");
-#endif
-
-#if SIMGRID_HAVE_NS3
- std::printf(" NS3 support compiled in.\n");
-#else
- std::printf(" NS3 support disabled at compilation.\n");
-#endif
-
-#if SIMGRID_HAVE_JEDULE
- std::printf(" Jedule support compiled in.\n");
-#else
- std::printf(" Jedule support disabled at compilation.\n");
-#endif
-
-#if SIMGRID_HAVE_LUA
- std::printf(" Lua support compiled in.\n");
-#else
- std::printf(" Lua support disabled at compilation.\n");
-#endif
-
-#if SIMGRID_HAVE_MALLOCATOR
- std::printf(" Mallocator support compiled in.\n");
-#else
- std::printf(" Mallocator support disabled at compilation.\n");
-#endif
-
- std::printf("\nTo cite SimGrid in a publication, please use:\n"
- " Henri Casanova, Arnaud Giersch, Arnaud Legrand, Martin Quinson, Frédéric Suter. \n"
- " Versatile, Scalable, and Accurate Simulation of Distributed Applications and Platforms. \n"
- " Journal of Parallel and Distributed Computing, Elsevier, 2014, 74 (10), pp.2899-2917.\n");
- std::printf("The pdf file and a BibTeX entry for LaTeX users can be found at http://hal.inria.fr/hal-01017319\n");
-}