Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add code coverage for simgrid compilation
[simgrid.git] / buildtools / CPACK / simgrid_CMakeList / tools / gras / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.6)
2
3 set(EXECUTABLE_OUTPUT_PATH "./")
4 set(LIBRARY_OUTPUT_PATH "${PROJECT_DIRECTORY}/lib")
5 set(INCLUDES "-I${PROJECT_DIRECTORY}/include -I${PROJECT_DIRECTORY}/src/include -I${PROJECT_DIRECTORY}/src -I/usr/include")
6
7 set(CMAKE_CXX_FLAGS -fprofile-arcs -ftest-coverage)
8 add_definitions (${INCLUDES} -fprofile-arcs -ftest-coverage)
9
10 add_executable(gras_stub_generator stub_generator.c unix_stub_generator.c windows_stub_generator.c)
11
12 ### Add definitions for compile
13 target_link_libraries(gras_stub_generator simgrid pthread m -fprofile-arcs)
14
15 ### make files after the build
16 #ping
17 add_custom_command(TARGET gras_stub_generator
18 POST_BUILD
19 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
20 ARGS ping ${PROJECT_DIRECTORY}/examples/gras/ping/ping.xml
21 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/ping"
22 )
23 #rpc
24 add_custom_command(TARGET gras_stub_generator
25 POST_BUILD
26 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
27 ARGS rpc ${PROJECT_DIRECTORY}/examples/gras/rpc/rpc.xml
28 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/rpc"
29 )
30 #spawn
31 add_custom_command(TARGET gras_stub_generator
32 POST_BUILD
33 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
34 ARGS --extra-process=child spawn ${PROJECT_DIRECTORY}/examples/gras/spawn/spawn.xml
35 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/spawn"
36 )
37 #timer
38 add_custom_command(TARGET gras_stub_generator
39 POST_BUILD
40 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
41 ARGS timer ${PROJECT_DIRECTORY}/examples/gras/timer/timer.xml
42 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/timer"
43 )
44 #chrono
45 add_custom_command(TARGET gras_stub_generator
46 POST_BUILD
47 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
48 ARGS chrono ${PROJECT_DIRECTORY}/examples/gras/chrono/chrono.xml
49 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/chrono"
50 )
51 #simple_token
52 add_custom_command(TARGET gras_stub_generator
53 POST_BUILD
54 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
55 ARGS simple_token ${PROJECT_DIRECTORY}/examples/gras/mutual_exclusion/simple_token/simple_token.xml
56 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/mutual_exclusion/simple_token"
57 )
58 #mmrpc
59 add_custom_command(TARGET gras_stub_generator
60 POST_BUILD
61 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
62 ARGS mmrpc ${PROJECT_DIRECTORY}/examples/gras/mmrpc/mmrpc.xml
63 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/mmrpc"
64 )
65 #all2all
66 add_custom_command(TARGET gras_stub_generator
67 POST_BUILD
68 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
69 ARGS all2all ${PROJECT_DIRECTORY}/examples/gras/all2all/all2all.xml
70 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/all2all"
71 )
72 #pmm
73 add_custom_command(TARGET gras_stub_generator
74 POST_BUILD
75 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
76 ARGS pmm ${PROJECT_DIRECTORY}/examples/gras/pmm/pmm.xml
77 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/pmm"
78 )
79 #synchro
80 add_custom_command(TARGET gras_stub_generator
81 POST_BUILD
82 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
83 ARGS synchro ${PROJECT_DIRECTORY}/examples/gras/synchro/synchro.xml
84 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/synchro"
85 )
86 #properties
87 add_custom_command(TARGET gras_stub_generator
88 POST_BUILD
89 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
90 ARGS properties ${PROJECT_DIRECTORY}/examples/gras/properties/properties.xml
91 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/properties"
92 )
93 #teshsuite/gras/msg_handle
94 add_custom_command(TARGET gras_stub_generator
95 POST_BUILD
96 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
97 ARGS msg_handle ${PROJECT_DIRECTORY}/teshsuite/gras/msg_handle/msg_handle.xml
98 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/teshsuite/gras/msg_handle"
99 )
100 #examples/amok/bandwidth
101 add_custom_command(TARGET gras_stub_generator
102 POST_BUILD
103 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
104 ARGS bandwidth ${PROJECT_DIRECTORY}/examples/amok/bandwidth/bandwidth.xml
105 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/amok/bandwidth"
106 )
107 #examples/amok/saturate
108 add_custom_command(TARGET gras_stub_generator
109 POST_BUILD
110 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
111 ARGS saturate ${PROJECT_DIRECTORY}/examples/amok/saturate/saturate.xml
112 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/amok/saturate"
113 )