]> git.proxmox.com Git - ceph.git/blob - ceph/src/test/erasure-code/CMakeLists.txt
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / test / erasure-code / CMakeLists.txt
1 add_ceph_test(test-erasure-code-plugins.sh ${CMAKE_CURRENT_SOURCE_DIR}/test-erasure-code-plugins.sh)
2
3 add_ceph_test(test-erasure-code.sh ${CMAKE_CURRENT_SOURCE_DIR}/test-erasure-code.sh)
4 add_ceph_test(test-erasure-eio.sh ${CMAKE_CURRENT_SOURCE_DIR}/test-erasure-eio.sh)
5
6 add_executable(ceph_erasure_code_benchmark
7 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
8 ceph_erasure_code_benchmark.cc)
9 target_link_libraries(ceph_erasure_code_benchmark ceph-common ${Boost_PROGRAM_OPTIONS_LIBRARY} global ${CMAKE_DL_LIBS})
10 install(TARGETS ceph_erasure_code_benchmark
11 DESTINATION bin)
12
13 add_executable(ceph_erasure_code_non_regression ceph_erasure_code_non_regression.cc)
14 target_link_libraries(ceph_erasure_code_non_regression ceph-common ${Boost_PROGRAM_OPTIONS_LIBRARY} global ${CMAKE_DL_LIBS})
15
16 add_executable(ceph_erasure_code ceph_erasure_code.cc)
17 target_link_libraries(ceph_erasure_code ceph-common ${Boost_PROGRAM_OPTIONS_LIBRARY} global ${CMAKE_DL_LIBS})
18 install(TARGETS ceph_erasure_code
19 DESTINATION bin)
20
21 add_library(ec_example SHARED
22 ErasureCodePluginExample.cc
23 $<TARGET_OBJECTS:erasure_code_objs>)
24 add_dependencies(ec_example ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
25 target_link_libraries(ec_example pthread ${EXTRALIBS})
26
27 add_library(ec_missing_entry_point SHARED ErasureCodePluginMissingEntryPoint.cc)
28 add_dependencies(ec_missing_entry_point ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
29 target_link_libraries(ec_missing_entry_point pthread ${EXTRALIBS})
30
31 add_library(ec_missing_version SHARED ErasureCodePluginMissingVersion.cc)
32 add_dependencies(ec_missing_version ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
33 target_link_libraries(ec_missing_version pthread ${EXTRALIBS})
34
35 add_library(ec_hangs SHARED ErasureCodePluginHangs.cc)
36 add_dependencies(ec_hangs ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
37 target_link_libraries(ec_hangs pthread ${EXTRALIBS})
38
39 add_library(ec_fail_to_initialize SHARED ErasureCodePluginFailToInitialize.cc)
40 add_dependencies(ec_fail_to_initialize ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
41 target_link_libraries(ec_fail_to_initialize pthread ${EXTRALIBS})
42
43 add_library(ec_fail_to_register SHARED ErasureCodePluginFailToRegister.cc)
44 add_dependencies(ec_fail_to_register ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
45 target_link_libraries(ec_fail_to_register pthread ${EXTRALIBS})
46
47 # unittest_erasure_code_plugin
48 add_executable(unittest_erasure_code_plugin
49 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
50 TestErasureCodePlugin.cc
51 $<TARGET_OBJECTS:unit-main>
52 )
53 add_ceph_unittest(unittest_erasure_code_plugin ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin)
54 target_link_libraries(unittest_erasure_code_plugin
55 global
56 ${CMAKE_DL_LIBS}
57 ec_example
58 ceph-common
59 )
60 add_dependencies(unittest_erasure_code_plugin
61 ec_example
62 ec_missing_entry_point
63 ec_missing_version
64 ec_hangs
65 ec_fail_to_initialize
66 ec_fail_to_register)
67
68 # unittest_erasure_code
69 add_executable(unittest_erasure_code
70 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
71 TestErasureCode.cc
72 $<TARGET_OBJECTS:unit-main>
73 )
74 add_ceph_unittest(unittest_erasure_code ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code)
75 target_link_libraries(unittest_erasure_code
76 global
77 ceph-common
78 )
79
80 # unittest_erasure_code_plugin_jerasure
81 add_executable(unittest_erasure_code_plugin_jerasure
82 TestErasureCodePluginJerasure.cc
83 $<TARGET_OBJECTS:unit-main>
84 )
85 add_ceph_unittest(unittest_erasure_code_plugin_jerasure ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_jerasure)
86 target_link_libraries(unittest_erasure_code_plugin_jerasure
87 global
88 ceph-common)
89 add_dependencies(unittest_erasure_code_plugin_jerasure
90 ec_jerasure)
91
92 if(HAVE_BETTER_YASM_ELF64)
93
94 #unittest_erasure_code_isa
95 add_executable(unittest_erasure_code_isa
96 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
97 TestErasureCodeIsa.cc
98 $<TARGET_OBJECTS:unit-main>
99 )
100 add_ceph_unittest(unittest_erasure_code_isa ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_isa)
101 target_link_libraries(unittest_erasure_code_isa
102 global
103 ceph-common
104 ec_isa
105 erasure_code
106 )
107
108 #unittest_erasure_code_plugin_isa
109 add_executable(unittest_erasure_code_plugin_isa
110 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
111 TestErasureCodePluginIsa.cc
112 $<TARGET_OBJECTS:unit-main>
113 )
114 add_ceph_unittest(unittest_erasure_code_plugin_isa ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_isa)
115 target_link_libraries(unittest_erasure_code_plugin_isa
116 global
117 ceph-common
118 ${CMAKE_DL_LIBS}
119 erasure_code
120 )
121 add_dependencies(unittest_erasure_code_plugin_isa
122 ec_isa)
123 endif(HAVE_BETTER_YASM_ELF64)
124
125 # unittest_erasure_code_lrc
126 add_executable(unittest_erasure_code_lrc
127 TestErasureCodeLrc.cc
128 $<TARGET_OBJECTS:unit-main>)
129 add_ceph_unittest(unittest_erasure_code_lrc ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_lrc)
130 target_link_libraries(unittest_erasure_code_lrc
131 global
132 ${CMAKE_DL_LIBS}
133 ec_lrc
134 ceph-common
135 )
136
137 # unittest_erasure_code_plugin_lrc
138 add_executable(unittest_erasure_code_plugin_lrc
139 TestErasureCodePluginLrc.cc
140 $<TARGET_OBJECTS:unit-main>
141 )
142 add_ceph_unittest(unittest_erasure_code_plugin_lrc ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_lrc)
143 add_dependencies(unittest_erasure_code_plugin_lrc
144 ec_lrc
145 ec_jerasure)
146 target_link_libraries(unittest_erasure_code_plugin_lrc
147 global
148 ${CMAKE_DL_LIBS}
149 ceph-common)
150
151 # unittest_erasure_code_plugin_shec
152 add_executable(unittest_erasure_code_plugin_shec
153 TestErasureCodePluginShec.cc
154 $<TARGET_OBJECTS:unit-main>
155 )
156 add_ceph_unittest(unittest_erasure_code_plugin_shec ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_shec)
157 target_link_libraries(unittest_erasure_code_plugin_shec
158 global
159 ${CMAKE_DL_LIBS}
160 ceph-common)
161 add_dependencies(unittest_erasure_code_plugin_shec
162 ec_shec)
163
164 # unittest_erasure_code_example
165 add_executable(unittest_erasure_code_example
166 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
167 TestErasureCodeExample.cc
168 $<TARGET_OBJECTS:unit-main>
169 )
170 add_ceph_unittest(unittest_erasure_code_example ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_example)
171 target_link_libraries(unittest_erasure_code_example
172 global
173 ${CMAKE_DL_LIBS}
174 ceph-common
175 erasure_code
176 ${UNITTEST_LIBS}
177 )
178 set_target_properties(unittest_erasure_code_example PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS})
179
180 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/include)
181 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code//jerasure/gf-complete/include)
182
183 # unittest_erasure_code_jerasure
184 add_executable(unittest_erasure_code_jerasure
185 TestErasureCodeJerasure.cc
186 $<TARGET_OBJECTS:unit-main>
187 )
188 add_ceph_unittest(unittest_erasure_code_jerasure ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_jerasure)
189 target_link_libraries(unittest_erasure_code_jerasure
190 global
191 ceph-common
192 ec_jerasure
193 )
194
195 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure)
196 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/shec)
197
198 # unittest_erasure_code_shec
199 add_executable(unittest_erasure_code_shec
200 TestErasureCodeShec.cc
201 $<TARGET_OBJECTS:unit-main>
202 )
203 add_ceph_unittest(unittest_erasure_code_shec ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec)
204 target_link_libraries(unittest_erasure_code_shec
205 global
206 ${CMAKE_DL_LIBS}
207 ceph-common
208 ec_shec
209 )
210
211 # unittest_erasure_code_shec_all
212 add_executable(unittest_erasure_code_shec_all
213 TestErasureCodeShec_all.cc
214 )
215 add_ceph_unittest(unittest_erasure_code_shec_all ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec_all)
216 target_link_libraries(unittest_erasure_code_shec_all
217 global
218 ${CMAKE_DL_LIBS}
219 ceph-common
220 ec_shec
221 )
222
223 # unittest_erasure_code_shec_thread
224 add_executable(unittest_erasure_code_shec_thread
225 TestErasureCodeShec_thread.cc
226 $<TARGET_OBJECTS:unit-main>
227 )
228 add_ceph_unittest(unittest_erasure_code_shec_thread ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec_thread)
229 target_link_libraries(unittest_erasure_code_shec_thread
230 global
231 ${CMAKE_DL_LIBS}
232 ceph-common
233 ec_shec
234 )
235
236
237 # unittest_erasure_code_shec_arguments
238 add_executable(unittest_erasure_code_shec_arguments
239 TestErasureCodeShec_arguments.cc
240 )
241 add_ceph_unittest(unittest_erasure_code_shec_arguments ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec_arguments)
242 target_link_libraries(unittest_erasure_code_shec_arguments
243 global
244 ${CMAKE_DL_LIBS}
245 ceph-common
246 ec_shec
247 )