Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
convert host-on-off test to s4u
[simgrid.git] / teshsuite / s4u / CMakeLists.txt
1 foreach(x actor actor-autorestart
2         activity-lifecycle
3         comm-pt2pt wait-any-for
4         cloud-interrupt-migration cloud-sharing
5         concurrent_rw 
6         host-on-off
7         storage_client_server listen_async pid )
8   add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
9   target_link_libraries(${x}  simgrid)
10   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
11   add_dependencies(tests ${x})
12
13   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
14 endforeach()
15
16 # Fix build rules for activity-lifecycle (multi-file)
17 foreach(x sleep exec comm test-wait)
18   target_sources(activity-lifecycle PRIVATE activity-lifecycle/testing_${x}.cpp)
19   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/activity-lifecycle/testing_${x}.cpp)
20 endforeach()
21 set_property(TARGET activity-lifecycle APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}") # for <catch.hpp>
22
23 ## Add the tests.
24 ## Some need to be run with all factories, some don't need tesh to run
25 foreach(x actor actor-autorestart
26         activity-lifecycle wait-any-for
27         cloud-interrupt-migration concurrent_rw)
28   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
29   ADD_TESH_FACTORIES(tesh-s4u-${x} "thread;ucontext;raw;boost" --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x} --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.tesh)
30 endforeach()
31
32 foreach(x host-on-off listen_async pid storage_client_server cloud-sharing)
33   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
34   ADD_TESH(tesh-s4u-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x} --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.tesh)
35 endforeach()
36
37 # The output is not relevant
38 ADD_TEST(tesh-s4u-comm-pt2pt    ${CMAKE_BINARY_DIR}/teshsuite/s4u/comm-pt2pt/comm-pt2pt    ${CMAKE_HOME_DIRECTORY}/examples/platforms/cluster_backbone.xml)
39
40 # NS-3 specific tests
41 if(SIMGRID_HAVE_NS3)
42   foreach(x ns3-simultaneous-send-rcv)
43     add_executable       (${x}  EXCLUDE_FROM_ALL ${x}/${x}.cpp)
44     target_link_libraries(${x}  simgrid)
45     set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
46     add_dependencies(tests ${x})
47     ADD_TESH(tesh-s4u-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x} --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.tesh)
48   endforeach()
49 endif()
50
51 foreach(x ns3-simultaneous-send-rcv)
52   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
53   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
54 endforeach()
55
56 set(teshsuite_src ${teshsuite_src}  ${CMAKE_CURRENT_SOURCE_DIR}/activity-lifecycle/activity-lifecycle.hpp PARENT_SCOPE)
57 set(tesh_files    ${tesh_files}     PARENT_SCOPE)
58 set(xml_files     ${xml_files}      ${CMAKE_CURRENT_SOURCE_DIR}/activity-lifecycle/testing_platform.xml PARENT_SCOPE)