include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/src/xxHash")
include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/src/rapidjson/include")
+option(WITH_FMT_HEADER_ONLY "use header-only version of fmt library" OFF)
find_package(fmt 6.0.0 QUIET)
if(fmt_FOUND)
include_directories(SYSTEM "${fmt_INCLUDE_DIR}")
else()
message(STATUS "Could not find fmt, will build it")
+ set(old_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS})
+ set(BUILD_SHARED_LIBS FALSE)
add_subdirectory(fmt)
+ set(BUILD_SHARED_LIBS ${old_BUILD_SHARED_LIBS})
+ unset(old_BUILD_SHARED_LIBS)
include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/src/fmt/include")
endif()
add_subdirectory(crimson)
endif()
+function(compile_with_fmt target)
+ get_target_property(fmt_compile_definitions
+ fmt::fmt INTERFACE_COMPILE_DEFINITIONS)
+ if(fmt_compile_definitions)
+ target_compile_definitions(${target} PUBLIC
+ ${fmt_compile_definitions})
+ endif()
+endfunction()
+
set(libcommon_files
${CMAKE_BINARY_DIR}/src/include/ceph_ver.h
ceph_ver.c
set_source_files_properties(ceph_ver.c
APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/src/include/ceph_ver.h)
add_library(common-objs OBJECT ${libcommon_files})
+compile_with_fmt(common-objs)
if(WITH_JAEGER)
find_package(yaml-cpp 0.6.0)