XBT_LOG_NEW_CATEGORY(smpi, "All SMPI categories"); /* lives here even if that's a bit odd to solve linking issues: this is used in xbt_log_file_appender to detect whether SMPI is used (and thus whether we should unbench the writing to disk) */
-char *xbt_binary_name = NULL; /* Mandatory to retrieve neat backtraces */
+char *xbt_binary_name = NULL; /* Name of the system process containing us (mandatory to retrieve neat backtraces) */
int xbt_initialized = 0;
int _surf_do_model_check = 0;
/** @brief Initialize the xbt mechanisms. */
void xbt_init(int *argc, char **argv)
{
- // FIXME it would be nice to assert that this function is called only once. But each gras process do call it...
- xbt_initialized++;
-
- if (xbt_initialized > 1)
+ if (xbt_initialized++) {
+ XBT_DEBUG("XBT was initialized %d times.", xbt_initialized);
return;
+ }
xbt_binary_name = xbt_strdup(argv[0]);
srand((unsigned int) time(NULL));