]> AND Public Git Repository - simgrid.git/blobdiff - examples/cpp/CMakeLists.txt
Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
In smpi::Group, 'index' is in fact a PID. Fix type and rename.
[simgrid.git] / examples / cpp / CMakeLists.txt
index fc3d688f8af27e6d616158c93b417ccf10bae1f5..5f0f776854a46f14876536efbe2adef94c4dbb54 100644 (file)
@@ -12,7 +12,7 @@ set(_dht-kademlia_sources dht-kademlia/s4u-dht-kademlia.cpp dht-kademlia/s4u-dht
                           dht-kademlia/routing_table.cpp dht-kademlia/routing_table.hpp
                           dht-kademlia/answer.cpp dht-kademlia/answer.hpp dht-kademlia/message.hpp)
 
-set(_actor-stacksize_factories "raw;boost;ucontext") # Threads ignore modifications of the stack size
+set(_actor-stacksize_factories "^thread") # Threads ignore modifications of the stack size
 
 # The maestro-set example only works for threads and when not using windows.
 set(_maestro-set_factories "thread")
@@ -20,29 +20,30 @@ if(WIN32)
   set(_maestro-set_disable 1)
 endif()
 
-foreach (example mc-bugged1 mc-bugged2 mc-failing-assert mc-electric-fence)
+set(MC_regular_tests mc-bugged1 mc-bugged2 mc-failing-assert mc-electric-fence)
+foreach (example ${MC_regular_tests})
   if(NOT SIMGRID_HAVE_MC)
     set(_${example}_disable 1)
   endif()
-  set(_${example}_factories "ucontext;raw;boost")
+  set(_${example}_factories "^thread")
 endforeach()
 
 if(SIMGRID_HAVE_MC)
    add_executable       (s4u-mc-bugged1-liveness  EXCLUDE_FROM_ALL mc-bugged1-liveness/s4u-mc-bugged1-liveness.cpp)
    target_link_libraries(s4u-mc-bugged1-liveness  simgrid)
    set_target_properties(s4u-mc-bugged1-liveness PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mc-bugged1-liveness)
-   add_dependencies(tests s4u-mc-bugged1-liveness)
+   add_dependencies(tests-mc s4u-mc-bugged1-liveness)
  
   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)
     target_link_libraries(s4u-mc-bugged1-liveness-cleaner-on  simgrid)
     set_target_properties(s4u-mc-bugged1-liveness-cleaner-on  PROPERTIES COMPILE_FLAGS "-DGARBAGE_STACK -fstack-cleaner")
-    add_dependencies(tests s4u-mc-bugged1-liveness-cleaner-on)
+    add_dependencies(tests-mc s4u-mc-bugged1-liveness-cleaner-on)
 
     add_executable       (s4u-mc-bugged1-liveness-cleaner-off EXCLUDE_FROM_ALL s4u-mc-bugged1-liveness/s4u-mc-bugged1-liveness.cpp)
     target_link_libraries(s4u-mc-bugged1-liveness-cleaner-off simgrid)
     set_target_properties(s4u-mc-bugged1-liveness-cleaner-off PROPERTIES COMPILE_FLAGS "-DGARBAGE_STACK -fno-stack-cleaner")
-    add_dependencies(tests s4u-mc-bugged1-liveness-cleaner-off)
+    add_dependencies(tests-mc s4u-mc-bugged1-liveness-cleaner-off)
   endif()
 endif()
 
@@ -68,10 +69,11 @@ foreach (example actor-create actor-daemon actor-exiting actor-join actor-kill
                  dht-chord dht-kademlia
                  energy-exec energy-boot energy-link energy-vm energy-exec-ptask energy-wifi
                  engine-filtering
-                 exec-async exec-basic exec-dvfs exec-ptask exec-remote exec-waitany exec-waitfor exec-dependent exec-unassigned
+                 exec-async exec-basic exec-dvfs exec-remote exec-waitany exec-waitfor exec-dependent exec-unassigned
+                 exec-ptask exec-ptask-multicore
                  maestro-set
                  mc-bugged1 mc-bugged2 mc-electric-fence mc-failing-assert
-                network-wifi
+                                network-wifi
                  io-async io-file-system io-file-remote io-disk-raw io-dependent
                  platform-failures platform-profile platform-properties
                  plugin-host-load plugin-link-load
@@ -92,7 +94,7 @@ foreach (example actor-create actor-daemon actor-exiting actor-join actor-kill
 
     # Use default factories unless specified otherwise
     if(NOT DEFINED _${example}_factories)
-      set(_${example}_factories "thread;ucontext;raw;boost")
+      set(_${example}_factories "*")
     endif()
 #    message("Factories of ${example}: ${_${example}_factories}")
 
@@ -130,9 +132,17 @@ foreach(variant fun class)
 endforeach()
 set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworkers/s4u-app-masterworkers.tesh)
 
-# Model-checking liveness
+# Model-checking
 if(SIMGRID_HAVE_MC)
+  foreach (example ${MC_regular_tests})
+    if(NOT DEFINED _${example}_disable)
+      add_dependencies(tests-mc s4u-${example})
+    endif()
+  endforeach()
+  
+  # Model-checking liveness
   IF(HAVE_UCONTEXT_CONTEXTS AND SIMGRID_PROCESSOR_x86_64) # liveness model-checking works only on 64bits (for now ...)
+    add_dependencies(tests-mc s4u-mc-bugged1-liveness)
     ADD_TESH(s4u-mc-bugged1-liveness-ucontext     --setenv bindir=${CMAKE_CURRENT_BINARY_DIR}/mc-bugged1-liveness 
                                                   --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms 
                                                   --cd ${CMAKE_CURRENT_SOURCE_DIR}/mc-bugged1-liveness
@@ -144,6 +154,7 @@ if(SIMGRID_HAVE_MC)
 #                                                      --cd ${CMAKE_CURRENT_SOURCE_DIR}/mc-bugged1-liveness
 #                                                       ${CMAKE_HOME_DIRECTORY}/examples/cpp/mc-bugged1-liveness/s4u-mc-bugged1-liveness-visited.tesh)
     IF(HAVE_C_STACK_CLEANER)
+      add_dependencies(tests-mc s4u-mc-bugged1-liveness-stack-cleaner)
       # This test checks if the stack cleaner is making a difference:
       ADD_TEST(s4u-mc-bugged1-liveness-stack-cleaner ${CMAKE_HOME_DIRECTORY}/examples/cpp/mc-bugged1-liveness/s4u-mc-bugged1-liveness-stack-cleaner
                                                      ${CMAKE_HOME_DIRECTORY}/examples/cpp/mc-bugged1-liveness/ 
@@ -161,9 +172,9 @@ ENDIF()
 if(CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "i386" AND CMAKE_SIZEOF_VOID_P EQUAL 8)
   # Thread-local storage (TLS) is needed for parallel execution, but it doesn't
   # play well with Ucontexts on 64bit SunOS (at least on x86_64).
-  set(parallel-factories "thread;raw;boost")
+  set(parallel-factories "^ucontext")
 else()
-  set(parallel-factories "thread;ucontext;raw;boost")
+  set(parallel-factories "*")
 endif()
 
 foreach(example app-bittorrent app-masterworkers 
@@ -178,12 +189,12 @@ endforeach()
 
 # ns3-tests
 if(SIMGRID_HAVE_NS3)
-  ADD_TESH_FACTORIES(s4u-network-ns3 "thread;ucontext;raw;boost"
+  ADD_TESH_FACTORIES(s4u-network-ns3 "*"
                                      --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/cpp
                                      --setenv bindir=${CMAKE_BINARY_DIR}/examples/cpp
                                      --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms
                                      ${CMAKE_HOME_DIRECTORY}/examples/cpp/network-ns3/s4u-network-ns3.tesh)
-  ADD_TESH_FACTORIES(s4u-network-ns3-wifi "thread;ucontext;raw;boost"
+  ADD_TESH_FACTORIES(s4u-network-ns3-wifi "*"
                                      --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/cpp
                                      --setenv bindir=${CMAKE_BINARY_DIR}/examples/cpp
                                      --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms