Merge pull request #5610 from ceph/wip-cmake

cmake: make check
This commit is contained in:
Sage Weil 2015-09-03 15:08:36 -04:00
commit dffb1b0497
12 changed files with 1129 additions and 312 deletions

View File

@ -241,6 +241,11 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(OperatingSystem "Mac OS X")
endif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# enables testing and creates Make check command
enable_testing()
set(CMAKE_CTEST_COMMAND ctest -V)
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND})
add_subdirectory(src)
# man pages must be preprocessed, not supported yet

View File

@ -36,6 +36,9 @@ Debian Squeeze. Backports for Ceph can be found at ceph.com/debian-leveldb.
Building Ceph
=============
Autotools
---------
Developers, please refer to the [Developer
Guide](doc/dev/quick_guide.rst) for more information, otherwise, you
can build the server daemons, and FUSE client, by executing the
@ -47,6 +50,21 @@ following:
(Note that the FUSE client will only be built if libfuse is present.)
CMake
-----
Prerequisite:
CMake 2.8.11
Build instructions:
mkdir build
cd build
cmake [options] /path/to/ceph/src/dir
make
(Note that /path/to/ceph/src/dir can be in the tree and out of the tree)
Dependencies
------------

View File

@ -93,6 +93,7 @@ BuildRequires: /usr/share/selinux/devel/policyhelp
BuildRequires: gcc-c++
BuildRequires: boost-devel
BuildRequires: boost-random
BuildRequires: cmake
BuildRequires: cryptsetup
BuildRequires: gdbm
BuildRequires: hdparm

View File

@ -1,37 +0,0 @@
# - Find cds
#
# CDS_INCLUDE_DIR - where to find cds/init.h
# FIO_FOUND - True if found.
find_path(CDS_INC_DIR cds/init.h NO_DEFAULT_PATH PATHS
/usr/include
/opt/local/include
/usr/local/include
/opt/cds
)
if (CDS_INC_DIR)
set(CDS_FOUND TRUE)
else ()
set(CDS_FOUND FALSE)
endif ()
if (CDS_FOUND)
message(STATUS "Found cds: ${CDS_INC_DIR}")
else ()
message(STATUS "Failed to find cds/init.h")
if (CDS_FIND_REQUIRED)
message(FATAL_ERROR "Missing required cds/init.h")
endif ()
endif ()
find_library(CDS_LIBS
NAMES cds
PATHS /usr/lib /usr/lib/x86_64-linux-gnu /opt/cds/bin/gcc-amd64-linux-64
)
mark_as_advanced(
CDS_INC_DIR
CDS_LIBS
)

2
debian/control vendored
View File

@ -11,6 +11,7 @@ Build-Depends: autoconf,
automake,
autotools-dev,
libbz2-dev,
cmake,
cryptsetup-bin | cryptsetup,
debhelper (>= 6.0.7~),
default-jdk,
@ -27,6 +28,7 @@ Build-Depends: autoconf,
libboost-program-options-dev (>= 1.42),
libboost-system-dev (>= 1.42),
libboost-thread-dev (>= 1.42),
libboost-regex-dev,
libboost-random-dev,
libcurl4-gnutls-dev,
libedit-dev,

View File

@ -75,10 +75,6 @@ if(${WITH_PROFILER})
list(APPEND EXTRALIBS profiler)
endif(${WITH_PROFILER})
if(WITH_CDS)
list(APPEND EXTRALIBS ${CDS_LIBS})
endif(WITH_CDS)
if(USE_NSS)
if(NSS_FOUND)
if(NSPR_FOUND)
@ -179,6 +175,8 @@ set(crush_srcs
crush/CrushCompiler.cc
crush/CrushTester.cc)
add_library(crush STATIC ${crush_srcs})
add_subdirectory(json_spirit)
set(xio_common_srcs)
@ -343,7 +341,7 @@ endif(${WITH_PROFILER})
add_library(common_utf8 STATIC common/utf8.c)
target_link_libraries( common json_spirit common_utf8 erasure_code rt uuid ${CRYPTO_LIBS} ${Boost_LIBRARIES})
target_link_libraries( common json_spirit common_utf8 erasure_code rt uuid ${CRYPTO_LIBS} ${Boost_LIBRARIES} ${BLKID_LIBRARIES})
set(libglobal_srcs
global/global_init.cc
@ -685,6 +683,7 @@ set(crushtool_srcs
tools/crushtool.cc)
add_executable(crushtool ${crushtool_srcs})
target_link_libraries(crushtool global)
install(TARGETS crushtool DESTINATION bin)
# Support/Tools
add_subdirectory(gmock)
@ -695,6 +694,12 @@ target_link_libraries(cephfstool common ${EXTRALIBS})
set_target_properties(cephfstool PROPERTIES OUTPUT_NAME cephfs)
install(TARGETS cephfstool DESTINATION bin)
set(compressor_srcs
compressor/Compressor.cc
compressor/AsyncCompressor.cc)
add_library(compressor STATIC ${compressor_srcs})
target_link_libraries(compressor common snappy)
#set(ceph_srcs tools/ceph.cc tools/common.cc)
#add_executable(ceph ${ceph_srcs})
#target_link_libraries(ceph global ${LIBEDIT_LIBS})
@ -852,6 +857,32 @@ if(${WITH_RBD})
${BLKID_LIBRARIES} ${CMAKE_DL_LIBS} ${TCMALLOC_LIBS})
install(TARGETS rbd DESTINATION bin)
install(PROGRAMS ${CMAKE_SOURCE_DIR}/src/ceph-rbdnamer DESTINATION bin)
set(librbd_replay_srcs
rbd_replay/actions.cc
rbd_replay/Deser.cc
rbd_replay/ImageNameMap.cc
rbd_replay/PendingIO.cc
rbd_replay/rbd_loc.cc
rbd_replay/Replayer.cc
rbd_replay/Ser.cc)
add_library(librbd_replay STATIC ${librbd_replay_srcs})
target_link_libraries(librbd_replay PRIVATE librbd librados global udev)
add_executable(rbd_replay
rbd_replay/rbd-replay.cc
$<TARGET_OBJECTS:parse_secret_objs>
)
target_link_libraries(rbd_replay librbd librados global librbd_replay keyutils)
install(TARGETS rbd_replay DESTINATION bin)
set(librbd_replay_ios_srcs
rbd_replay/ios.cc)
add_library(librbd_replay_ios STATIC ${librbd_replay_ios_srcs})
target_link_libraries(librbd_replay_ios librbd librados global)
install(TARGETS librbd_replay librbd_replay_ios DESTINATION lib)
endif(${WITH_RBD})
# RadosGW

View File

@ -4,6 +4,7 @@ set(erasure_codelibdir ${LIBRARY_OUTPUT_PATH}/erasure-code)
add_subdirectory(jerasure)
add_subdirectory(lrc)
add_subdirectory(shec)
if (HAVE_BETTER_YASM_ELF64)
add_subdirectory(isa)

View File

@ -4,45 +4,45 @@ include_directories(isa-l/include)
set(isa_srcs
isa-l/erasure_code/ec_base.c
isa-l/erasure_code/ec_highlevel_func.c
isa-l/erasure_code/ec_multibinary.asm.s
isa-l/erasure_code/gf_2vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_2vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_2vect_dot_prod_sse.asm.s
isa-l/erasure_code/gf_3vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_3vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_3vect_dot_prod_sse.asm.s
isa-l/erasure_code/gf_4vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_4vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_4vect_dot_prod_sse.asm.s
isa-l/erasure_code/gf_5vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_5vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_5vect_dot_prod_sse.asm.s
isa-l/erasure_code/gf_6vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_6vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_6vect_dot_prod_sse.asm.s
isa-l/erasure_code/gf_vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_vect_dot_prod_sse.asm.s
isa-l/erasure_code/gf_2vect_mad_avx2.asm.s
isa-l/erasure_code/gf_2vect_mad_avx.asm.s
isa-l/erasure_code/gf_2vect_mad_sse.asm.s
isa-l/erasure_code/gf_3vect_mad_avx2.asm.s
isa-l/erasure_code/gf_3vect_mad_avx.asm.s
isa-l/erasure_code/gf_3vect_mad_sse.asm.s
isa-l/erasure_code/gf_4vect_mad_avx2.asm.s
isa-l/erasure_code/gf_4vect_mad_avx.asm.s
isa-l/erasure_code/gf_4vect_mad_sse.asm.s
isa-l/erasure_code/gf_5vect_mad_avx2.asm.s
isa-l/erasure_code/gf_5vect_mad_avx.asm.s
isa-l/erasure_code/gf_5vect_mad_sse.asm.s
isa-l/erasure_code/gf_6vect_mad_avx2.asm.s
isa-l/erasure_code/gf_6vect_mad_avx.asm.s
isa-l/erasure_code/gf_6vect_mad_sse.asm.s
isa-l/erasure_code/gf_vect_mad_avx2.asm.s
isa-l/erasure_code/ec_highlevel_func.c
isa-l/erasure_code/gf_2vect_mad_avx.asm.s
isa-l/erasure_code/gf_3vect_mad_avx.asm.s
isa-l/erasure_code/gf_4vect_mad_avx.asm.s
isa-l/erasure_code/gf_5vect_mad_avx.asm.s
isa-l/erasure_code/gf_6vect_mad_avx.asm.s
isa-l/erasure_code/gf_vect_mad_avx.asm.s
isa-l/erasure_code/ec_multibinary.asm.s
isa-l/erasure_code/gf_2vect_mad_sse.asm.s
isa-l/erasure_code/gf_3vect_mad_sse.asm.s
isa-l/erasure_code/gf_4vect_mad_sse.asm.s
isa-l/erasure_code/gf_5vect_mad_sse.asm.s
isa-l/erasure_code/gf_6vect_mad_sse.asm.s
isa-l/erasure_code/gf_vect_mad_sse.asm.s
isa-l/erasure_code/gf_2vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_3vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_4vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_5vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_6vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_vect_dot_prod_avx2.asm.s
isa-l/erasure_code/gf_vect_mul_avx.asm.s
isa-l/erasure_code/gf_2vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_3vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_4vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_5vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_6vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_vect_dot_prod_avx.asm.s
isa-l/erasure_code/gf_vect_mul_sse.asm.s
ErasureCodeIsa.cc
ErasureCodeIsaTableCache.cc

View File

@ -0,0 +1,36 @@
#shec plugin
set(shec_srcs
${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
ErasureCodePluginShec.cc
ErasureCodeShec.cc
ErasureCodeShecTableCache.cc
determinant.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/src/cauchy.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/src/galois.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/src/jerasure.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/src/liberation.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/src/reed_sol.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_wgen.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_method.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_w16.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_w32.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_w64.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_w128.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_general.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_w4.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_rand.c
${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/src/gf_w8.c)
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/include)
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/gf-complete/include)
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure)
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/shec)
add_library(ec_shec_generic SHARED ${shec_srcs})
target_link_libraries(ec_shec_generic crush pthread)
add_dependencies(ec_shec_generic ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
set_target_properties(ec_shec_generic PROPERTIES VERSION 1.0.0 SOVERSION 1)
install(TARGETS ec_shec_generic DESTINATION lib/erasure-code)
#TODO:build libec_shec_neon, libec_shec+sse3, libec_shec_sse4 libraries

View File

@ -232,7 +232,4 @@
/* Defined if XIO */
#cmakedefine HAVE_XIO
/* Defined if CDS */
#cmakedefine HAVE_CDS
#endif /* CONFIG_H */

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,264 @@
# make check tests for erasure-code directory
# unittest_erasure_code_plugin
add_executable(unittest_erasure_code_plugin EXCLUDE_FROM_ALL
${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
TestErasureCodePlugin.cc
)
add_test(unittest_erasure_code_plugin unittest_erasure_code_plugin)
add_dependencies(check unittest_erasure_code_plugin)
target_link_libraries(unittest_erasure_code_plugin
global
osd
common
dl
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_plugin PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code
add_executable(unittest_erasure_code EXCLUDE_FROM_ALL
${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
TestErasureCode.cc
)
add_test(unittest_erasure_code unittest_erasure_code)
add_dependencies(check unittest_erasure_code)
target_link_libraries(unittest_erasure_code
global
osd
common
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_jerasure_plugin
add_executable(unittest_erasure_code_jerasure_plugin EXCLUDE_FROM_ALL
TestErasureCodePluginJerasure.cc
)
add_test(unittest_erasure_code_jerasure_plugin unittest_erasure_code_jerasure_plugin)
add_dependencies(check unittest_erasure_code_jerasure_plugin)
target_link_libraries(unittest_erasure_code_jerasure_plugin
global
osd
common
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_jerasure_plugin PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
if(HAVE_BETTER_YASM_ELF64)
#unittest_erasure_code_isa
add_executable(unittest_erasure_code_isa EXCLUDE_FROM_ALL
${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
TestErasureCodeIsa.cc
)
add_test(unittest_erasure_code_isa unittest_erasure_code_isa)
add_dependencies(check unittest_erasure_code_isa)
target_link_libraries(unittest_erasure_code_isa
global
osd
common
ec_isa
erasure_code
dl
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_isa PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
#unittest_erasure_code_plugin_isa
add_executable(unittest_erasure_code_plugin_isa EXCLUDE_FROM_ALL
${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
TestErasureCodePluginIsa.cc
)
add_test(unittest_erasure_code_plugin_isa unittest_erasure_code_plugin_isa)
add_dependencies(check unittest_erasure_code_plugin_isa)
target_link_libraries(unittest_erasure_code_plugin_isa
global
osd
common
ec_isa
crush
dl
erasure_code
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_plugin_isa PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
endif(HAVE_BETTER_YASM_ELF64)
# unittest_erasure_code_lrc
add_executable(unittest_erasure_code_lrc EXCLUDE_FROM_ALL
TestErasureCodeLrc.cc
${lrc_srcs}
)
add_test(unittest_erasure_code_lrc unittest_erasure_code_lrc)
add_dependencies(check unittest_erasure_code_lrc)
target_link_libraries(unittest_erasure_code_lrc
global
osd
dl
ec_lrc
common
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_lrc PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_plugin_lrc
add_executable(unittest_erasure_code_plugin_lrc EXCLUDE_FROM_ALL
TestErasureCodePluginLrc.cc
)
add_test(unittest_erasure_code_plugin_lrc unittest_erasure_code_plugin_lrc)
add_dependencies(check unittest_erasure_code_plugin_lrc)
target_link_libraries(unittest_erasure_code_plugin_lrc
global
osd
dl
common
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_plugin_lrc PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_plugin_shec
add_executable(unittest_erasure_code_plugin_shec EXCLUDE_FROM_ALL
TestErasureCodePluginShec.cc
)
add_test(unittest_erasure_code_plugin_shec unittest_erasure_code_plugin_shec)
add_dependencies(check unittest_erasure_code_plugin_shec)
target_link_libraries(unittest_erasure_code_plugin_shec
global
osd
dl
common
ec_shec_generic
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_plugin_shec PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_example
add_executable(unittest_erasure_code_example EXCLUDE_FROM_ALL
${CMAKE_SOURCE_DIR}/src/erasure-code/ErasureCode.cc
TestErasureCodeExample.cc
)
add_test(unittest_erasure_code_example unittest_erasure_code_example)
add_dependencies(check unittest_erasure_code_example)
target_link_libraries(unittest_erasure_code_example
global
osd
dl
common
erasure_code
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_example PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure/jerasure/include)
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code//jerasure/gf-complete/include)
# unittest_erasure_code_jerasure
add_executable(unittest_erasure_code_jerasure EXCLUDE_FROM_ALL
TestErasureCodeJerasure.cc
)
add_test(unittest_erasure_code_jerasure unittest_erasure_code_jerasure)
add_dependencies(check unittest_erasure_code_jerasure)
target_link_libraries(unittest_erasure_code_jerasure
global
osd
common
ec_jerasure_generic
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_jerasure PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/jerasure)
include_directories(${CMAKE_SOURCE_DIR}/src/erasure-code/shec)
# unittest_erasure_code_shec
add_executable(unittest_erasure_code_shec
TestErasureCodeShec.cc
)
add_test(unittest_erasure_code_shec unittest_erasure_code_shec)
add_dependencies(check unittest_erasure_code_shec)
target_link_libraries(unittest_erasure_code_shec
global
osd
dl
common
ec_shec_generic
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_shec PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_shec_all
add_executable(unittest_erasure_code_shec_all EXCLUDE_FROM_ALL
TestErasureCodeShec_all.cc
)
add_test(unittest_erasure_code_shec_all unittest_erasure_code_shec_all)
add_dependencies(check unittest_erasure_code_shec_all)
target_link_libraries(unittest_erasure_code_shec_all
global
osd
dl
common
ec_shec_generic
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_shec_all PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_shec_thread
add_executable(unittest_erasure_code_shec_thread EXCLUDE_FROM_ALL
TestErasureCodeShec_thread.cc
)
add_test(unittest_erasure_code_shec_thread unittest_erasure_code_shec_thread)
add_dependencies(check unittest_erasure_code_shec_thread)
target_link_libraries(unittest_erasure_code_shec_thread
global
osd
dl
common
ec_shec_generic
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_shec_thread PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
# unittest_erasure_code_shec_arguments
add_executable(unittest_erasure_code_shec_arguments EXCLUDE_FROM_ALL
TestErasureCodeShec_arguments.cc
)
add_test(unittest_erasure_code_shec_arguments unittest_erasure_code_shec_arguments)
add_dependencies(check unittest_erasure_code_shec_arguments)
target_link_libraries(unittest_erasure_code_shec_arguments
global
osd
dl
common
ec_shec_generic
${CMAKE_DL_LIBS}
${TCMALLOC_LIBS}
${UNITTEST_LIBS})
set_target_properties(unittest_erasure_code_shec_arguments PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})