endif(${ENABLE_SHARED})
set(Boost_USE_MULTITHREADED ON)
-find_package(Boost COMPONENTS thread system REQUIRED)
+find_package(Boost COMPONENTS thread system regex REQUIRED)
include_directories(${Boost_INCLUDE_DIRS})
find_package(Threads REQUIRED)
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -ftemplate-depth-1024 -Wno-invalid-offsetof -Wnon-virtual-dtor -Wno-invalid-offsetof -Wstrict-null-sentinel -Woverloaded-virtual")
-set(EXTRALIBS uuid rt dl)
+set(EXTRALIBS uuid rt dl ${Boost_LIBS})
if(${WITH_PROFILER})
list(APPEND EXTRALIBS profiler)
OUTPUT_VARIABLE PYTHON_INSTDIR
OUTPUT_STRIP_TRAILING_WHITESPACE)
+if(HAVE_XIO)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -I${Xio_INCLUDE_DIR}")
+ list(APPEND EXTRALIBS ${Xio_LIBRARY} ibverbs rdmacm pthread rt)
+endif(HAVE_XIO)
+
if(${WITH_TCMALLOC})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free")
set(TCMALLOC_LIBS tcmalloc)
add_subdirectory(json_spirit)
+set(xio_common_srcs)
+if(HAVE_XIO)
+ list(APPEND xio_common_srcs
+ msg/xio/XioConnection.cc
+ msg/xio/XioMsg.cc
+ msg/xio/XioPool.cc
+ msg/xio/XioMessenger.cc
+ msg/xio/XioPortal.cc
+ msg/xio/QueueStrategy.cc)
+endif(HAVE_XIO)
+
set(libcommon_files
${CMAKE_BINARY_DIR}/src/include/ceph_ver.h
ceph_ver.c
-# LRC plugin
+# lrc plugin
set(lrc_srcs
ErasureCodePluginLrc.cc
$<TARGET_OBJECTS:erasure_code_objs>
)
-add_library(ec_LRC SHARED ${lrc_srcs})
-add_dependencies(ec_LRC ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
-set_target_properties(ec_LRC PROPERTIES VERSION 1.0.0 SOVERSION 1)
-install(TARGETS ec_LRC DESTINATION lib/erasure-code)
+add_library(ec_lrc SHARED ${lrc_srcs})
+add_dependencies(ec_lrc ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
+target_link_libraries(ec_lrc json_spirit)
+set_target_properties(ec_lrc PROPERTIES VERSION 1.0.0 SOVERSION 1)
+install(TARGETS ec_lrc DESTINATION lib/erasure-code)