1 add_library(common_buffer_obj OBJECT
4 add_library(common_texttable_obj OBJECT
7 add_library(common_prioritycache_obj OBJECT
9 add_dependencies(common_prioritycache_obj legacy-option-headers)
12 add_library(dlfcn_win32 STATIC win32/dlfcn.cc win32/errno.cc)
15 add_subdirectory(options)
46 admin_socket_client.cc
82 openssl_opts_handler.cc
86 perf_counters_collection.cc
107 list(APPEND common_srcs
111 if(WITH_CEPH_DEBUG_MUTEX)
112 list(APPEND common_srcs
115 condition_variable_debug.cc
116 shared_mutex_debug.cc)
121 set(CMAKE_MC_COMPILER x86_64-w64-mingw32-windmc)
122 set(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
126 OUTPUT ${CMAKE_BINARY_DIR}/src/common/event_logging.h
127 COMMAND ${CMAKE_MC_COMPILER} -b -e h -h ${CMAKE_BINARY_DIR}/src/common/
128 -r ${CMAKE_BINARY_DIR}/src/common ${CMAKE_SOURCE_DIR}/src/common/win32/event_logging.mc
129 COMMAND ${CMAKE_RC_COMPILER} ${CMAKE_BINARY_DIR}/src/common/event_logging.rc
130 -o ${CMAKE_BINARY_DIR}/src/common/event_logging.o
131 COMMAND ${CMAKE_CXX_COMPILER} -o ${CMAKE_BINARY_DIR}/bin/event_logging.dll -shared
132 ${CMAKE_BINARY_DIR}/src/common/event_logging.o
133 DEPENDS ${CMAKE_SOURCE_DIR}/src/common/win32/event_logging.mc)
135 set_source_files_properties(${CMAKE_SOURCE_DIR}/src/common/win32/syslog.cc
136 APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/src/common/event_logging.h)
138 include_directories(SYSTEM "${CMAKE_BINARY_DIR}/src/common/")
140 list(APPEND common_srcs
149 list(APPEND common_srcs
156 set_source_files_properties(${CMAKE_SOURCE_DIR}/src/common/version.cc
157 APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/src/include/ceph_ver.h)
160 set_source_files_properties(
163 PROPERTIES COMPILE_FLAGS -fno-var-tracking-assignments)
167 list(APPEND common_srcs freebsd_errno.cc)
169 list(APPEND common_srcs darwin_errno.cc)
171 list(APPEND common_srcs solaris_errno.cc)
173 list(APPEND common_srcs aix_errno.cc)
175 list(APPEND common_srcs win32/errno.cc)
176 list(APPEND common_srcs win32/wstring.cc)
180 list(APPEND common_srcs EventTrace.cc)
183 add_library(common-common-objs OBJECT
185 # Let's not rely on the default system headers and point Cmake to the
186 # retrieved OpenSSL location. This is especially important when cross
187 # compiling (e.g. targeting Windows).
188 target_include_directories(common-common-objs PRIVATE ${OPENSSL_INCLUDE_DIR})
190 target_compile_definitions(common-common-objs PRIVATE
191 "CMAKE_INSTALL_LIBDIR=\"${CMAKE_INSTALL_LIBDIR}\""
192 "CEPH_INSTALL_FULL_PKGLIBDIR=\"${CEPH_INSTALL_FULL_PKGLIBDIR}\""
193 "CEPH_INSTALL_DATADIR=\"${CEPH_INSTALL_DATADIR}\""
194 $<TARGET_PROPERTY:fmt::fmt,INTERFACE_COMPILE_DEFINITIONS>)
195 add_dependencies(common-common-objs legacy-option-headers)
197 set(common_mountcephfs_srcs
202 add_library(common_mountcephfs_objs OBJECT
203 ${common_mountcephfs_srcs})
208 crc32c_intel_baseline.c
211 list(APPEND crc32_srcs
214 set(CMAKE_ASM_FLAGS "-i ${PROJECT_SOURCE_DIR}/src/isa-l/include/ ${CMAKE_ASM_FLAGS}")
215 list(APPEND crc32_srcs
216 ${PROJECT_SOURCE_DIR}/src/isa-l/crc/crc32_iscsi_00.asm
217 crc32c_intel_fast_zero_asm.s)
220 list(APPEND crc32_srcs
223 list(APPEND crc32_srcs
225 crc32c_ppc_fast_zero_asm.S)
227 elseif(HAVE_ARMV8_CRC)
228 list(APPEND crc32_srcs
232 add_library(crc32 STATIC ${crc32_srcs})
234 set_target_properties(crc32 PROPERTIES
235 COMPILE_FLAGS "${CMAKE_C_FLAGS} ${ARMV8_CRC_COMPILE_FLAGS}")
237 target_link_libraries(crc32
240 add_library(common_utf8 STATIC utf8.c)
243 set(parse_secret_srcs
245 add_library(parse_secret_objs OBJECT ${parse_secret_srcs})