1 cmake_minimum_required(VERSION 2.6)
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")
7 set(CMAKE_CXX_FLAGS -fprofile-arcs -ftest-coverage)
8 add_definitions (${INCLUDES} -fprofile-arcs -ftest-coverage)
10 add_executable(gras_stub_generator stub_generator.c unix_stub_generator.c windows_stub_generator.c)
12 ### Add definitions for compile
13 target_link_libraries(gras_stub_generator simgrid pthread m -fprofile-arcs)
15 ### make files after the build
17 add_custom_command(TARGET gras_stub_generator
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"
24 add_custom_command(TARGET gras_stub_generator
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"
31 add_custom_command(TARGET gras_stub_generator
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"
38 add_custom_command(TARGET gras_stub_generator
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"
45 add_custom_command(TARGET gras_stub_generator
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"
52 add_custom_command(TARGET gras_stub_generator
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"
59 add_custom_command(TARGET gras_stub_generator
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"
66 add_custom_command(TARGET gras_stub_generator
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"
73 add_custom_command(TARGET gras_stub_generator
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"
80 add_custom_command(TARGET gras_stub_generator
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"
87 add_custom_command(TARGET gras_stub_generator
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"
93 #teshsuite/gras/msg_handle
94 add_custom_command(TARGET gras_stub_generator
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"
100 #examples/amok/bandwidth
101 add_custom_command(TARGET gras_stub_generator
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"
107 #examples/amok/saturate
108 add_custom_command(TARGET gras_stub_generator
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"