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
106 list(APPEND common_srcs
110 if(WITH_CEPH_DEBUG_MUTEX)
111 list(APPEND common_srcs
114 condition_variable_debug.cc
115 shared_mutex_debug.cc)
120 set(CMAKE_MC_COMPILER x86_64-w64-mingw32-windmc)
121 set(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
125 OUTPUT ${CMAKE_BINARY_DIR}/src/common/event_logging.h
126 COMMAND ${CMAKE_MC_COMPILER} -b -e h -h ${CMAKE_BINARY_DIR}/src/common/
127 -r ${CMAKE_BINARY_DIR}/src/common ${CMAKE_SOURCE_DIR}/src/common/win32/event_logging.mc
128 COMMAND ${CMAKE_RC_COMPILER} ${CMAKE_BINARY_DIR}/src/common/event_logging.rc
129 -o ${CMAKE_BINARY_DIR}/src/common/event_logging.o
130 COMMAND ${CMAKE_CXX_COMPILER} -o ${CMAKE_BINARY_DIR}/bin/event_logging.dll -shared
131 ${CMAKE_BINARY_DIR}/src/common/event_logging.o
132 DEPENDS ${CMAKE_SOURCE_DIR}/src/common/win32/event_logging.mc)
134 set_source_files_properties(${CMAKE_SOURCE_DIR}/src/common/win32/syslog.cc
135 APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/src/common/event_logging.h)
137 include_directories(SYSTEM "${CMAKE_BINARY_DIR}/src/common/")
139 list(APPEND common_srcs
148 list(APPEND common_srcs
155 set_source_files_properties(${CMAKE_SOURCE_DIR}/src/common/version.cc
156 APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/src/include/ceph_ver.h)
159 set_source_files_properties(
162 PROPERTIES COMPILE_FLAGS -fno-var-tracking-assignments)
166 list(APPEND common_srcs freebsd_errno.cc)
168 list(APPEND common_srcs darwin_errno.cc)
170 list(APPEND common_srcs solaris_errno.cc)
172 list(APPEND common_srcs aix_errno.cc)
174 list(APPEND common_srcs win32/errno.cc)
178 list(APPEND common_srcs EventTrace.cc)
181 add_library(common-common-objs OBJECT
183 # Let's not rely on the default system headers and point Cmake to the
184 # retrieved OpenSSL location. This is especially important when cross
185 # compiling (e.g. targeting Windows).
186 target_include_directories(common-common-objs PRIVATE ${OPENSSL_INCLUDE_DIR})
188 target_compile_definitions(common-common-objs PRIVATE
189 "CMAKE_INSTALL_LIBDIR=\"${CMAKE_INSTALL_LIBDIR}\""
190 "CEPH_INSTALL_FULL_PKGLIBDIR=\"${CEPH_INSTALL_FULL_PKGLIBDIR}\""
191 "CEPH_INSTALL_DATADIR=\"${CEPH_INSTALL_DATADIR}\""
192 $<TARGET_PROPERTY:fmt::fmt,INTERFACE_COMPILE_DEFINITIONS>)
193 add_dependencies(common-common-objs legacy-option-headers)
195 set(common_mountcephfs_srcs
200 add_library(common_mountcephfs_objs OBJECT
201 ${common_mountcephfs_srcs})
206 crc32c_intel_baseline.c
209 list(APPEND crc32_srcs
212 set(CMAKE_ASM_FLAGS "-i ${PROJECT_SOURCE_DIR}/src/isa-l/include/ ${CMAKE_ASM_FLAGS}")
213 list(APPEND crc32_srcs
214 ${PROJECT_SOURCE_DIR}/src/isa-l/crc/crc32_iscsi_00.asm
215 crc32c_intel_fast_zero_asm.s)
218 list(APPEND crc32_srcs
221 list(APPEND crc32_srcs
223 crc32c_ppc_fast_zero_asm.S)
225 elseif(HAVE_ARMV8_CRC)
226 list(APPEND crc32_srcs
230 add_library(crc32 STATIC ${crc32_srcs})
232 set_target_properties(crc32 PROPERTIES
233 COMPILE_FLAGS "${CMAKE_C_FLAGS} ${ARMV8_CRC_COMPILE_FLAGS}")
235 target_link_libraries(crc32
238 add_library(common_utf8 STATIC utf8.c)
241 set(parse_secret_srcs
243 add_library(parse_secret_objs OBJECT ${parse_secret_srcs})