#ifdef HAVE_RUBY
void SIMIX_ctx_ruby_factory_init(smx_context_factory_t *factory);
#endif
-
+
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_context, simix, "Context switching mecanism");
const char *xbt_ctx_factory_to_use = NULL;
#ifdef CONTEXT_THREADS
/* context switch based os thread */
SIMIX_ctx_thread_factory_init(&simix_global->context_factory);
-#elif !defined(WIN32)
+#elif defined(CONTEXT_UCONTEXT)
/* context switch based ucontext */
SIMIX_ctx_sysv_factory_init(&simix_global->context_factory);
+#elif defined(_XBT_WIN32)
+ /* context switch based windows */
#else
/* context switch is not allowed on Windows */
#error ERROR [__FILE__, line __LINE__]: no context based implementation specified.
#endif /* CONTEXT_THREADS */
else if (!strcmp(name, "sysv"))
- #if !defined(WIN32) && !defined(CONTEXT_THREADS)
+ #if !defined(_XBT_WIN32) && !defined(CONTEXT_THREADS)
SIMIX_ctx_sysv_factory_init(factory);
#else
THROW0(not_found_error, 0, "Factory 'sysv' does not exist: no System V thread support under Windows");