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