]> git.proxmox.com Git - ceph.git/blame - ceph/src/osd/CMakeLists.txt
buildsys: switch source download to quincy
[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 5if(WITH_OSD_INSTRUMENT_FUNCTIONS AND CMAKE_CXX_COMPILER_ID STREQUAL GNU)
f67539c2
TL
6 add_compile_options(
7 -finstrument-functions
8 -finstrument-functions-exclude-function-list=_mm_loadu_si128,_mm_cmpeq_epi32,_mm_movemask_epi8)
31f18b77
FG
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
f67539c2
TL
14 pg_scrubber.cc
15 scrub_machine.cc
16 PrimaryLogScrub.cc
7c673cae
FG
17 Watch.cc
18 ClassHandler.cc
19 PG.cc
20 PGLog.cc
21 PrimaryLogPG.cc
22 ReplicatedBackend.cc
23 ECBackend.cc
24 ECTransaction.cc
25 PGBackend.cc
26 OSDCap.cc
27 Watch.cc
7c673cae
FG
28 Session.cc
29 SnapMapper.cc
30 ScrubStore.cc
31 osd_types.cc
32 ECUtil.cc
33 ExtentCache.cc
9f95a23c
TL
34 scheduler/OpScheduler.cc
35 scheduler/OpSchedulerItem.cc
36 scheduler/mClockScheduler.cc
37 PeeringState.cc
38 PGStateUtils.cc
f67539c2 39 recovery_types.cc
9f95a23c
TL
40 MissingLoc.cc
41 osd_perf_counters.cc
7c673cae 42 ${CMAKE_SOURCE_DIR}/src/common/TrackedOp.cc
11fdf7f2 43 ${CMAKE_SOURCE_DIR}/src/mgr/OSDPerfMetricTypes.cc
31f18b77 44 ${osd_cyg_functions_src}
7c673cae
FG
45 ${osdc_osd_srcs})
46if(HAS_VTA)
47 set_source_files_properties(osdcap.cc
48 PROPERTIES COMPILE_FLAGS -fno-var-tracking-assignments)
49endif()
9f95a23c 50add_library(osd STATIC ${osd_srcs})
11fdf7f2 51target_link_libraries(osd
f67539c2 52 PUBLIC dmclock::dmclock Boost::MPL
522d829b 53 PRIVATE os heap_profiler cpu_profiler fmt::fmt ${CMAKE_DL_LIBS})
7c673cae
FG
54if(WITH_LTTNG)
55 add_dependencies(osd osd-tp pg-tp)
56endif()
9f95a23c 57if(WITH_EVENTTRACE)
7c673cae
FG
58 add_dependencies(osd eventtrace_tp)
59endif()
31f18b77
FG
60if(WITH_OSD_INSTRUMENT_FUNCTIONS)
61 add_dependencies(osd cyg_profile_tp)
62endif()
11fdf7f2
TL
63
64# libcls_* are runtime dependencies
65add_dependencies(osd cls_journal cls_hello cls_lock cls_log cls_numops
f67539c2 66 cls_refcount cls_timeindex cls_user cls_version cls_cas cls_cmpomap)
11fdf7f2
TL
67if(WITH_CEPHFS)
68 add_dependencies(osd cls_cephfs)
69endif()
70if(WITH_RBD)
71 add_dependencies(osd cls_rbd)
72endif()
73if(WITH_RADOSGW)
f67539c2 74 add_dependencies(osd cls_otp cls_rgw cls_queue cls_rgw_gc cls_2pc_queue cls_fifo)
11fdf7f2 75endif()