1 add_ceph_test(test-erasure-code-plugins.sh ${CMAKE_CURRENT_SOURCE_DIR}/test-erasure-code-plugins.sh)
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)
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 global ${CMAKE_DL_LIBS})
10 install(TARGETS ceph_erasure_code_benchmark
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 global ${CMAKE_DL_LIBS})
16 add_executable(ceph_erasure_code ceph_erasure_code.cc)
17 target_link_libraries(ceph_erasure_code ceph-common Boost::program_options global ${CMAKE_DL_LIBS})
18 install(TARGETS ceph_erasure_code
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})
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})
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})
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})
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})
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})
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>
53 add_ceph_unittest(unittest_erasure_code_plugin ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin)
54 target_link_libraries(unittest_erasure_code_plugin
60 add_dependencies(unittest_erasure_code_plugin
62 ec_missing_entry_point
68 # unittest_erasure_code
69 add_executable(unittest_erasure_code
70 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
72 $<TARGET_OBJECTS:unit-main>
74 add_ceph_unittest(unittest_erasure_code ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code)
75 target_link_libraries(unittest_erasure_code
80 # unittest_erasure_code_plugin_jerasure
81 add_executable(unittest_erasure_code_plugin_jerasure
82 TestErasureCodePluginJerasure.cc
83 $<TARGET_OBJECTS:unit-main>
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
89 add_dependencies(unittest_erasure_code_plugin_jerasure
92 if(HAVE_BETTER_YASM_ELF64)
94 #unittest_erasure_code_isa
95 add_executable(unittest_erasure_code_isa
96 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
98 $<TARGET_OBJECTS:unit-main>
100 add_ceph_unittest(unittest_erasure_code_isa ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_isa)
101 target_link_libraries(unittest_erasure_code_isa
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>
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
121 add_dependencies(unittest_erasure_code_plugin_isa
123 endif(HAVE_BETTER_YASM_ELF64)
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
137 # unittest_erasure_code_plugin_lrc
138 add_executable(unittest_erasure_code_plugin_lrc
139 TestErasureCodePluginLrc.cc
140 $<TARGET_OBJECTS:unit-main>
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
146 target_link_libraries(unittest_erasure_code_plugin_lrc
151 # unittest_erasure_code_plugin_shec
152 add_executable(unittest_erasure_code_plugin_shec
153 TestErasureCodePluginShec.cc
154 $<TARGET_OBJECTS:unit-main>
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
161 add_dependencies(unittest_erasure_code_plugin_shec
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>
170 add_ceph_unittest(unittest_erasure_code_example ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_example)
171 target_link_libraries(unittest_erasure_code_example
178 set_target_properties(unittest_erasure_code_example PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS})
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)
183 # unittest_erasure_code_jerasure
184 add_executable(unittest_erasure_code_jerasure
185 TestErasureCodeJerasure.cc
186 $<TARGET_OBJECTS:unit-main>
188 add_ceph_unittest(unittest_erasure_code_jerasure ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_jerasure)
189 target_link_libraries(unittest_erasure_code_jerasure
195 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure)
196 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/shec)
198 # unittest_erasure_code_shec
199 add_executable(unittest_erasure_code_shec
200 TestErasureCodeShec.cc
201 $<TARGET_OBJECTS:unit-main>
203 add_ceph_unittest(unittest_erasure_code_shec ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec)
204 target_link_libraries(unittest_erasure_code_shec
211 # unittest_erasure_code_shec_all
212 add_executable(unittest_erasure_code_shec_all
213 TestErasureCodeShec_all.cc
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
223 # unittest_erasure_code_shec_thread
224 add_executable(unittest_erasure_code_shec_thread
225 TestErasureCodeShec_thread.cc
226 $<TARGET_OBJECTS:unit-main>
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
237 # unittest_erasure_code_shec_arguments
238 add_executable(unittest_erasure_code_shec_arguments
239 TestErasureCodeShec_arguments.cc
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