#include <simgrid_config.h>
-#if !defined(SIMGRID_VERSION) // ========== SimGrid <= 3.5 ============= //
-# error "Unsupported SimGrid version. Need version > 3.5"
-#endif // ============================================================= //
+#if !defined(SIMGRID_VERSION) || SIMGRID_VERSION < 30700UL // == SG < 3.7 == //
+# error "Unsupported SimGrid version. Need version >= 3.7"
+#endif // ================================================================== //
-#if SIMGRID_VERSION < MAKE_SIMGRID_VERSION(3, 7, 0)
-
-#define MSG_task_set_category(task, cat) TRACE_msg_set_task_category(task, cat)
-
-#endif
+#if SIMGRID_VERSION < 30800UL // ============================== SG < 3.8 === //
+# define MSG_init(argc, argv) MSG_global_init(argc, argv)
+# define msg_error_t MSG_error_t
+# define msg_host_t m_host_t
+# define msg_process_t m_process_t
+# define msg_task_t m_task_t
+#else // =================================================================== //
+# define MSG_clean() MSG_OK
+#endif // ================================================================== //
#endif // !SIMGRID_FEATURES_H