Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Compile trace_mgr with g++. Next step: objectification
[simgrid.git] / src / simix / smx_global.cpp
index ea12e3d..8ffbde1 100644 (file)
@@ -37,6 +37,7 @@
 #endif 
 
 #include "src/mc/mc_record.h"
+#include "src/surf/platform.hpp"
 
 #ifdef HAVE_SMPI
 #include "src/smpi/private.h"
@@ -100,8 +101,13 @@ static void _XBT_CALL segvhandler(int signum, siginfo_t *siginfo, void *context)
     fprintf(stderr, "Segmentation fault.\n");
 #ifdef HAVE_SMPI
     if (smpi_enabled() && !smpi_privatize_global_variables) {
+#ifdef HAVE_PRIVATIZATION
       fprintf(stderr,
         "Try to enable SMPI variable privatization with --cfg=smpi/privatize_global_variables:yes.\n");
+#else
+      fprintf(stderr,
+        "Sadly, your system does not support --cfg=smpi/privatize_global_variables:yes (yet).\n");
+#endif
     }
 #endif
   }
@@ -230,8 +236,10 @@ void SIMIX_global_init(int *argc, char **argv)
 #endif
     /* register a function to be called by SURF after the environment creation */
     sg_platf_init();
-    sg_platf_postparse_add_cb(SIMIX_post_create_environment);
-    surf_on_host_created(SIMIX_host_create);
+    simgrid::surf::on_postparse.connect(SIMIX_post_create_environment);
+    simgrid::s4u::Host::onCreation.connect([](simgrid::s4u::Host& host) {
+      SIMIX_host_create(&host);
+    });
     surf_on_storage_created(SIMIX_storage_create_);
 
   }