Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
do not build the examples by default, only when running 'make tests'
authorMartin Quinson <martin.quinson@ens-rennes.fr>
Fri, 11 Jan 2019 20:52:07 +0000 (21:52 +0100)
committerMartin Quinson <martin.quinson@ens-rennes.fr>
Fri, 11 Jan 2019 20:52:07 +0000 (21:52 +0100)
23 files changed:
.circleci/config.yml
.gitlab-ci.yml
.travis.yml
examples/msg/CMakeLists.txt
examples/s4u/CMakeLists.txt
examples/simdag/CMakeLists.txt
examples/smpi/CMakeLists.txt
examples/smpi/NAS/CMakeLists.txt
examples/smpi/energy/f77/CMakeLists.txt
examples/smpi/energy/f90/CMakeLists.txt
examples/smpi/replay_multiple/CMakeLists.txt
examples/smpi/replay_multiple_manual_deploy/CMakeLists.txt
examples/smpi/smpi_msg_masterslave/CMakeLists.txt
teshsuite/mc/CMakeLists.txt
teshsuite/msg/CMakeLists.txt
teshsuite/s4u/CMakeLists.txt
teshsuite/simdag/CMakeLists.txt
teshsuite/simix/CMakeLists.txt
teshsuite/smpi/CMakeLists.txt
teshsuite/surf/CMakeLists.txt
teshsuite/xbt/CMakeLists.txt
tools/cmake/Tests.cmake
tools/jenkins/build.sh

index eb962f9..9289a30 100644 (file)
@@ -20,4 +20,4 @@ jobs:
           command: |
             mkdir _build && cd _build
             cmake -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=OFF -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=ON ..
-            make -j4 && ctest -j4 --output-on-failure
+            make -j4 tests && ctest -j4 --output-on-failure
index 1abaeb2..6f054f5 100644 (file)
@@ -17,4 +17,4 @@ pages:
 ctest:
   script:
   - cmake -Denable_model-checking=OFF -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON .
-  - make VERBOSE=1 && ctest --output-on-failure
+  - make VERBOSE=1 all tests && ctest --output-on-failure
index a62c76a..4368a85 100644 (file)
@@ -52,7 +52,7 @@ script:
    - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then cmake -Denable_model-checking=ON  -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON . || (echo XXX CMakeOutput.log; cat /home/travis/build/simgrid/simgrid/CMakeFiles/CMakeOutput.log; echo XXX CMakeError.log;cat /home/travis/build/simgrid/simgrid/CMakeFiles/CMakeError.log; exit 1) ; fi
    # run make and ctest in the sonar wrapper on master/linux; run it directly in PR or OSX
    # - if [[ -e Makefile ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "${TRAVIS_PULL_REQUEST}" == "false" ]]; then ./tools/internal/travis-sonarqube.sh make -j2 VERBOSE=1; else make -j2 VERBOSE=1 && ctest -j2 --output-on-failure ; fi
-   - make -j2 VERBOSE=1 && ctest -j2 --output-on-failure
+   - make -j2 VERBOSE=1 all tests && ctest -j2 --output-on-failure
 notifications:
   recipients:
     - martin.quinson@ens-rennes.fr
index c59540c..20494aa 100644 (file)
@@ -5,31 +5,35 @@ foreach(x app-masterworker cloud-masterworker
           synchro-semaphore trace-categories 
           trace-route-user-variables trace-link-user-variables trace-masterworker
           trace-process-migration trace-host-user-variables)
-  add_executable       (${x}     ${x}/${x}.c)
-  target_link_libraries(${x}     simgrid)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.c)
+  target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
   set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
   set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
 endforeach()
 
 # CPP examples
 foreach(x maestro-set)
-  add_executable       (${x}     ${x}/${x}.cpp)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}     simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
   set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
   set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
 endforeach()
 
 if(SIMGRID_HAVE_NS3)
-  add_executable       (network-ns3 network-ns3/network-ns3.c)
+  add_executable       (network-ns3 EXCLUDE_FROM_ALL network-ns3/network-ns3.c)
   target_link_libraries(network-ns3 simgrid)
   set_target_properties(network-ns3  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/network-ns3)
+  add_dependencies(tests network-ns3)    
 endif()
 
-add_executable       (dht-kademlia dht-kademlia/dht-kademlia.c dht-kademlia/node.c dht-kademlia/routing_table.c dht-kademlia/task.c dht-kademlia/answer.c)
+add_executable       (dht-kademlia EXCLUDE_FROM_ALL dht-kademlia/dht-kademlia.c dht-kademlia/node.c dht-kademlia/routing_table.c dht-kademlia/task.c dht-kademlia/answer.c)
 target_link_libraries(dht-kademlia simgrid)
 set_target_properties(dht-kademlia PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/dht-kademlia)
+add_dependencies(tests dht-kademlia)
 foreach (file answer dht-kademlia node routing_table task)
   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/${file}.c  ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/${file}.h)
 endforeach()
index 3d0652d..784968c 100644 (file)
@@ -15,7 +15,8 @@ foreach (example actor-create actor-daemon actor-join actor-kill
                  replay-comm replay-storage
                  routing-get-clusters
                  synchro-barrier synchro-mutex synchro-semaphore)
-  add_executable       (s4u-${example} ${example}/s4u-${example}.cpp)
+  add_executable       (s4u-${example} EXCLUDE_FROM_ALL ${example}/s4u-${example}.cpp)
+  add_dependencies     (tests s4u-${example})
   target_link_libraries(s4u-${example} simgrid)
   set_target_properties(s4u-${example} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${example})
 
@@ -36,28 +37,30 @@ set_tesh_properties(s4u-platform-failures "thread;ucontext;raw;boost" WILL_FAIL
 
 # MASTERWORKERS EXAMPLE
 foreach(variant fun class) 
-  add_executable       (s4u-app-masterworkers-${variant}  app-masterworkers/s4u-app-masterworkers-${variant}.cpp)
-  target_link_libraries(s4u-app-masterworkers-${variant}  simgrid)
-  set_target_properties(s4u-app-masterworkers-${variant}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-masterworkers)
+  add_executable       (s4u-app-masterworkers-${variant} EXCLUDE_FROM_ALL app-masterworkers/s4u-app-masterworkers-${variant}.cpp)
+  target_link_libraries(s4u-app-masterworkers-${variant} simgrid)
+  set_target_properties(s4u-app-masterworkers-${variant} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-masterworkers)
+  add_dependencies(tests s4u-app-masterworkers-${variant})
 
   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworkers/s4u-app-masterworkers-${variant}.cpp)
 endforeach()
 set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworkers/s4u-app-masterworkers.tesh)
 
 # CHORD EXAMPLE
-add_executable       (s4u-dht-chord dht-chord/s4u-dht-chord.cpp dht-chord/s4u-dht-chord-node.cpp)
+add_executable       (s4u-dht-chord EXCLUDE_FROM_ALL dht-chord/s4u-dht-chord.cpp dht-chord/s4u-dht-chord-node.cpp)
 target_link_libraries(s4u-dht-chord simgrid)
 set_target_properties(s4u-dht-chord PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/dht-chord)
-foreach (file s4u-dht-chord s4u-dht-chord-node)
-  set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/dht-chord/${file}.cpp)
+add_dependencies(tests s4u-dht-chord)
+foreach (file s4u-dht-chord.cpp s4u-dht-chord-node.cpp s4u-dht-chord.hpp)
+  set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/dht-chord/${file})
 endforeach()
-set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/dht-chord/s4u-dht-chord.hpp)
 
 # KADEMLIA EXAMPLE
-add_executable       (s4u-dht-kademlia dht-kademlia/s4u-dht-kademlia.cpp dht-kademlia/node.cpp 
+add_executable       (s4u-dht-kademlia EXCLUDE_FROM_ALL dht-kademlia/s4u-dht-kademlia.cpp dht-kademlia/node.cpp 
                       dht-kademlia/routing_table.cpp dht-kademlia/answer.cpp)
 target_link_libraries(s4u-dht-kademlia simgrid)
 set_target_properties(s4u-dht-kademlia PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/dht-kademlia)
+add_dependencies(tests s4u-dht-kademlia)
 foreach (file answer routing_table node s4u-dht-kademlia)
   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/${file}.cpp 
                                      ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/${file}.hpp)
@@ -65,10 +68,11 @@ endforeach()
 set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/message.hpp)
 
 # BITTORRENT EXAMPLE
-add_executable       (s4u-bittorrent app-bittorrent/s4u-bittorrent.cpp app-bittorrent/s4u-peer.cpp
+add_executable       (s4u-bittorrent EXCLUDE_FROM_ALL app-bittorrent/s4u-bittorrent.cpp app-bittorrent/s4u-peer.cpp
                       app-bittorrent/s4u-tracker.cpp)
 target_link_libraries(s4u-bittorrent simgrid)
 set_target_properties(s4u-bittorrent PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-bittorrent)
+add_dependencies(tests s4u-bittorrent)
 foreach (file s4u-bittorrent s4u-peer s4u-tracker)
   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.cpp
                                      ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.hpp)
@@ -88,9 +92,10 @@ endforeach()
 ##################################
 
 foreach (example trace-platform)
-  add_executable       (s4u-${example} ${example}/s4u-${example}.cpp)
+  add_executable       (s4u-${example} EXCLUDE_FROM_ALL ${example}/s4u-${example}.cpp)
   target_link_libraries(s4u-${example} simgrid)
   set_target_properties(s4u-${example} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${example})
+  add_dependencies(tests s4u-${example})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${example}/s4u-${example}.tesh)
   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/${example}/s4u-${example}.cpp)
index c10e920..830276c 100644 (file)
@@ -1,32 +1,36 @@
 foreach(x daxload fail typed_tasks properties throttling scheduling)
-  add_executable       (sd_${x}     ${x}/sd_${x}.c)
+  add_executable       (sd_${x}  EXCLUDE_FROM_ALL  ${x}/sd_${x}.c)
   target_link_libraries(sd_${x}     simgrid)
   set_target_properties(sd_${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests sd_${x})
   set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.c)
   set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.tesh)
 endforeach()
 
 foreach(x test)
-  add_executable       (sd_${x}     ${x}/sd_${x}.cpp)
+  add_executable       (sd_${x}  EXCLUDE_FROM_ALL ${x}/sd_${x}.cpp)
   target_link_libraries(sd_${x}     simgrid)
   set_target_properties(sd_${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests sd_${x})
   set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.cpp)
   set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.tesh)
 endforeach()
 
 foreach(x dag-dotload ptg-dotload schedule-dotload)
   if(HAVE_GRAPHVIZ)
-    add_executable       (sd_${x}     ${x}/sd_${x}.c)
+    add_executable       (sd_${x}  EXCLUDE_FROM_ALL ${x}/sd_${x}.c)
     target_link_libraries(sd_${x}     simgrid)
     set_target_properties(sd_${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+    add_dependencies(tests sd_${x})
   endif()
   set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.c)
   set(tesh_files   ${tesh_files}   ${CMAKE_CURRENT_SOURCE_DIR}/${x}/sd_${x}.tesh)
 endforeach()
 
-add_executable       (goal_test goal/goal_test.c)
+add_executable       (goal_test EXCLUDE_FROM_ALL goal/goal_test.c)
 target_link_libraries(goal_test simgrid)
 set_target_properties(goal_test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/goal)
+add_dependencies(tests goal_test)
 
 set(tesh_files   ${tesh_files}                                                                             PARENT_SCOPE)
 set(examples_src ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/goal/goal_test.c                             PARENT_SCOPE)
index 947e376..d1418af 100644 (file)
@@ -6,9 +6,10 @@ if(enable_smpi)
   file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/mc/")
 
   foreach(x replay ampi trace trace_simple trace_call_location energy)
-    add_executable       (smpi_${x} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x})
+    add_executable       (smpi_${x} EXCLUDE_FROM_ALL ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x})
     target_link_libraries(smpi_${x} simgrid)
     set_target_properties(smpi_${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+    add_dependencies(tests smpi_${x})
   endforeach()
 
   set_target_properties(smpi_trace_call_location PROPERTIES COMPILE_FLAGS "-trace-call-location")
@@ -16,9 +17,10 @@ if(enable_smpi)
   foreach(x bugged1 bugged2 bugged1_liveness only_send_deterministic mutual_exclusion non_termination1 
             non_termination2 non_termination3 non_termination4)
     if(SIMGRID_HAVE_MC)
-      add_executable       (smpi_${x} ${CMAKE_CURRENT_SOURCE_DIR}/mc/${x}.c)
+      add_executable       (smpi_${x} EXCLUDE_FROM_ALL ${CMAKE_CURRENT_SOURCE_DIR}/mc/${x}.c)
       target_link_libraries(smpi_${x} simgrid)
       set_target_properties(smpi_${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mc)
+      add_dependencies(tests smpi_${x})
     endif()
   endforeach()
 endif()
index 1ff6af4..bec59f1 100644 (file)
@@ -6,12 +6,13 @@ if(enable_smpi)
   endif()
 
   include_directories(BEFORE "${CMAKE_HOME_DIRECTORY}/include/smpi")
-  add_executable       (is is.c nas_common.c)
+  add_executable       (is EXCLUDE_FROM_ALL is.c nas_common.c)
   target_link_libraries(is simgrid)
-  add_executable       (ep ep.c nas_common.c)
+  add_executable       (ep EXCLUDE_FROM_ALL ep.c nas_common.c)
   target_link_libraries(ep simgrid)
-  add_executable       (dt dt.c nas_common.c DGraph.c)
+  add_executable       (dt EXCLUDE_FROM_ALL dt.c nas_common.c DGraph.c)
   target_link_libraries(dt simgrid)
+  add_dependencies(tests is ep dt)
 endif()
 
 set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/nas_common.h
index 78cd9e7..1f95dc7 100644 (file)
@@ -1,7 +1,8 @@
 if(enable_smpi AND SMPI_FORTRAN)
   set(CMAKE_Fortran_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpiff")
-  add_executable       (sef sef.f)
+  add_executable       (sef EXCLUDE_FROM_ALL sef.f)
   target_link_libraries(sef simgrid)
+  add_dependencies(tests sef)
   ADD_TESH_FACTORIES(smpi-energy-f77 "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/smpi/energy --cd ${CMAKE_BINARY_DIR}/examples/smpi/energy ${CMAKE_HOME_DIRECTORY}/examples/smpi/energy/f77/energy.tesh)
 endif()
 
index 09922f7..56d8728 100644 (file)
@@ -1,7 +1,8 @@
 if(enable_smpi AND SMPI_FORTRAN)
   set(CMAKE_Fortran_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpif90")
-  add_executable       (sef90 sef90.f90)
+  add_executable       (sef90 EXCLUDE_FROM_ALL sef90.f90)
   target_link_libraries(sef90 simgrid)
+  add_dependencies(tests sef90)
   ADD_TESH_FACTORIES(smpi-energy-f90 "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/smpi/energy --cd ${CMAKE_BINARY_DIR}/examples/smpi/energy ${CMAKE_HOME_DIRECTORY}/examples/smpi/energy/f90/energy.tesh)
 endif()
 
index bcd9d36..f066425 100644 (file)
@@ -1,9 +1,10 @@
 if(enable_smpi)
   include_directories(BEFORE "${CMAKE_HOME_DIRECTORY}/include/smpi")
 
-  add_executable       (replay_multiple replay_multiple.c)
+  add_executable       (replay_multiple EXCLUDE_FROM_ALL replay_multiple.c)
   target_link_libraries(replay_multiple simgrid)
   ADD_TESH(smpi-replay-multiple --setenv srcdir=${CMAKE_CURRENT_SOURCE_DIR} --setenv bindir=${CMAKE_CURRENT_BINARY_DIR} --cd ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/replay_multiple.tesh)
+  add_dependencies(tests replay_multiple)
 endif()
 
 set(txt_files     ${txt_files}     ${CMAKE_CURRENT_SOURCE_DIR}/generate_multiple_deployment.sh
index 4730137..78728e5 100644 (file)
@@ -1,8 +1,9 @@
 if(enable_smpi)
   include_directories(BEFORE "${CMAKE_HOME_DIRECTORY}/include/smpi")
 
-  add_executable       (replay_multiple_manual replay_multiple_manual.cpp)
+  add_executable       (replay_multiple_manual EXCLUDE_FROM_ALL replay_multiple_manual.cpp)
   target_link_libraries(replay_multiple_manual simgrid)
+  add_dependencies(tests replay_multiple_manual)
 
   # Define a list of a tesh files
   list(APPEND tesh_filename_list replay_multiple_manual_nojob)
index 2170f92..71bd37d 100644 (file)
@@ -1,9 +1,10 @@
 if(enable_smpi)
   include_directories(BEFORE "${CMAKE_HOME_DIRECTORY}/include/smpi")
 
-  add_executable       (masterslave_mailbox_smpi masterslave_mailbox_smpi.c)
+  add_executable       (masterslave_mailbox_smpi EXCLUDE_FROM_ALL masterslave_mailbox_smpi.c)
   target_link_libraries(masterslave_mailbox_smpi simgrid)
   ADD_TESH_FACTORIES(smpi-msg-masterslave "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/smpi/smpi_msg_masterslave --cd ${CMAKE_BINARY_DIR}/examples/smpi/smpi_msg_masterslave ${CMAKE_HOME_DIRECTORY}/examples/smpi/smpi_msg_masterslave/msg_smpi.tesh)
+  add_dependencies(tests masterslave_mailbox_smpi)
 endif()
 
 set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/msg_smpi.tesh                            PARENT_SCOPE)
index e1618b9..85fc94b 100644 (file)
@@ -1,24 +1,27 @@
 foreach(x dwarf dwarf-expression)
   if (SIMGRID_HAVE_MC)
-    add_executable       (${x}  ${x}/${x}.cpp)
+    add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
     target_link_libraries(${x}  simgrid)
     set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
     set_property(TARGET ${x} APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
+    add_dependencies(tests ${x})
   endif()
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
 endforeach()
 
-add_executable       (without-mutex-handling mutex-handling/mutex-handling.c)
+add_executable       (without-mutex-handling EXCLUDE_FROM_ALL mutex-handling/mutex-handling.c)
 target_link_libraries(without-mutex-handling simgrid)
 set_target_properties(without-mutex-handling PROPERTIES COMPILE_FLAGS -DDISABLE_THE_MUTEX=1)
 set_target_properties(without-mutex-handling PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mutex-handling)
+add_dependencies(tests without-mutex-handling)
 
 foreach(x mutex-handling random-bug)
-  add_executable       (${x} ${x}/${x}.c)
+  add_executable       (${x} EXCLUDE_FROM_ALL ${x}/${x}.c)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
index 55f5c34..83c1572 100644 (file)
@@ -9,9 +9,10 @@ foreach(x app-pingpong app-token-ring
           task-priority
           plugin-hostload
           trace_integration)
-  add_executable       (${x}  ${x}/${x}.c)
-  target_link_libraries(${x}  simgrid)
-  set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_executable       (${x} EXCLUDE_FROM_ALL ${x}/${x}.c)
+  target_link_libraries(${x} simgrid)
+  set_target_properties(${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
@@ -19,24 +20,27 @@ endforeach()
 
 # CPP examples
 foreach(x task_destroy_cancel task_listen_from task_progress host_on_off_processes)
-  add_executable       (${x}  ${x}/${x}.cpp)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
 endforeach()
 
-add_executable       (bittorrent app-bittorrent/bittorrent.c app-bittorrent/bittorrent-messages.c app-bittorrent/bittorrent-peer.c app-bittorrent/tracker.c app-bittorrent/connection.c)
+add_executable       (bittorrent EXCLUDE_FROM_ALL app-bittorrent/bittorrent.c app-bittorrent/bittorrent-messages.c app-bittorrent/bittorrent-peer.c app-bittorrent/tracker.c app-bittorrent/connection.c)
 target_link_libraries(bittorrent simgrid)
 set_target_properties(bittorrent PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-bittorrent)
+add_dependencies(tests bittorrent)
 foreach (file bittorrent connection bittorrent-messages bittorrent-peer tracker)
   set(teshsuite_src  ${teshsuite_src}  ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.c  ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.h)
 endforeach()
 
-add_executable       (chainsend app-chainsend/chainsend.c app-chainsend/iterator.c app-chainsend/common.c app-chainsend/messages.c app-chainsend/broadcaster.c app-chainsend/peer.c)
+add_executable       (chainsend EXCLUDE_FROM_ALL app-chainsend/chainsend.c app-chainsend/iterator.c app-chainsend/common.c app-chainsend/messages.c app-chainsend/broadcaster.c app-chainsend/peer.c)
 target_link_libraries(chainsend simgrid)
 set_target_properties(chainsend PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-chainsend)
+add_dependencies(tests chainsend)
 foreach (file common iterator messages broadcaster peer)
   set(teshsuite_src  ${teshsuite_src}  ${CMAKE_CURRENT_SOURCE_DIR}/app-chainsend/${file}.c  ${CMAKE_CURRENT_SOURCE_DIR}/app-chainsend/${file}.h)
 endforeach()
index f6cf437..c7090f9 100644 (file)
@@ -3,9 +3,10 @@ foreach(x actor actor-autorestart actor-migration
         comm-pt2pt
         cloud-interrupt-migration cloud-sharing
         concurrent_rw storage_client_server listen_async pid )
-  add_executable       (${x}  ${x}/${x}.cpp)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
 endforeach()
index eb98419..42ac105 100644 (file)
@@ -1,27 +1,30 @@
 foreach(x availability basic0 basic1 basic3 basic4 basic5 basic6 basic-link-test basic-parsing-test
           comm-mxn-all2all comm-mxn-independent comm-mxn-scatter comm-p2p-latency-1
           comm-p2p-latency-2 comm-p2p-latency-3 comm-p2p-latency-bound comp-only-par comp-only-seq incomplete)
-  add_executable       (${x}  ${x}/${x}.c)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.c)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
 endforeach()
 
 foreach(x evaluate-parse-time evaluate-get-route-time)
-  add_executable       (${x} ${x}/${x}.c)
+  add_executable       (${x} EXCLUDE_FROM_ALL ${x}/${x}.c)
   target_link_libraries(${x} simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
 endforeach()
 
 foreach(x flatifier is-router)
-  add_executable       (${x}  ${x}/${x}.cpp)
+  add_executable       (${x} EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
   set_property(TARGET ${x} APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
index b6aa7d1..56d0c01 100644 (file)
@@ -1,8 +1,9 @@
 foreach(x check-defaults generic-simcalls stack-overflow)
-  add_executable       (${x}  ${x}/${x}.cpp)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
+  add_dependencies(tests ${x})
 endforeach()
 
 foreach (factory raw thread boost ucontext)
index 85bf920..800ae86 100644 (file)
@@ -9,24 +9,27 @@ if(enable_smpi)
   foreach(x coll-allgather coll-allgatherv coll-allreduce coll-alltoall coll-alltoallv coll-barrier coll-bcast
             coll-gather coll-reduce coll-reduce-scatter coll-scatter macro-sample pt2pt-dsend pt2pt-pingpong
             type-hvector type-indexed type-struct type-vector bug-17132 timers privatization )
-    add_executable       (${x}  ${x}/${x}.c)
+    add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.c)
     target_link_libraries(${x}  simgrid)
     set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+    add_dependencies(tests ${x})
   endforeach()
 
   if(NOT WIN32)
     foreach(x macro-shared macro-partial-shared macro-partial-shared-communication )
-      add_executable       (${x}  ${x}/${x}.c)
+      add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.c)
       target_link_libraries(${x}  simgrid)
       set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+      add_dependencies(tests ${x})
     endforeach()
   endif()
 
   if(enable_smpi AND SMPI_FORTRAN)
     set(CMAKE_Fortran_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpif90")
-    add_executable       (fort_args fort_args/fort_args.f90)
+    add_executable       (fort_args EXCLUDE_FROM_ALL fort_args/fort_args.f90)
     target_link_libraries(fort_args simgrid)
     set_target_properties(fort_args PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/fort_args)
+    add_dependencies(tests fort_args)
   endif()
 endif()
 
index 467abf9..ab86688 100644 (file)
@@ -1,17 +1,19 @@
 foreach(x lmm_usage surf_usage surf_usage2)
-  add_executable       (${x}  ${x}/${x}.cpp)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
   set_property(TARGET ${x} APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
 endforeach()
 
-add_executable       (maxmin_bench maxmin_bench/maxmin_bench.cpp)
+add_executable       (maxmin_bench EXCLUDE_FROM_ALL maxmin_bench/maxmin_bench.cpp)
 target_link_libraries(maxmin_bench simgrid)
 set_target_properties(maxmin_bench PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/maxmin_bench)
 set_property(TARGET maxmin_bench APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
+add_dependencies(tests maxmin_bench)
 
 foreach(x small medium large)
   set(tesh_files     ${tesh_files}     ${CMAKE_CURRENT_SOURCE_DIR}/maxmin_bench/maxmin_bench_${x}.tesh)
index 0422f25..e7953d0 100644 (file)
@@ -1,27 +1,30 @@
 foreach(x cmdline log_large log_usage mallocator)
-  add_executable       (${x}  ${x}/${x}.c)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.c)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
 endforeach()
 
 foreach(x parallel_log_crashtest parmap_bench parmap_test)
-  add_executable       (${x}  ${x}/${x}.cpp)
+  add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
   target_link_libraries(${x}  simgrid)
   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
   set_property(TARGET ${x} APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
+  add_dependencies(tests ${x})
 
   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
 endforeach()
 
 if(HAVE_MMALLOC)
-  add_executable       (mmalloc_test ${CMAKE_CURRENT_SOURCE_DIR}/mmalloc/mmalloc_test.cpp)
+  add_executable       (mmalloc_test EXCLUDE_FROM_ALL ${CMAKE_CURRENT_SOURCE_DIR}/mmalloc/mmalloc_test.cpp)
   target_link_libraries(mmalloc_test simgrid)
   set_target_properties(mmalloc_test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mmalloc)
   set_property(TARGET mmalloc_test APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
+  add_dependencies(tests mmalloc_test)
 endif()
 
 set(tesh_files    ${tesh_files}     ${CMAKE_CURRENT_SOURCE_DIR}/log_usage/log_usage_ndebug.tesh
index d0200dd..05c1c54 100644 (file)
@@ -1,3 +1,5 @@
+add_custom_target(tests COMMENT "Recompiling the tests")
+
 IF(enable_smpi AND NOT WIN32)
   execute_process(COMMAND chmod a=rwx ${CMAKE_BINARY_DIR}/bin/smpicc)
   execute_process(COMMAND chmod a=rwx ${CMAKE_BINARY_DIR}/bin/smpicxx)
index 59bbf3a..dd74ad8 100755 (executable)
@@ -204,7 +204,7 @@ cmake -G"$GENERATOR" ${INSTALL:+-DCMAKE_INSTALL_PREFIX=$INSTALL} \
 #  -Denable_lua=$(onoff test "$build_mode" != "DynamicAnalysis") \
 set +x
 
-make -j$NUMBER_OF_PROCESSORS VERBOSE=1
+make -j$NUMBER_OF_PROCESSORS VERBOSE=1 tests
 
 echo "XX"
 echo "XX Run the tests"