]> git.proxmox.com Git - ceph.git/blame - ceph/src/osd/CMakeLists.txt
update sources to v12.1.1
[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
224ce89b
WB
32 mClockOpClassQueue.cc
33 mClockClientQueue.cc
34 PGQueueable.cc
7c673cae 35 ${CMAKE_SOURCE_DIR}/src/common/TrackedOp.cc
31f18b77 36 ${osd_cyg_functions_src}
7c673cae
FG
37 ${osdc_osd_srcs})
38if(HAS_VTA)
39 set_source_files_properties(osdcap.cc
40 PROPERTIES COMPILE_FLAGS -fno-var-tracking-assignments)
41endif()
42add_library(osd STATIC ${osd_srcs}
7c673cae
FG
43 $<TARGET_OBJECTS:cls_references_objs>
44 $<TARGET_OBJECTS:global_common_objs>
31f18b77 45 $<TARGET_OBJECTS:heap_profiler_objs>)
224ce89b 46target_link_libraries(osd ${LEVELDB_LIBRARIES} dmclock ${CMAKE_DL_LIBS} ${ALLOC_LIBS})
7c673cae
FG
47if(WITH_LTTNG)
48 add_dependencies(osd osd-tp pg-tp)
49endif()
50if(WITH_LTTNG AND WITH_EVENTTRACE)
51 add_dependencies(osd eventtrace_tp)
52endif()
31f18b77
FG
53if(WITH_OSD_INSTRUMENT_FUNCTIONS)
54 add_dependencies(osd cyg_profile_tp)
55endif()