Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
b92569b4c7c69b9ddfc4eb22ece41edfe45f106c
[simgrid.git] / examples / gras / rpc / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.6)
2
3 set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/_rpc_simulator.c 
4                             ${CMAKE_CURRENT_BINARY_DIR}/_rpc_client.c 
5                             ${CMAKE_CURRENT_BINARY_DIR}/_rpc_forwarder.c 
6                             ${CMAKE_CURRENT_BINARY_DIR}/_rpc_server.c
7     PROPERTIES GENERATED true)
8
9 set(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_BINARY_DIR}")
10
11 add_executable(rpc_simulator ${CMAKE_CURRENT_BINARY_DIR}/_rpc_simulator.c rpc.c)
12 add_executable(rpc_client    ${CMAKE_CURRENT_BINARY_DIR}/_rpc_client.c    rpc.c)
13 add_executable(rpc_forwarder ${CMAKE_CURRENT_BINARY_DIR}/_rpc_forwarder.c rpc.c)
14 add_executable(rpc_server    ${CMAKE_CURRENT_BINARY_DIR}/_rpc_server.c    rpc.c)
15 add_custom_command(
16   OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/_rpc_simulator.c
17          ${CMAKE_CURRENT_BINARY_DIR}/_rpc_client.c
18          ${CMAKE_CURRENT_BINARY_DIR}/_rpc_server.c
19          ${CMAKE_CURRENT_BINARY_DIR}/_rpc_forwarder.c
20   DEPENDS gras_stub_generator ${CMAKE_CURRENT_SOURCE_DIR}/rpc.xml
21   COMMAND ${CMAKE_BINARY_DIR}/bin/gras_stub_generator rpc ${CMAKE_CURRENT_SOURCE_DIR}/rpc.xml
22 )
23
24 ### Add definitions for compile
25 target_link_libraries(rpc_simulator simgrid pthread m -fprofile-arcs)
26 target_link_libraries(rpc_client gras pthread m -fprofile-arcs)
27 target_link_libraries(rpc_forwarder gras pthread m -fprofile-arcs)
28 target_link_libraries(rpc_server gras pthread m -fprofile-arcs)