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
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})
12 add_executable(ceph_erasure_code ceph_erasure_code.cc)
13 target_link_libraries(ceph_erasure_code ceph-common Boost::program_options global ${CMAKE_DL_LIBS})
14 install(TARGETS ceph_erasure_code
17 add_library(ec_example SHARED
18 ErasureCodePluginExample.cc
19 $<TARGET_OBJECTS:erasure_code_objs>)
20 add_dependencies(ec_example ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
21 target_link_libraries(ec_example pthread ${EXTRALIBS})
23 add_library(ec_missing_entry_point SHARED ErasureCodePluginMissingEntryPoint.cc)
24 add_dependencies(ec_missing_entry_point ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
25 target_link_libraries(ec_missing_entry_point pthread ${EXTRALIBS})
27 add_library(ec_missing_version SHARED ErasureCodePluginMissingVersion.cc)
28 add_dependencies(ec_missing_version ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
29 target_link_libraries(ec_missing_version pthread ${EXTRALIBS})
31 add_library(ec_hangs SHARED ErasureCodePluginHangs.cc)
32 add_dependencies(ec_hangs ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
33 target_link_libraries(ec_hangs pthread ${EXTRALIBS})
35 add_library(ec_fail_to_initialize SHARED ErasureCodePluginFailToInitialize.cc)
36 add_dependencies(ec_fail_to_initialize ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
37 target_link_libraries(ec_fail_to_initialize pthread ${EXTRALIBS})
39 add_library(ec_fail_to_register SHARED ErasureCodePluginFailToRegister.cc)
40 add_dependencies(ec_fail_to_register ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
41 target_link_libraries(ec_fail_to_register pthread ${EXTRALIBS})
43 # unittest_erasure_code_plugin
44 add_executable(unittest_erasure_code_plugin
45 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
46 TestErasureCodePlugin.cc
47 $<TARGET_OBJECTS:unit-main>
49 add_ceph_unittest(unittest_erasure_code_plugin ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin)
50 target_link_libraries(unittest_erasure_code_plugin
56 add_dependencies(unittest_erasure_code_plugin
58 ec_missing_entry_point
64 # unittest_erasure_code
65 add_executable(unittest_erasure_code
66 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
68 $<TARGET_OBJECTS:unit-main>
70 add_ceph_unittest(unittest_erasure_code ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code)
71 target_link_libraries(unittest_erasure_code
76 # unittest_erasure_code_plugin_jerasure
77 add_executable(unittest_erasure_code_plugin_jerasure
78 TestErasureCodePluginJerasure.cc
79 $<TARGET_OBJECTS:unit-main>
81 add_ceph_unittest(unittest_erasure_code_plugin_jerasure ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_jerasure)
82 target_link_libraries(unittest_erasure_code_plugin_jerasure
85 add_dependencies(unittest_erasure_code_plugin_jerasure
88 if(HAVE_BETTER_YASM_ELF64)
90 #unittest_erasure_code_isa
91 add_executable(unittest_erasure_code_isa
92 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
94 $<TARGET_OBJECTS:unit-main>
96 add_ceph_unittest(unittest_erasure_code_isa ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_isa)
97 target_link_libraries(unittest_erasure_code_isa
104 #unittest_erasure_code_plugin_isa
105 add_executable(unittest_erasure_code_plugin_isa
106 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
107 TestErasureCodePluginIsa.cc
108 $<TARGET_OBJECTS:unit-main>
110 add_ceph_unittest(unittest_erasure_code_plugin_isa ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_isa)
111 target_link_libraries(unittest_erasure_code_plugin_isa
117 add_dependencies(unittest_erasure_code_plugin_isa
119 endif(HAVE_BETTER_YASM_ELF64)
121 # unittest_erasure_code_lrc
122 add_executable(unittest_erasure_code_lrc
123 TestErasureCodeLrc.cc
124 $<TARGET_OBJECTS:unit-main>)
125 add_ceph_unittest(unittest_erasure_code_lrc ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_lrc)
126 target_link_libraries(unittest_erasure_code_lrc
133 # unittest_erasure_code_plugin_lrc
134 add_executable(unittest_erasure_code_plugin_lrc
135 TestErasureCodePluginLrc.cc
136 $<TARGET_OBJECTS:unit-main>
138 add_ceph_unittest(unittest_erasure_code_plugin_lrc ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_lrc)
139 add_dependencies(unittest_erasure_code_plugin_lrc
142 target_link_libraries(unittest_erasure_code_plugin_lrc
147 # unittest_erasure_code_plugin_shec
148 add_executable(unittest_erasure_code_plugin_shec
149 TestErasureCodePluginShec.cc
150 $<TARGET_OBJECTS:unit-main>
152 add_ceph_unittest(unittest_erasure_code_plugin_shec ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_plugin_shec)
153 target_link_libraries(unittest_erasure_code_plugin_shec
157 add_dependencies(unittest_erasure_code_plugin_shec
160 # unittest_erasure_code_example
161 add_executable(unittest_erasure_code_example
162 ${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
163 TestErasureCodeExample.cc
164 $<TARGET_OBJECTS:unit-main>
166 add_ceph_unittest(unittest_erasure_code_example ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_example)
167 target_link_libraries(unittest_erasure_code_example
174 set_target_properties(unittest_erasure_code_example PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS})
176 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/include)
177 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code//jerasure/gf-complete/include)
179 # unittest_erasure_code_jerasure
180 add_executable(unittest_erasure_code_jerasure
181 TestErasureCodeJerasure.cc
182 $<TARGET_OBJECTS:unit-main>
184 add_ceph_unittest(unittest_erasure_code_jerasure ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_jerasure)
185 target_link_libraries(unittest_erasure_code_jerasure
191 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure)
192 include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/shec)
194 # unittest_erasure_code_shec
195 add_executable(unittest_erasure_code_shec
196 TestErasureCodeShec.cc
197 $<TARGET_OBJECTS:unit-main>
199 add_ceph_unittest(unittest_erasure_code_shec ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec)
200 target_link_libraries(unittest_erasure_code_shec
207 # unittest_erasure_code_shec_all
208 add_executable(unittest_erasure_code_shec_all
209 TestErasureCodeShec_all.cc
211 add_ceph_unittest(unittest_erasure_code_shec_all ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec_all)
212 target_link_libraries(unittest_erasure_code_shec_all
219 # unittest_erasure_code_shec_thread
220 add_executable(unittest_erasure_code_shec_thread
221 TestErasureCodeShec_thread.cc
222 $<TARGET_OBJECTS:unit-main>
224 add_ceph_unittest(unittest_erasure_code_shec_thread ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec_thread)
225 target_link_libraries(unittest_erasure_code_shec_thread
233 # unittest_erasure_code_shec_arguments
234 add_executable(unittest_erasure_code_shec_arguments
235 TestErasureCodeShec_arguments.cc
237 add_ceph_unittest(unittest_erasure_code_shec_arguments ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_erasure_code_shec_arguments)
238 target_link_libraries(unittest_erasure_code_shec_arguments