Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Massive mv to use cmake as the default compilation infrastructure.
[simgrid.git] / 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
6 add_executable(gras_stub_generator stub_generator.c unix_stub_generator.c windows_stub_generator.c)
7
8 ### Add definitions for compile
9 target_link_libraries(gras_stub_generator simgrid pthread m -fprofile-arcs)
10
11 ### make files after the build
12 #ping
13 add_custom_command(TARGET gras_stub_generator
14 POST_BUILD
15 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
16 ARGS ping ${PROJECT_DIRECTORY}/examples/gras/ping/ping.xml
17 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/ping"
18 )
19 #rpc
20 add_custom_command(TARGET gras_stub_generator
21 POST_BUILD
22 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
23 ARGS rpc ${PROJECT_DIRECTORY}/examples/gras/rpc/rpc.xml
24 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/rpc"
25 )
26 #spawn
27 add_custom_command(TARGET gras_stub_generator
28 POST_BUILD
29 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
30 ARGS --extra-process=child spawn ${PROJECT_DIRECTORY}/examples/gras/spawn/spawn.xml
31 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/spawn"
32 )
33 #timer
34 add_custom_command(TARGET gras_stub_generator
35 POST_BUILD
36 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
37 ARGS timer ${PROJECT_DIRECTORY}/examples/gras/timer/timer.xml
38 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/timer"
39 )
40 #chrono
41 add_custom_command(TARGET gras_stub_generator
42 POST_BUILD
43 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
44 ARGS chrono ${PROJECT_DIRECTORY}/examples/gras/chrono/chrono.xml
45 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/chrono"
46 )
47 #simple_token
48 add_custom_command(TARGET gras_stub_generator
49 POST_BUILD
50 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
51 ARGS simple_token ${PROJECT_DIRECTORY}/examples/gras/mutual_exclusion/simple_token/simple_token.xml
52 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/mutual_exclusion/simple_token"
53 )
54 #mmrpc
55 add_custom_command(TARGET gras_stub_generator
56 POST_BUILD
57 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
58 ARGS mmrpc ${PROJECT_DIRECTORY}/examples/gras/mmrpc/mmrpc.xml
59 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/mmrpc"
60 )
61 #all2all
62 add_custom_command(TARGET gras_stub_generator
63 POST_BUILD
64 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
65 ARGS all2all ${PROJECT_DIRECTORY}/examples/gras/all2all/all2all.xml
66 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/all2all"
67 )
68 #pmm
69 add_custom_command(TARGET gras_stub_generator
70 POST_BUILD
71 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
72 ARGS pmm ${PROJECT_DIRECTORY}/examples/gras/pmm/pmm.xml
73 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/pmm"
74 )
75 #synchro
76 add_custom_command(TARGET gras_stub_generator
77 POST_BUILD
78 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
79 ARGS synchro ${PROJECT_DIRECTORY}/examples/gras/synchro/synchro.xml
80 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/synchro"
81 )
82 #properties
83 add_custom_command(TARGET gras_stub_generator
84 POST_BUILD
85 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
86 ARGS properties ${PROJECT_DIRECTORY}/examples/gras/properties/properties.xml
87 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/gras/properties"
88 )
89 #teshsuite/gras/msg_handle
90 add_custom_command(TARGET gras_stub_generator
91 POST_BUILD
92 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
93 ARGS msg_handle ${PROJECT_DIRECTORY}/teshsuite/gras/msg_handle/msg_handle.xml
94 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/teshsuite/gras/msg_handle"
95 )
96 #teshsuite/gras/empty_main
97 add_custom_command(TARGET gras_stub_generator
98 POST_BUILD
99 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
100 ARGS empty_main ${PROJECT_DIRECTORY}/teshsuite/gras/empty_main/empty_main.xml
101 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/teshsuite/gras/empty_main"
102 )
103 #teshsuite/gras/small_sleep
104 add_custom_command(TARGET gras_stub_generator
105 POST_BUILD
106 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
107 ARGS small_sleep ${PROJECT_DIRECTORY}/teshsuite/gras/small_sleep/small_sleep.xml
108 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/teshsuite/gras/small_sleep"
109 )
110 #examples/amok/bandwidth
111 add_custom_command(TARGET gras_stub_generator
112 POST_BUILD
113 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
114 ARGS bandwidth ${PROJECT_DIRECTORY}/examples/amok/bandwidth/bandwidth.xml
115 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/amok/bandwidth"
116 )
117 #examples/amok/saturate
118 add_custom_command(TARGET gras_stub_generator
119 POST_BUILD
120 COMMAND "${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator" 
121 ARGS saturate ${PROJECT_DIRECTORY}/examples/amok/saturate/saturate.xml
122 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/examples/amok/saturate"
123 )