Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Unify naming of contexts support.
authordegomme <augustin.degomme@unibas.ch>
Thu, 4 Feb 2016 09:22:37 +0000 (10:22 +0100)
committerdegomme <augustin.degomme@unibas.ch>
Thu, 4 Feb 2016 09:22:41 +0000 (10:22 +0100)
HAVE_RAWCTX -> HAVE_RAW_CONTEXTS
HAVE_BOOST_CONTEXT -> HAVE_BOOST_CONTEXTS
CONTEXT_UCONTEXT -> HAVE_UCONTEXT_CONTEXTS
CONTEXT_THREADS -> HAVE_THREAD_CONTEXTS

17 files changed:
CMakeLists.txt
include/simgrid_config.h.in
src/simgrid/sg_config.c
src/simix/BoostContext.cpp
src/simix/BoostContext.hpp
src/simix/RawContext.cpp
src/simix/UContext.cpp
src/simix/smx_context.cpp
src/surf/surf_interface.cpp
src/xbt/xbt_os_thread.c
src/xbt/xbt_sg_stubs.c
tools/cmake/DefinePackages.cmake
tools/cmake/MakeLib.cmake
tools/cmake/PrintArgs.cmake
tools/cmake/Tests.cmake
tools/cmake/scripts/generate_memcheck_tests.pl
tools/cmake/src/internal_config.h.in

index 3747faf..be8918f 100644 (file)
@@ -214,7 +214,7 @@ IF(CMAKE_SYSTEM_PROCESSOR MATCHES ".86|AMD64|amd64")
   if (MSVC)
     message(STATUS "Disable fast raw contextes on Microsoft Visual.")
   else()
-    set(HAVE_RAWCTX 1)
+    set(HAVE_RAW_CONTEXTS 1)
   endif()
 
 ENDIF()
@@ -267,15 +267,15 @@ if(Boost_FOUND AND Boost_CONTEXT_FOUND)
   # We should use feature detection for this instead:
   if (Boost_VERSION LESS 105600)
     message("Found Boost.Context API v1")
-    set(HAVE_BOOST_CONTEXT 1)
+    set(HAVE_BOOST_CONTEXTS 1)
   else()
     message("Found Boost.Context API v2")
-    set(HAVE_BOOST_CONTEXT 2)
+    set(HAVE_BOOST_CONTEXTS 2)
   endif()
 else()
   message ("   boost        : found.")
   message ("   boost-context: missing. Install libboost-context-dev for this optional feature.")
-  set(HAVE_BOOST_CONTEXT 0)
+  set(HAVE_BOOST_CONTEXTS 0)
 endif()
 
 # Checks for header libraries functions.
@@ -383,8 +383,8 @@ if(WIN32) # Those files are not detected despite being present
   set(HAVE_MAKECONTEXT 1)
 endif()
 
-set(CONTEXT_UCONTEXT 0)
-set(CONTEXT_THREADS 0)
+set(HAVE_UCONTEXT_CONTEXTS 0)
+set(HAVE_THREAD_CONTEXTS 0)
 
 if(enable_jedule)
   set(HAVE_JEDULE 1)
@@ -626,12 +626,12 @@ endif()
 #If can have both context
 
 if(HAVE_UCONTEXT)
-  set(CONTEXT_UCONTEXT 1)
+  set(HAVE_UCONTEXT_CONTEXTS 1)
   message("-- Support for ucontext factory")
 endif()
 
 if(HAVE_PTHREAD)
-  set(CONTEXT_THREADS 1)
+  set(HAVE_THREAD_CONTEXTS 1)
   message("-- Support for thread context factory")
 endif()
 
index 1ee0a15..279ba46 100644 (file)
@@ -76,7 +76,7 @@
 #define MALLOCATOR_COMPILED_IN @MALLOCATOR_IS_WANTED@
 
 /* Define if xbt contexts are based on our threads implementation or not */
-#cmakedefine CONTEXT_THREADS @CONTEXT_THREADS@
+#cmakedefine HAVE_THREAD_CONTEXTS @HAVE_THREAD_CONTEXTS@
 
 /* Jedule output  */
 #cmakedefine HAVE_JEDULE @HAVE_JEDULE@
index 310d0f6..8adf5ce 100644 (file)
@@ -711,11 +711,11 @@ void sg_config_init(int *argc, char **argv)
         sprintf(description,
                 "Context factory to use in SIMIX. Possible values: %s",
                 dflt_ctx_fact);
-#ifdef CONTEXT_UCONTEXT
+#ifdef HAVE_UCONTEXT_CONTEXTS
       dflt_ctx_fact = "ucontext";
       p += sprintf(p, ", %s", dflt_ctx_fact);
 #endif
-#ifdef HAVE_RAWCTX
+#ifdef HAVE_RAW_CONTEXTS
       dflt_ctx_fact = "raw";
       p += sprintf(p, ", %s", dflt_ctx_fact);
 #endif
index debd695..3b4e63f 100644 (file)
@@ -38,7 +38,7 @@ public:
   void resume();
 };
 
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
 class BoostParallelContext : public BoostContext {
 public:
   BoostParallelContext(std::function<void()> code,
@@ -66,7 +66,7 @@ BoostContextFactory::BoostContextFactory()
 {
   BoostContext::parallel_ = SIMIX_context_is_parallel();
   if (BoostContext::parallel_) {
-#ifndef CONTEXT_THREADS
+#ifndef HAVE_THREAD_CONTEXTS
     xbt_die("No thread support for parallel context execution");
 #else
     int nthreads = SIMIX_context_get_nthreads();
@@ -81,7 +81,7 @@ BoostContextFactory::BoostContextFactory()
 
 BoostContextFactory::~BoostContextFactory()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   if (BoostContext::parmap_) {
     xbt_parmap_destroy(BoostContext::parmap_);
     BoostContext::parmap_ = nullptr;
@@ -95,7 +95,7 @@ smx_context_t BoostContextFactory::create_context(std::function<void()>  code,
 {
   BoostContext* context = nullptr;
   if (BoostContext::parallel_)
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
     context = this->new_context<BoostParallelContext>(
       std::move(code), cleanup_func, process);
 #else
@@ -109,7 +109,7 @@ smx_context_t BoostContextFactory::create_context(std::function<void()>  code,
 
 void BoostContextFactory::run_all()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   if (BoostContext::parallel_) {
     BoostContext::threads_working_ = 0;
     xbt_parmap_apply(BoostContext::parmap_,
@@ -161,7 +161,7 @@ BoostContext::BoostContext(std::function<void()> code,
                       smx_context_usable_stack_size,
                       smx_ctx_boost_wrapper);
   } else {
-    #if HAVE_BOOST_CONTEXT == 1
+    #if HAVE_BOOST_CONTEXTS == 1
     this->fc_ = new boost::context::fcontext_t();
     #endif
     if (BoostContext::maestro_context_ == nullptr)
@@ -171,7 +171,7 @@ BoostContext::BoostContext(std::function<void()> code,
 
 BoostContext::~BoostContext()
 {
-#if HAVE_BOOST_CONTEXT == 1
+#if HAVE_BOOST_CONTEXTS == 1
   if (!this->stack_)
     delete this->fc_;
 #endif
@@ -185,7 +185,7 @@ BoostContext::~BoostContext()
 void BoostContext::resume()
 {
   SIMIX_context_set_current(this);
-#if HAVE_BOOST_CONTEXT == 1
+#if HAVE_BOOST_CONTEXTS == 1
   boost::context::jump_fcontext(
     maestro_context_->fc_, this->fc_,
     (intptr_t) this);
@@ -215,7 +215,7 @@ void BoostSerialContext::suspend()
       maestro_context_);
   }
   SIMIX_context_set_current((smx_context_t) next_context);
-  #if HAVE_BOOST_CONTEXT == 1
+  #if HAVE_BOOST_CONTEXTS == 1
   boost::context::jump_fcontext(
     this->fc_, next_context->fc_, (intptr_t) next_context);
   #else
@@ -232,7 +232,7 @@ void BoostSerialContext::stop()
 
 // BoostParallelContext
 
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
 
 void BoostParallelContext::suspend()
 {
@@ -252,7 +252,7 @@ void BoostParallelContext::suspend()
   }
 
   SIMIX_context_set_current((smx_context_t) next_context);
-#if HAVE_BOOST_CONTEXT == 1
+#if HAVE_BOOST_CONTEXTS == 1
   boost::context::jump_fcontext(
     this->fc_, next_context->fc_, (intptr_t)next_context);
 #else
@@ -277,7 +277,7 @@ void BoostParallelContext::resume()
   workers_context_[worker_id] = worker_context;
 
   SIMIX_context_set_current(this);
-#if HAVE_BOOST_CONTEXT == 1
+#if HAVE_BOOST_CONTEXTS == 1
   boost::context::jump_fcontext(
     worker_context->fc_, this->fc_, (intptr_t) this);
 #else
index c2df0d1..62b6066 100644 (file)
@@ -36,7 +36,7 @@ protected: // static
   static unsigned long process_index_;
   static BoostContext* maestro_context_;
 protected:
-#if HAVE_BOOST_CONTEXT == 1
+#if HAVE_BOOST_CONTEXTS == 1
   boost::context::fcontext_t* fc_ = nullptr;
 #else
   boost::context::fcontext_t fc_;
index 98c07e8..c4f00e7 100644 (file)
@@ -82,7 +82,7 @@ ContextFactory* raw_factory()
 
 // ***** Loads of static stuff
 
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
 static xbt_parmap_t raw_parmap;
 static simgrid::simix::RawContext** raw_workers_context;    /* space to save the worker context in each thread */
 static unsigned long raw_threads_working;     /* number of threads that have started their work */
@@ -259,7 +259,7 @@ __asm__ (
 
 
 /* If you implement raw contexts for other processors, don't forget to
-   update the definition of HAVE_RAWCTX in tools/cmake/CompleteInFiles.cmake */
+   update the definition of HAVE_RAW_CONTEXTS in tools/cmake/CompleteInFiles.cmake */
 
 raw_stack_t raw_makecontext(void* malloced_stack, int stack_size,
                             rawctx_entry_point_t entry_point, void* arg) {
@@ -285,7 +285,7 @@ RawContextFactory::RawContextFactory()
 #endif
   raw_context_parallel = SIMIX_context_is_parallel();
   if (raw_context_parallel) {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
     int nthreads = SIMIX_context_get_nthreads();
     xbt_os_thread_key_create(&raw_worker_id_key);
     // TODO, lazily init
@@ -304,7 +304,7 @@ RawContextFactory::RawContextFactory()
 
 RawContextFactory::~RawContextFactory()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   if (raw_parmap)
     xbt_parmap_destroy(raw_parmap);
   xbt_free(raw_workers_context);
@@ -379,7 +379,7 @@ void RawContextFactory::run_all_serial()
 
 void RawContextFactory::run_all_parallel()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   raw_threads_working = 0;
   if (raw_parmap == nullptr)
     raw_parmap = xbt_parmap_new(
@@ -427,7 +427,7 @@ void RawContext::suspend_serial()
 
 void RawContext::suspend_parallel()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   /* determine the next context */
   smx_process_t next_work = (smx_process_t) xbt_parmap_next(raw_parmap);
   RawContext* next_context = nullptr;
@@ -468,7 +468,7 @@ void RawContext::resume_serial()
 
 void RawContext::resume_parallel()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   unsigned long worker_id = __sync_fetch_and_add(&raw_threads_working, 1);
   xbt_os_thread_set_specific(raw_worker_id_key, (void*)(uintptr_t) worker_id);
   RawContext* worker_context = (RawContext*) SIMIX_context_self();
index 5b793c5..33532bb 100644 (file)
@@ -65,7 +65,7 @@ namespace simix {
 }
 }
 
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
 static xbt_parmap_t sysv_parmap;
 static simgrid::simix::ParallelUContext** sysv_workers_context;   /* space to save the worker's context in each thread */
 static unsigned long sysv_threads_working;     /* number of threads that have started their work */
@@ -137,7 +137,7 @@ UContextFactory::UContextFactory() : ContextFactory("UContextFactory")
 {
   if (SIMIX_context_is_parallel()) {
     sysv_parallel = true;
-#ifdef CONTEXT_THREADS  /* To use parallel ucontexts a thread pool is needed */
+#ifdef HAVE_THREAD_CONTEXTS  /* To use parallel ucontexts a thread pool is needed */
     int nthreads = SIMIX_context_get_nthreads();
     sysv_parmap = nullptr;
     sysv_workers_context = xbt_new(ParallelUContext*, nthreads);
@@ -153,7 +153,7 @@ UContextFactory::UContextFactory() : ContextFactory("UContextFactory")
 
 UContextFactory::~UContextFactory()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   if (sysv_parmap)
     xbt_parmap_destroy(sysv_parmap);
   xbt_free(sysv_workers_context);
@@ -167,7 +167,7 @@ UContextFactory::~UContextFactory()
 void UContextFactory::run_all()
 {
   if (sysv_parallel) {
-    #ifdef CONTEXT_THREADS
+    #ifdef HAVE_THREAD_CONTEXTS
       sysv_threads_working = 0;
       // Parmap_apply ensures that every working thread get an index in the
       // process_to_run array (through an atomic fetch_and_add),
@@ -306,7 +306,7 @@ void ParallelUContext::stop()
 /** Run one particular simulated process on the current thread. */
 void ParallelUContext::resume()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   // What is my containing body?
   unsigned long worker_id = __sync_fetch_and_add(&sysv_threads_working, 1);
   // Store the number of my containing body in os-thread-specific area :
@@ -347,7 +347,7 @@ void ParallelUContext::resume()
  */
 void ParallelUContext::suspend()
 {
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   /* determine the next context */
   // Get the next soul to embody now:
   smx_process_t next_work = (smx_process_t) xbt_parmap_next(sysv_parmap);
index 4a9c6ae..d630035 100644 (file)
@@ -56,7 +56,7 @@ static e_xbt_parmap_mode_t smx_parallel_synchronization_mode = XBT_PARMAP_DEFAUL
  */
 void SIMIX_context_mod_init(void)
 {
-#if defined(CONTEXT_THREADS) && !defined(HAVE_THREAD_LOCAL_STORAGE)
+#if defined(HAVE_THREAD_CONTEXTS) && !defined(HAVE_THREAD_LOCAL_STORAGE)
   /* the __thread storage class is not available on this platform:
    * use getspecific/setspecific instead to store the current context in each thread */
   xbt_os_thread_key_create(&smx_current_context_key);
@@ -66,37 +66,37 @@ void SIMIX_context_mod_init(void)
     if (simgrid::simix::factory_initializer)
       simix_global->context_factory = simgrid::simix::factory_initializer();
     else { /* use the factory specified by --cfg=contexts/factory:value */
-#if defined(CONTEXT_THREADS)
+#if defined(HAVE_THREAD_CONTEXTS)
       if (!strcmp(smx_context_factory_name, "thread"))
         simix_global->context_factory = simgrid::simix::thread_factory();
 #else
       if (0);
 #endif
-#ifdef CONTEXT_UCONTEXT
+#ifdef HAVE_UCONTEXT_CONTEXTS
       else if (!strcmp(smx_context_factory_name, "ucontext"))
         simix_global->context_factory = simgrid::simix::sysv_factory();
 #endif
-#ifdef HAVE_RAWCTX
+#ifdef HAVE_RAW_CONTEXTS
       else if (!strcmp(smx_context_factory_name, "raw"))
         simix_global->context_factory = simgrid::simix::raw_factory();
 #endif
-#ifdef HAVE_BOOST_CONTEXT
+#ifdef HAVE_BOOST_CONTEXTS
       else if (!strcmp(smx_context_factory_name, "boost"))
         simix_global->context_factory = simgrid::simix::boost_factory();
 #endif
       else {
         XBT_ERROR("Invalid context factory specified. Valid factories on this machine:");
-#ifdef HAVE_RAWCTX
+#ifdef HAVE_RAW_CONTEXTS
         XBT_ERROR("  raw: high performance context factory implemented specifically for SimGrid");
 #else
         XBT_ERROR("  (raw contexts were disabled at compilation time on this machine -- check configure logs for details)");
 #endif
-#ifdef CONTEXT_UCONTEXT
+#ifdef HAVE_UCONTEXT_CONTEXTS
         XBT_ERROR("  ucontext: classical system V contexts (implemented with makecontext, swapcontext and friends)");
 #else
         XBT_ERROR("  (ucontext was disabled at compilation time on this machine -- check configure logs for details)");
 #endif
-#ifdef HAVE_BOOST_CONTEXT
+#ifdef HAVE_BOOST_CONTEXTS
         XBT_ERROR("  boost: this uses the boost libraries context implementation");
 #else
         XBT_ERROR("  (boost was disabled at compilation time on this machine -- check configure logs for details. Did you install the libboost-context-dev package?)");
@@ -238,7 +238,7 @@ void SIMIX_context_set_nthreads(int nb_threads) {
   }   
   
   if (nb_threads > 1) {
-#ifndef CONTEXT_THREADS
+#ifndef HAVE_THREAD_CONTEXTS
     THROWF(arg_error, 0, "The thread factory cannot be run in parallel");
 #endif
   }
index a6a1831..2a86c80 100644 (file)
@@ -130,7 +130,7 @@ s_surf_model_description_t surf_storage_model_description[] = {
   {NULL, NULL,  NULL}      /* this array must be NULL terminated */
 };
 
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
 static xbt_parmap_t surf_parmap = NULL; /* parallel map on models */
 #endif
 
@@ -373,7 +373,7 @@ void surf_exit(void)
     future_evt_set = nullptr;
   }
 
-#ifdef CONTEXT_THREADS
+#ifdef HAVE_THREAD_CONTEXTS
   xbt_parmap_destroy(surf_parmap);
 #endif
 
index 3ef350b..095a28c 100644 (file)
@@ -1,6 +1,6 @@
 /* xbt_os_thread -- portability layer over the pthread API                  */
 /* Used in RL to get win/lin portability, and in SG when CONTEXT_THREAD     */
-/* in SG, when using CONTEXT_UCONTEXT, xbt_os_thread_stub is used instead   */
+/* in SG, when using HAVE_UCONTEXT_CONTEXTS, xbt_os_thread_stub is used instead   */
 
 /* Copyright (c) 2007-2015. The SimGrid Team.
  * All rights reserved.                                                     */
index 5935010..cfb2fea 100644 (file)
@@ -18,9 +18,9 @@
 #include "src/xbt_modinter.h"
 #include "xbt/sysdep.h"
 #include "xbt/xbt_os_thread.h"
-#include "src/portable.h"           /* CONTEXT_THREADS */
+#include "src/portable.h"           /* HAVE_THREAD_CONTEXTS */
 
-#ifndef CONTEXT_THREADS
+#ifndef HAVE_THREAD_CONTEXTS
 #ifndef WIN32
 #ifdef HAVE_PTHREAD
 /* xbt_threads is loaded in libsimgrid when they are used to implement the xbt_context.
index 311833d..ad8c50b 100644 (file)
@@ -387,7 +387,7 @@ else()
 endif()
 
 # Boost context may not be available
-if (HAVE_BOOST_CONTEXT)
+if (HAVE_BOOST_CONTEXTS)
   set(SIMIX_SRC
       ${SIMIX_SRC}
       src/simix/BoostContext.hpp
@@ -730,8 +730,8 @@ set(source_of_generated_headers
   src/context_sysv_config.h.in)
 
 ### depend of some variables setted upper
-# -->CONTEXT_THREADS CONTEXT_UCONTEXT
-if(${CONTEXT_THREADS}) #pthread
+# -->HAVE_THREAD_CONTEXTS HAVE_UCONTEXT_CONTEXTS
+if(${HAVE_THREAD_CONTEXTS}) #pthread
   set(SURF_SRC
     ${SURF_SRC}
     src/simix/ThreadContext.cpp
@@ -745,7 +745,7 @@ else() # NOT pthread
     )
 endif()
 
-if(${CONTEXT_THREADS}) #pthread
+if(${HAVE_THREAD_CONTEXTS}) #pthread
   set(SURF_SRC
     ${SURF_SRC}
     src/xbt/xbt_os_thread.c
@@ -757,7 +757,7 @@ else() # NOT pthread
     )
 endif()
 
-if(${CONTEXT_UCONTEXT}) #ucontext
+if(${HAVE_UCONTEXT_CONTEXTS}) #ucontext
   set(SURF_SRC
     ${SURF_SRC}
     src/simix/UContext.cpp
index b21a0ce..74f907e 100644 (file)
@@ -25,11 +25,11 @@ endif()
 # Compute the dependencies of SimGrid
 #####################################
 set(SIMGRID_DEP "-lm")
-if (HAVE_BOOST_CONTEXT)
+if (HAVE_BOOST_CONTEXTS)
   set(SIMGRID_DEP "${SIMGRID_DEP} ${Boost_CONTEXT_LIBRARY}")
 endif()
 
-if(HAVE_PTHREAD AND ${CONTEXT_THREADS} AND NOT APPLE)
+if(HAVE_PTHREAD AND ${HAVE_THREAD_CONTEXTS} AND NOT APPLE)
   # Clang on recent Mac OS X is not happy about -pthread.
   SET(SIMGRID_DEP "${SIMGRID_DEP} -pthread")
 endif()
index 4acd4e0..258ac30 100644 (file)
@@ -57,8 +57,8 @@ if(enable_print_message)
   message("HAVE_THREAD_LOCAL_STORAGE ...: ${HAVE_THREAD_LOCAL_STORAGE}")
   message("HAVE_MMALLOC ................: ${HAVE_MMALLOC}")
   message("")
-  message("CONTEXT_THREADS .............: ${CONTEXT_THREADS}")
-  message("CONTEXT_UCONTEXT ............: ${CONTEXT_UCONTEXT}")
+  message("HAVE_THREAD_CONTEXTS .............: ${HAVE_THREAD_CONTEXTS}")
+  message("HAVE_UCONTEXT_CONTEXTS ............: ${HAVE_UCONTEXT_CONTEXTS}")
   message("______________________________________________________________________")
   message("______________________________________________________________________ DEBUG END")
   message("")
@@ -119,7 +119,7 @@ message("        Compile Smpi ................: ${HAVE_SMPI}")
 message("        Compile MPI testsuite .......: ${enable_smpi_MPICH3_testsuite}")
 message("        Compile Smpi f77 ............: ${SMPI_FORTRAN}")
 message("        Compile Smpi f90 ............: ${SMPI_FORTRAN}")
-message("        Compile Boost.Context support: ${HAVE_BOOST_CONTEXT}")
+message("        Compile Boost.Context support: ${HAVE_BOOST_CONTEXTS}")
 message("")
 message("        Maintainer mode .............: ${enable_maintainer_mode}")
 message("        Documentation................: ${enable_documentation}")
index e313320..321105e 100644 (file)
@@ -38,10 +38,10 @@ MACRO(ADD_TESH_FACTORIES NAME FACTORIES)
     LIST(REMOVE_AT ARGR 0)
   ENDFOREACH()
   FOREACH(FACTORY ${FACTORIES})
-    if ((${FACTORY} STREQUAL "thread" AND CONTEXT_THREADS) OR
-        (${FACTORY} STREQUAL "boost" AND HAVE_BOOST_CONTEXT) OR
-        (${FACTORY} STREQUAL "raw" AND HAVE_RAWCTX) OR
-        (${FACTORY} STREQUAL "ucontext" AND CONTEXT_UCONTEXT))
+    if ((${FACTORY} STREQUAL "thread" AND HAVE_THREAD_CONTEXTS) OR
+        (${FACTORY} STREQUAL "boost" AND HAVE_BOOST_CONTEXTS) OR
+        (${FACTORY} STREQUAL "raw" AND HAVE_RAW_CONTEXTS) OR
+        (${FACTORY} STREQUAL "ucontext" AND HAVE_UCONTEXT_CONTEXTS))
       ADD_TESH("${NAME}-${FACTORY}" "--cfg" "contexts/factory:${FACTORY}" ${ARGR})
     ENDIF()
   ENDFOREACH()
@@ -97,7 +97,7 @@ IF(NOT enable_memcheck)
 
     ADD_TESH_FACTORIES(mc-bugged1                "ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1.tesh)
     ADD_TESH_FACTORIES(mc-bugged2                "ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged2.tesh)
-    IF(CONTEXT_UCONTEXT AND PROCESSOR_x86_64) # liveness model-checking works only on 64bits (for now ...)
+    IF(HAVE_UCONTEXT_CONTEXTS AND PROCESSOR_x86_64) # liveness model-checking works only on 64bits (for now ...)
       ADD_TESH(mc-bugged1-liveness-ucontext         --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness.tesh)
       ADD_TESH(mc-bugged1-liveness-ucontext-sparse  --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_sparse.tesh)
       ADD_TESH(mc-bugged1-liveness-visited-ucontext --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_visited.tesh)
@@ -116,20 +116,20 @@ IF(NOT enable_memcheck)
 
   ### SIMIX ###
   # BEGIN TESH TESTS
-  IF(HAVE_RAWCTX)
+  IF(HAVE_RAW_CONTEXTS)
     ADD_TESH(tesh-simix-factory-default          --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_raw.tesh)
-  ELSEIF(CONTEXT_UCONTEXT)
+  ELSEIF(HAVE_UCONTEXT_CONTEXTS)
     ADD_TESH(tesh-simix-factory-default          --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_ucontext.tesh)
   ELSE()
     ADD_TESH(tesh-simix-factory-default          --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_thread.tesh)
   ENDIF()
-  IF(CONTEXT_THREADS)
+  IF(HAVE_THREAD_CONTEXTS)
   ADD_TESH(tesh-simix-factory-thread             --cfg contexts/factory:thread --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_thread.tesh)
   ENDIF()
-  IF(HAVE_RAWCTX)
+  IF(HAVE_RAW_CONTEXTS)
     ADD_TESH(tesh-simix-factory-raw              --cfg contexts/factory:raw --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_raw.tesh)
   ENDIF()
-  IF(CONTEXT_UCONTEXT)
+  IF(HAVE_UCONTEXT_CONTEXTS)
     ADD_TESH(tesh-simix-factory-ucontext         --cfg contexts/factory:ucontext --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/simix/check_defaults --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/simix/check_defaults factory_ucontext.tesh)
   ENDIF()
   # END TESH TESTS
@@ -141,13 +141,13 @@ IF(NOT enable_memcheck)
     IF(WIN32 OR CMAKE_SYSTEM_NAME MATCHES "Darwin")
       # These tests are known to fail on Windows and Mac OS X
       # (the expected error message is not shown).
-      IF(CONTEXT_THREADS)
+      IF(HAVE_THREAD_CONTEXTS)
       SET_TESTS_PROPERTIES(stack-overflow-thread PROPERTIES WILL_FAIL true)
       ENDIF()
-      IF(CONTEXT_UCONTEXT)
+      IF(HAVE_UCONTEXT_CONTEXTS)
         SET_TESTS_PROPERTIES(stack-overflow-ucontext PROPERTIES WILL_FAIL true)
       ENDIF()
-      IF(HAVE_RAWCTX)
+      IF(HAVE_RAW_CONTEXTS)
         SET_TESTS_PROPERTIES(stack-overflow-raw PROPERTIES WILL_FAIL true)
       ENDIF()
     ENDIF()
@@ -418,15 +418,15 @@ IF(NOT enable_memcheck)
       ADD_TESH(tesh-smpi-clusters-types --cfg smpi/alltoall:mvapich2 --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/smpi/alltoall --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/alltoall clusters.tesh)
     # END TESH TESTS
     IF(enable_smpi_MPICH3_testsuite)
-      IF(CONTEXT_THREADS)
+      IF(HAVE_THREAD_CONTEXTS)
         ADD_TEST(test-smpi-mpich3-coll-thread      ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/coll ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/coll -tests=testlist -execarg=--cfg=contexts/factory:thread -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION})
         SET_TESTS_PROPERTIES(test-smpi-mpich3-coll-thread    PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
       ENDIF()
-      IF(CONTEXT_UCONTEXT)
+      IF(HAVE_UCONTEXT_CONTEXTS)
         ADD_TEST(test-smpi-mpich3-coll-ompi-ucontext ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/coll ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/coll -tests=testlist -execarg=--cfg=contexts/factory:ucontext -execarg=--cfg=smpi/coll_selector:ompi -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION} -execarg=--cfg=smpi/bcast:binomial_tree)
         SET_TESTS_PROPERTIES(test-smpi-mpich3-coll-ompi-ucontext PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
       ENDIF()
-      IF(HAVE_RAWCTX)
+      IF(HAVE_RAW_CONTEXTS)
         ADD_TEST(test-smpi-mpich3-coll-mpich-raw   ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/coll ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/coll -tests=testlist -execarg=--cfg=contexts/factory:raw -execarg=--cfg=smpi/coll_selector:mpich -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION})
       ADD_TEST(test-smpi-mpich3-coll-ompi-raw ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/coll ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/coll -tests=testlist -execarg=--cfg=contexts/factory:raw -execarg=--cfg=smpi/coll_selector:ompi -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION} -execarg=--cfg=smpi/bcast:binomial_tree)
       ADD_TEST(test-smpi-mpich3-coll-mpich-raw ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/coll ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/coll -tests=testlist -execarg=--cfg=contexts/factory:raw -execarg=--cfg=smpi/coll_selector:mpich -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION})
@@ -434,7 +434,7 @@ IF(NOT enable_memcheck)
       ADD_TEST(test-smpi-mpich3-coll-impi-raw ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/coll ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/coll -tests=testlist -execarg=--cfg=contexts/factory:raw -execarg=--cfg=smpi/coll_selector:impi -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION})
         SET_TESTS_PROPERTIES(test-smpi-mpich3-coll-mpich-raw test-smpi-mpich3-coll-ompi-raw test-smpi-mpich3-coll-mpich-raw test-smpi-mpich3-coll-mvapich2-raw test-smpi-mpich3-coll-impi-raw  PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
       ENDIF()
-      IF(HAVE_RAWCTX)
+      IF(HAVE_RAW_CONTEXTS)
         ADD_TEST(test-smpi-mpich3-attr-raw       ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/attr ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/attr -tests=testlist -execarg=--cfg=contexts/factory:raw)
         ADD_TEST(test-smpi-mpich3-comm-raw       ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/comm ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/comm -tests=testlist -execarg=--cfg=contexts/factory:raw)
         ADD_TEST(test-smpi-mpich3-init-raw       ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/init ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/init -tests=testlist -execarg=--cfg=contexts/factory:raw)
@@ -447,7 +447,7 @@ IF(NOT enable_memcheck)
         ADD_TEST(test-smpi-mpich3-perf-raw       ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/perf ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/perf -tests=testlist -execarg=--cfg=contexts/factory:raw -execarg=--cfg=smpi/running_power:-1)
         SET_TESTS_PROPERTIES(test-smpi-mpich3-attr-raw test-smpi-mpich3-comm-raw test-smpi-mpich3-init-raw test-smpi-mpich3-datatype-raw test-smpi-mpich3-group-raw test-smpi-mpich3-pt2pt-raw test-smpi-mpich3-topo-raw test-smpi-mpich3-rma-raw test-smpi-mpich3-info-raw PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
       ENDIF()
-      IF(SMPI_FORTRAN AND CONTEXT_THREADS)
+      IF(SMPI_FORTRAN AND HAVE_THREAD_CONTEXTS)
         ADD_TEST(test-smpi-mpich3-thread-f77     ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/f77/ ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/f77/ -tests=testlist -execarg=--cfg=contexts/stack_size:8000 -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION})
         SET_TESTS_PROPERTIES(test-smpi-mpich3-thread-f77 PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
         ADD_TEST(test-smpi-mpich3-thread-f90     ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/f90/ ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/f90/ -tests=testlist -execarg=--cfg=smpi/privatize_global_variables:${HAVE_PRIVATIZATION})
index e3fa468..130b0c3 100755 (executable)
@@ -152,16 +152,16 @@ while ( defined( $line = <MAKETEST> ) ) {
                       foreach my $factory (split(';', $factories)) {
                         $close=0;
                         if( $factory =~ /^raw/) {
-                            print "${indent}if(HAVE_RAWCTX)\n";
+                            print "${indent}if(HAVE_RAW_CONTEXTS)\n";
                             $close=1;
                         }elsif( $factory =~ /^boost/) {
-                            print "${indent}if(HAVE_BOOST_CONTEXT)\n";
+                            print "${indent}if(HAVE_BOOST_CONTEXTS)\n";
                             $close=1;
                         }elsif( $factory =~ /^ucontext/) {
-                            print "${indent}if(CONTEXT_UCONTEXT)\n";
+                            print "${indent}if(HAVE_UCONTEXT_CONTEXTS)\n";
                             $close=1;
                         }elsif( $factory =~ /^thread/) {
-                            print "${indent}if(CONTEXT_THREADS)\n";
+                            print "${indent}if(HAVE_THREAD_CONTEXTS)\n";
                             $close=1;
                         }
                         print "${indent}ADD_TEST(NAME memcheck-$name_test-$factory-$count\n";
index 9a41c9e..18e40fd 100644 (file)
 #cmakedefine __VA_COPY_USE_C99(d, s) @__VA_COPY_USE_C99@
 
 /* Define if xbt contexts are based on our threads implementation or not */
-#cmakedefine CONTEXT_THREADS @CONTEXT_THREADS@
+#cmakedefine HAVE_THREAD_CONTEXTS @HAVE_THREAD_CONTEXTS@
 
 /* Define to 1 if you have the <ucontext.h> header file. */
 #cmakedefine HAVE_UCONTEXT_H @HAVE_UCONTEXT_H@
 
 /* Define if xbt contexts are based on ucontext or not */
-#cmakedefine CONTEXT_UCONTEXT @CONTEXT_UCONTEXT@
+#cmakedefine HAVE_UCONTEXT_CONTEXTS @HAVE_UCONTEXT_CONTEXTS@
 
 /* Predefined possible va_copy() implementation (id: CPP) */
 #cmakedefine __VA_COPY_USE_CPP(d, s) @__VA_COPY_USE_CPP@
 #cmakedefine PROCESSOR_i686 @PROCESSOR_i686@
 #cmakedefine PROCESSOR_x86_64 @PROCESSOR_x86_64@
 #cmakedefine CMAKE_SYSTEM_PROCESSOR @CMAKE_SYSTEM_PROCESSOR@
-#cmakedefine HAVE_RAWCTX @HAVE_RAWCTX@
-#cmakedefine HAVE_BOOST_CONTEXT @HAVE_BOOST_CONTEXT@
+#cmakedefine HAVE_RAW_CONTEXTS @HAVE_RAW_CONTEXTS@
+#cmakedefine HAVE_BOOST_CONTEXTS @HAVE_BOOST_CONTEXTS@
 
 /* Define to 1 if you have the GNU ld library */
 #cmakedefine HAVE_GNU_LD @HAVE_GNU_LD@