Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
6476a6b445d8aa9ad1c621b78fa30f0d422a244d
[simgrid.git] / examples / smpi / CMakeLists.txt
1 if(enable_smpi)
2   if(WIN32)
3     set(CMAKE_C_FLAGS "-include ${CMAKE_HOME_DIRECTORY}/include/smpi/smpi_main.h")
4   else()
5     set(CMAKE_C_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpicc")
6   endif()
7
8   set(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_BINARY_DIR}")
9
10   include_directories(BEFORE "${CMAKE_HOME_DIRECTORY}/include/smpi")
11   file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/mc/")
12
13   add_executable(bcbench bcbench.c)
14   add_executable(mvmul mvmul.c)
15   add_executable(smpi_traced tracing/smpi_traced.c)
16   add_executable(smpi_traced_simple tracing/smpi_traced_simple.c)
17   add_executable(smpi_replay replay/replay.c)
18
19   target_link_libraries(bcbench simgrid)
20   target_link_libraries(mvmul simgrid)
21   target_link_libraries(smpi_traced simgrid)
22   target_link_libraries(smpi_traced_simple simgrid)
23   target_link_libraries(smpi_replay simgrid)
24
25   if(HAVE_MC)
26     add_executable(smpi_bugged1 mc/bugged1.c)
27     add_executable(smpi_bugged2 mc/bugged2.c)
28     add_executable(smpi_bugged1_liveness mc/bugged1_liveness.c)
29     add_executable(smpi_only_send_deterministic mc/only_send_deterministic.c)
30     add_executable(smpi_mutual_exclusion mc/mutual_exclusion.c)
31     add_executable(smpi_non_termination1 mc/non_termination1.c)
32     add_executable(smpi_non_termination2 mc/non_termination2.c)
33     add_executable(smpi_non_termination3 mc/non_termination3.c)
34     add_executable(smpi_non_termination4 mc/non_termination4.c)
35
36     target_link_libraries(smpi_bugged1 simgrid)
37     target_link_libraries(smpi_bugged2 simgrid)
38     target_link_libraries(smpi_bugged1_liveness simgrid)
39     target_link_libraries(smpi_only_send_deterministic simgrid)
40     target_link_libraries(smpi_mutual_exclusion simgrid)
41     target_link_libraries(smpi_non_termination1 simgrid)
42     target_link_libraries(smpi_non_termination2 simgrid)
43     target_link_libraries(smpi_non_termination3 simgrid)
44     target_link_libraries(smpi_non_termination4 simgrid)
45
46     set_target_properties(smpi_bugged1 PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
47     set_target_properties(smpi_bugged2 PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
48     set_target_properties(smpi_bugged1_liveness PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
49     set_target_properties(smpi_only_send_deterministic PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
50     set_target_properties(smpi_mutual_exclusion PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
51     set_target_properties(smpi_non_termination1 PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
52     set_target_properties(smpi_non_termination2 PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
53     set_target_properties(smpi_non_termination3 PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
54     set_target_properties(smpi_non_termination4 PROPERTIES RUNTIME_OUTPUT_DIRECTORY "./mc")
55   endif()
56 endif()
57
58 set(tesh_files
59   ${tesh_files}
60   ${CMAKE_CURRENT_SOURCE_DIR}/tracing/smpi_traced.tesh
61   ${CMAKE_CURRENT_SOURCE_DIR}/replay/smpi_replay.tesh
62   PARENT_SCOPE)
63 set(examples_src
64   ${examples_src}
65   ${CMAKE_CURRENT_SOURCE_DIR}/mvmul.c
66   ${CMAKE_CURRENT_SOURCE_DIR}/bcbench.c
67   ${CMAKE_CURRENT_SOURCE_DIR}/replay/replay.c
68   ${CMAKE_CURRENT_SOURCE_DIR}/tracing/smpi_traced.c
69   ${CMAKE_CURRENT_SOURCE_DIR}/tracing/smpi_traced_simple.c
70   ${CMAKE_CURRENT_SOURCE_DIR}/mc/bugged2.c
71   ${CMAKE_CURRENT_SOURCE_DIR}/mc/bugged1.c
72   ${CMAKE_CURRENT_SOURCE_DIR}/mc/bugged1_liveness.c
73   ${CMAKE_CURRENT_SOURCE_DIR}/mc/only_send_deterministic.c
74   ${CMAKE_CURRENT_SOURCE_DIR}/mc/mutual_exclusion.c
75   ${CMAKE_CURRENT_SOURCE_DIR}/mc/non_termination1.c
76   ${CMAKE_CURRENT_SOURCE_DIR}/mc/non_termination2.c
77   ${CMAKE_CURRENT_SOURCE_DIR}/mc/non_termination3.c
78   ${CMAKE_CURRENT_SOURCE_DIR}/mc/non_termination4.c
79   PARENT_SCOPE)
80 set(bin_files
81   ${bin_files}
82   ${CMAKE_CURRENT_SOURCE_DIR}/hostfile
83   ${CMAKE_CURRENT_SOURCE_DIR}/mc/promela_bugged1_liveness
84   ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_bugged1_liveness
85   ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_bugged1
86   ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_bugged2
87   ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_only_send_deterministic
88   ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_mutual_exclusion
89   ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_non_termination
90   PARENT_SCOPE)
91 set(txt_files
92   ${txt_files}
93   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions0.txt
94   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions1.txt
95   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_allReduce.txt
96   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_allgatherv.txt
97   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_alltoall.txt
98   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_alltoallv.txt
99   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_barrier.txt
100   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_bcast.txt
101   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_bcast_reduce_datatypes.txt
102   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_gather.txt
103   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_reducescatter.txt
104   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_waitall.txt
105   ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_with_isend.txt
106   ${CMAKE_CURRENT_SOURCE_DIR}/replay/split_traces
107   PARENT_SCOPE)