-void model_help(const char *category, s_surf_model_description_t * table)
-{
- printf("Long description of the %s models accepted by this simulator:\n", category);
- for (int i = 0; table[i].name; i++)
- printf(" %s: %s\n", table[i].name, table[i].description);
-}
-
-int find_model_description(s_surf_model_description_t* table, std::string name)
-{
- for (int i = 0; table[i].name; i++)
- if (name == table[i].name)
- return i;
-
- if (not table[0].name)
- xbt_die("No model is valid! This is a bug.");
-
- std::string name_list = std::string(table[0].name);
- for (int i = 1; table[i].name; i++)
- name_list = name_list + ", " + table[i].name;
-
- xbt_die("Model '%s' is invalid! Valid models are: %s.", name.c_str(), name_list.c_str());
- return -1;
-}
-
-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");
-}
-
-void surf_init(int *argc, char **argv)