Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Allow out of source builds
[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
16 add_custom_command(
17   OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/_rpc_simulator.c
18          ${CMAKE_CURRENT_BINARY_DIR}/_rpc_client.c
19          ${CMAKE_CURRENT_BINARY_DIR}/_rpc_server.c
20          ${CMAKE_CURRENT_BINARY_DIR}/_rpc_forwarder.c
21   DEPENDS gras_stub_generator ${CMAKE_CURRENT_SOURCE_DIR}/rpc.xml
22   COMMAND ${CMAKE_BINARY_DIR}/bin/gras_stub_generator rpc ${CMAKE_CURRENT_SOURCE_DIR}/rpc.xml
23 )
24
25 ### Add definitions for compile
26 if(NOT WIN32)
27 target_link_libraries(rpc_simulator simgrid pthread m )
28 target_link_libraries(rpc_client gras pthread m )
29 target_link_libraries(rpc_forwarder gras pthread m )
30 target_link_libraries(rpc_server gras pthread m )
31 else(NOT WIN32)
32 target_link_libraries(rpc_simulator simgrid)
33 target_link_libraries(rpc_client gras)
34 target_link_libraries(rpc_forwarder gras)
35 target_link_libraries(rpc_server gras)
36 endif(NOT WIN32)
37