]> git.proxmox.com Git - ceph.git/blame - ceph/src/blk/CMakeLists.txt
import ceph 16.2.6
[ceph.git] / ceph / src / blk / CMakeLists.txt
CommitLineData
f67539c2
TL
1if(WITH_BLUESTORE OR WITH_RBD_SSD_CACHE)
2list(APPEND libblk_srcs
3 BlockDevice.cc)
4endif()
5
6if(HAVE_LIBAIO OR HAVE_POSIXAIO)
7 list(APPEND libblk_srcs
8 kernel/KernelDevice.cc
9 kernel/io_uring.cc
10 aio/aio.cc)
11endif()
12
13if(WITH_BLUESTORE_PMEM)
14 list(APPEND libblk_srcs
15 pmem/PMEMDevice.cc)
16endif()
17
18if(WITH_SPDK)
19 list(APPEND libblk_srcs
20 spdk/NVMEDevice.cc)
21endif()
22
23if(WITH_ZBD)
24 list(APPEND libblk_srcs
25 zoned/HMSMRDevice.cc)
26endif()
27
522d829b 28add_library(blk STATIC ${libblk_srcs})
f67539c2
TL
29target_include_directories(blk PRIVATE "./")
30
31if(HAVE_LIBAIO)
32 target_link_libraries(blk PUBLIC ${AIO_LIBRARIES})
33endif(HAVE_LIBAIO)
34
35if(WITH_SPDK)
36 target_link_libraries(blk PRIVATE ${SPDK_LIBRARIES})
37endif()
38
39if(WITH_ZBD)
40 target_link_libraries(blk PRIVATE ${ZBD_LIBRARIES})
41endif()
42
43if(WITH_BLUESTORE_PMEM)
44 target_link_libraries(blk
45 PRIVATE pmem::pmem)
46endif()
47
48if(WITH_EVENTTRACE)
49 add_dependencies(blk eventtrace_tp)
50endif()
51
52if(WITH_LIBURING)
53 if(WITH_SYSTEM_LIBURING)
54 find_package(uring REQUIRED)
55 else()
56 include(Builduring)
57 build_uring()
58 endif()
59 target_link_libraries(blk PRIVATE uring::uring)
60endif()