Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
convert another example to s4u, and move the MSG version away
[simgrid.git] / teshsuite / msg / CMakeLists.txt
1 # C examples
2 foreach(x actions-comm actions-storage
3           app-pingpong
4           async-wait async-waitall async-waitany
5           cloud-sharing cloud-two-tasks cloud-simple
6           get_sender host_on_off host_on_off_recv host_on_off_processes   
7           process-daemon process-kill process-join process-lifetime process-migration process-suspend process-yield
8           energy-consumption energy-ptask energy-pstate platform-properties
9           io-file io-raw-storage io-file-remote
10           task-priority
11           trace_integration)
12   add_executable       (${x}  ${x}/${x}.c)
13   target_link_libraries(${x}  simgrid)
14   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
15
16   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
17   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c)
18 endforeach()
19
20 # CPP examples
21 foreach(x task_destroy_cancel task_listen_from task_progress)
22   add_executable       (${x}  ${x}/${x}.cpp)
23   target_link_libraries(${x}  simgrid)
24   set_target_properties(${x}  PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
25
26   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
27   set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
28 endforeach()
29
30 add_executable       (bittorrent app-bittorrent/bittorrent.c app-bittorrent/messages.c app-bittorrent/peer.c app-bittorrent/tracker.c app-bittorrent/connection.c)
31 target_link_libraries(bittorrent simgrid)
32 set_target_properties(bittorrent PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-bittorrent)
33 foreach (file bittorrent connection messages peer tracker)
34   set(teshsuite_src  ${teshsuite_src}  ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.c  ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.h)
35 endforeach()
36
37
38 set(teshsuite_src ${teshsuite_src}  PARENT_SCOPE)
39 set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/app-bittorrent.tesh          PARENT_SCOPE)
40 set(bin_files    ${bin_files}      ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/generate.py                  PARENT_SCOPE)
41 set(txt_files     ${txt_files}     ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm.txt
42                                    ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_split_p0.txt
43                                    ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_split_p1.txt
44                                    ${CMAKE_CURRENT_SOURCE_DIR}/actions-storage/actions-storage.txt         PARENT_SCOPE)
45 set(xml_files     ${xml_files}     ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_d.xml
46                                    ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_split_d.xml
47                                    ${CMAKE_CURRENT_SOURCE_DIR}/actions-storage/actions-storage_d.xml
48                                    ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/app-bittorrent_d.xml
49                                    ${CMAKE_CURRENT_SOURCE_DIR}/app-pingpong/app-pingpong_d.xml
50                                    ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait_d.xml
51                                    ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait2_d.xml
52                                    ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait3_d.xml
53                                    ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait4_d.xml
54                                    ${CMAKE_CURRENT_SOURCE_DIR}/async-waitall/async-waitall_d.xml
55                                    ${CMAKE_CURRENT_SOURCE_DIR}/async-waitany/async-waitany_d.xml
56                                    ${CMAKE_CURRENT_SOURCE_DIR}/io-file-remote/io-file-remote_d.xml
57                                    ${CMAKE_CURRENT_SOURCE_DIR}/platform-properties/platform-properties_d.xml
58                                    ${CMAKE_CURRENT_SOURCE_DIR}/process-lifetime/baseline_d.xml
59                                    ${CMAKE_CURRENT_SOURCE_DIR}/process-lifetime/kill_d.xml
60                                    ${CMAKE_CURRENT_SOURCE_DIR}/process-lifetime/start_d.xml
61                                    ${CMAKE_CURRENT_SOURCE_DIR}/process-lifetime/start_kill_d.xml
62                                    ${CMAKE_CURRENT_SOURCE_DIR}/process-yield/process-yield_d.xml
63                                    ${CMAKE_CURRENT_SOURCE_DIR}/task-priority/task-priority_d.xml
64                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1.0-hbp1.0-hbp1.0.xml
65                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1.0-hbp3.0-hbp4.0.xml
66                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1.5-hbp1.5.xml
67                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c0s0-c0s1.xml
68                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c0s0-c1s0.xml
69                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c0s1-c0s2.xml
70                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c0s1-c2s2.xml
71                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c0s2-c1s0.xml
72                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c0s2-c1s1.xml
73                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c1s1-c1s2.xml
74                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp1-c1s1-c3s2.xml
75                                    ${CMAKE_CURRENT_SOURCE_DIR}/trace_integration/test-hbp2.5-hbp1.5.xml    PARENT_SCOPE)
76
77 foreach(x 
78     actions-comm actions-storage
79     async-wait async-waitall async-waitany
80     app-bittorrent app-pingpong
81     cloud-two-tasks cloud-simple
82     energy-pstate
83     host_on_off host_on_off_processes host_on_off_recv
84     get_sender
85     task_destroy_cancel task_listen_from task_progress 
86     process-daemon process-kill process-join process-lifetime process-migration process-suspend process-yield
87     energy-consumption energy-ptask
88     io-file io-raw-storage io-file-remote
89     platform-properties
90     trace_integration)
91   ADD_TESH_FACTORIES(tesh-msg-${x} "thread;ucontext;raw;boost" 
92                                    --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms
93                                    --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/msg/${x}
94                                    --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/msg/${x} 
95                                    ${CMAKE_HOME_DIRECTORY}/teshsuite/msg/${x}/${x}.tesh)
96 endforeach()
97
98 foreach(x cloud-sharing)
99   ADD_TESH(tesh-msg-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/msg/${x} --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/teshsuite/msg/${x} ${CMAKE_HOME_DIRECTORY}/teshsuite/msg/${x}/${x}.tesh)
100 endforeach()
101
102 ADD_TESH_FACTORIES(tesh-app-bittorrent-parallel         "thread;ucontext;raw;boost" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/msg/app-bittorrent --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/msg/app-bittorrent app-bittorrent.tesh)