Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Test the dependencies of Mutex transitions
[simgrid.git] / examples / cpp / CMakeLists.txt
index cd6f65e..5ff7e04 100644 (file)
@@ -26,10 +26,6 @@ if(SIMGRID_HAVE_MC)
      set(_${example}_factories "^thread") # Timeout
      add_dependencies(tests-mc s4u-${example})
   endforeach()
-
-  # Make all MC tests buildable together
-  #foreach(example ) # no test to be build in any case
-  #endforeach()
   
   if(HAVE_C_STACK_CLEANER)
     add_executable       (s4u-mc-bugged1-liveness-cleaner-on  EXCLUDE_FROM_ALL s4u-mc-bugged1-liveness/s4u-mc-bugged1-liveness.cpp)
@@ -53,6 +49,18 @@ if(SIMGRID_HAVE_MC)
     set(_mc-bugged1-liveness_disable 1)
   endif()
 
+  # Hijack some regular tests to run them on top of the MC
+  foreach (example synchro-mutex)
+    ADD_TESH(s4u-mc-${example} 
+                       --setenv bindir=${CMAKE_CURRENT_BINARY_DIR}/${example}
+                       --setenv libdir=${CMAKE_BINARY_DIR}/lib
+                       --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms
+                       --setenv srcdir=${CMAKE_CURRENT_SOURCE_DIR}/${example}
+                       --cd ${CMAKE_CURRENT_SOURCE_DIR}/${example}
+                       ${CMAKE_HOME_DIRECTORY}/examples/cpp/${example}/s4u-mc-${example}.tesh)
+  endforeach()
+
+
   # This example never ends, disable it for now
   set(_mc-bugged2-liveness_disable 1)
   
@@ -82,6 +90,11 @@ else()
     set(_${example}_disable 1)
   endforeach()
 endif()
+# The tesh files of MC hijacked tests must always be added to the distribution
+foreach (example synchro-mutex)
+  set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${example}/s4u-mc-${example}.tesh)
+endforeach()
+
 
 if(NOT HAVE_GRAPHVIZ)
   set(_dag-from-dot_disable 1)