]> git.proxmox.com Git - ceph.git/blob - ceph/src/crimson/os/seastore/CMakeLists.txt
import quincy beta 17.1.0
[ceph.git] / ceph / src / crimson / os / seastore / CMakeLists.txt
1 set(crimson_seastore_srcs
2 cached_extent.cc
3 seastore_types.cc
4 segment_manager.cc
5 segment_manager/ephemeral.cc
6 segment_manager/block.cc
7 transaction_manager.cc
8 transaction.cc
9 journal.cc
10 cache.cc
11 extent_reader.cc
12 lba_manager.cc
13 segment_cleaner.cc
14 lba_manager/btree/btree_lba_manager.cc
15 lba_manager/btree/btree_range_pin.cc
16 lba_manager/btree/lba_btree.cc
17 lba_manager/btree/lba_btree_node.cc
18 omap_manager.cc
19 omap_manager/btree/btree_omap_manager.cc
20 omap_manager/btree/omap_btree_node_impl.cc
21 onode.cc
22 onode_manager/staged-fltree/node.cc
23 onode_manager/staged-fltree/node_extent_manager.cc
24 onode_manager/staged-fltree/node_extent_manager/seastore.cc
25 onode_manager/staged-fltree/node_impl.cc
26 onode_manager/staged-fltree/stages/item_iterator_stage.cc
27 onode_manager/staged-fltree/stages/key_layout.cc
28 onode_manager/staged-fltree/stages/node_stage_layout.cc
29 onode_manager/staged-fltree/stages/node_stage.cc
30 onode_manager/staged-fltree/stages/sub_items_stage.cc
31 onode_manager/staged-fltree/super.cc
32 onode_manager/staged-fltree/value.cc
33 onode_manager/staged-fltree/fltree_onode_manager.cc
34 collection_manager.cc
35 collection_manager/flat_collection_manager.cc
36 collection_manager/collection_flat_node.cc
37 extent_placement_manager.cc
38 object_data_handler.cc
39 seastore.cc
40 random_block_manager/nvme_manager.cc
41 random_block_manager/nvmedevice.cc
42 ../../../test/crimson/seastore/test_block.cc
43 ${PROJECT_SOURCE_DIR}/src/os/Transaction.cc
44 )
45
46 CMAKE_DEPENDENT_OPTION(WITH_ZNS "enable Linux ZNS support" OFF
47 "CMAKE_SYSTEM_NAME STREQUAL Linux" OFF)
48 if(WITH_ZNS)
49 find_package(LinuxZNS REQUIRED)
50 list(APPEND crimson_seastore_srcs
51 segment_manager/zns.cc)
52 endif()
53
54 add_library(crimson-seastore STATIC
55 ${crimson_seastore_srcs})
56
57 target_link_libraries(crimson-seastore
58 crimson)
59 if(WITH_ZNS)
60 target_link_libraries(crimson-seastore
61 Linux::ZNS)
62 endif()
63
64 set_target_properties(crimson-seastore PROPERTIES
65 JOB_POOL_COMPILE heavy_compile_job_pool)