Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Since cmake 2.6, else() and endif() don't need to repeat the condition.
[simgrid.git] / examples / gras / ping / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.6)
2
3 set_source_files_properties(
4   ${CMAKE_CURRENT_BINARY_DIR}/_ping_simulator.c
5   ${CMAKE_CURRENT_BINARY_DIR}/_ping_client.c
6   ${CMAKE_CURRENT_BINARY_DIR}/_ping_server.c
7   PROPERTIES GENERATED true)
8
9 set(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_BINARY_DIR}")
10 add_executable(ping_simulator
11   ${CMAKE_CURRENT_BINARY_DIR}/_ping_simulator.c
12   ${CMAKE_CURRENT_SOURCE_DIR}/ping_server.c
13   ${CMAKE_CURRENT_SOURCE_DIR}/ping_client.c
14   ${CMAKE_CURRENT_SOURCE_DIR}/ping_common.c)
15 add_executable(ping_client
16   ${CMAKE_CURRENT_BINARY_DIR}/_ping_client.c
17   ${CMAKE_CURRENT_SOURCE_DIR}/ping_client.c
18   ${CMAKE_CURRENT_SOURCE_DIR}/ping_common.c)
19 add_executable(ping_server
20   ${CMAKE_CURRENT_BINARY_DIR}/_ping_server.c
21   ${CMAKE_CURRENT_SOURCE_DIR}/ping_server.c
22   ${CMAKE_CURRENT_SOURCE_DIR}/ping_common.c)
23
24 add_custom_command(
25   OUTPUT
26   ${CMAKE_CURRENT_BINARY_DIR}/_ping_simulator.c
27   ${CMAKE_CURRENT_BINARY_DIR}/_ping_client.c
28   ${CMAKE_CURRENT_BINARY_DIR}/_ping_server.c
29   DEPENDS gras_stub_generator ${CMAKE_CURRENT_SOURCE_DIR}/ping.xml
30   COMMAND ${CMAKE_BINARY_DIR}/bin/gras_stub_generator ping ${CMAKE_CURRENT_SOURCE_DIR}/ping.xml
31   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
32   )
33
34 ### Add definitions for compile
35 if(NOT WIN32)
36   target_link_libraries(ping_simulator simgrid pthread m )
37   target_link_libraries(ping_client gras pthread m )
38   target_link_libraries(ping_server gras pthread m )
39 else()
40   target_link_libraries(ping_simulator simgrid)
41   target_link_libraries(ping_client gras)
42   target_link_libraries(ping_server gras)
43 endif()
44
45 set(tesh_files
46   ${tesh_files}
47   ${CMAKE_CURRENT_SOURCE_DIR}/test_rl.tesh
48   ${CMAKE_CURRENT_SOURCE_DIR}/test_sg_32.tesh
49   ${CMAKE_CURRENT_SOURCE_DIR}/test_sg_64.tesh
50   PARENT_SCOPE
51   )
52 set(xml_files
53   ${xml_files}
54   ${CMAKE_CURRENT_SOURCE_DIR}/ping.xml
55   PARENT_SCOPE
56   )
57 set(examples_src
58   ${examples_src}
59   ${CMAKE_CURRENT_SOURCE_DIR}/ping_client.c
60   ${CMAKE_CURRENT_SOURCE_DIR}/ping_common.c
61   ${CMAKE_CURRENT_SOURCE_DIR}/ping_server.c
62   ${CMAKE_CURRENT_SOURCE_DIR}/ping.h
63   PARENT_SCOPE
64   )
65 set(bin_files
66   ${bin_files}
67   PARENT_SCOPE
68   )