]> git.proxmox.com Git - ceph.git/blame - ceph/src/osd/CMakeLists.txt
update sources to v12.1.0
[ceph.git] / ceph / src / osd / CMakeLists.txt
CommitLineData
7c673cae
FG
1set(osdc_osd_srcs
2 ${CMAKE_SOURCE_DIR}/src/osdc/Objecter.cc
3 ${CMAKE_SOURCE_DIR}/src/osdc/Striper.cc)
4
31f18b77
FG
5if(WITH_OSD_INSTRUMENT_FUNCTIONS AND CMAKE_CXX_COMPILER_ID STREQUAL GNU)
6 set(GCC_C_FLAGS "-finstrument-functions")
7 set(GCC_C_FLAGS "${GCC_C_FLAGS} -finstrument-functions-exclude-function-list=_mm_loadu_si128,_mm_cmpeq_epi32,_mm_movemask_epi8")
8 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_C_FLAGS}")
9 set(osd_cyg_functions_src ${CMAKE_SOURCE_DIR}/src/tracing/cyg_profile_functions.c)
10endif()
11
7c673cae
FG
12set(osd_srcs
13 OSD.cc
14 Watch.cc
15 ClassHandler.cc
16 PG.cc
17 PGLog.cc
18 PrimaryLogPG.cc
19 ReplicatedBackend.cc
20 ECBackend.cc
21 ECTransaction.cc
22 PGBackend.cc
23 OSDCap.cc
24 Watch.cc
25 ClassHandler.cc
26 Session.cc
27 SnapMapper.cc
28 ScrubStore.cc
29 osd_types.cc
30 ECUtil.cc
31 ExtentCache.cc
32 ${CMAKE_SOURCE_DIR}/src/common/TrackedOp.cc
31f18b77 33 ${osd_cyg_functions_src}
7c673cae
FG
34 ${osdc_osd_srcs})
35if(HAS_VTA)
36 set_source_files_properties(osdcap.cc
37 PROPERTIES COMPILE_FLAGS -fno-var-tracking-assignments)
38endif()
39add_library(osd STATIC ${osd_srcs}
7c673cae
FG
40 $<TARGET_OBJECTS:cls_references_objs>
41 $<TARGET_OBJECTS:global_common_objs>
31f18b77 42 $<TARGET_OBJECTS:heap_profiler_objs>)
7c673cae
FG
43target_link_libraries(osd ${LEVELDB_LIBRARIES} ${CMAKE_DL_LIBS} ${ALLOC_LIBS})
44if(WITH_LTTNG)
45 add_dependencies(osd osd-tp pg-tp)
46endif()
47if(WITH_LTTNG AND WITH_EVENTTRACE)
48 add_dependencies(osd eventtrace_tp)
49endif()
31f18b77
FG
50if(WITH_OSD_INSTRUMENT_FUNCTIONS)
51 add_dependencies(osd cyg_profile_tp)
52endif()