]> git.proxmox.com Git - ceph.git/blame - ceph/src/crimson/os/seastore/CMakeLists.txt
update ceph source to reef 18.2.1
[ceph.git] / ceph / src / crimson / os / seastore / CMakeLists.txt
CommitLineData
20effc67 1set(crimson_seastore_srcs
f67539c2
TL
2 cached_extent.cc
3 seastore_types.cc
20effc67 4 segment_manager.cc
f67539c2
TL
5 segment_manager/ephemeral.cc
6 segment_manager/block.cc
7 transaction_manager.cc
20effc67 8 transaction.cc
f67539c2 9 cache.cc
1e59de90 10 root_block.cc
f67539c2 11 lba_manager.cc
1e59de90
TL
12 async_cleaner.cc
13 backref_manager.cc
14 backref/backref_tree_node.cc
15 backref/btree_backref_manager.cc
f67539c2 16 lba_manager/btree/btree_lba_manager.cc
20effc67
TL
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
1e59de90
TL
21 btree/btree_range_pin.cc
22 btree/fixed_kv_node.cc
f67539c2 23 onode.cc
f67539c2
TL
24 onode_manager/staged-fltree/node.cc
25 onode_manager/staged-fltree/node_extent_manager.cc
26 onode_manager/staged-fltree/node_extent_manager/seastore.cc
f67539c2
TL
27 onode_manager/staged-fltree/node_impl.cc
28 onode_manager/staged-fltree/stages/item_iterator_stage.cc
29 onode_manager/staged-fltree/stages/key_layout.cc
30 onode_manager/staged-fltree/stages/node_stage_layout.cc
31 onode_manager/staged-fltree/stages/node_stage.cc
32 onode_manager/staged-fltree/stages/sub_items_stage.cc
33 onode_manager/staged-fltree/super.cc
20effc67
TL
34 onode_manager/staged-fltree/value.cc
35 onode_manager/staged-fltree/fltree_onode_manager.cc
36 collection_manager.cc
37 collection_manager/flat_collection_manager.cc
38 collection_manager/collection_flat_node.cc
39 extent_placement_manager.cc
40 object_data_handler.cc
f67539c2 41 seastore.cc
1e59de90
TL
42 random_block_manager.cc
43 random_block_manager/block_rb_manager.cc
44 random_block_manager/rbm_device.cc
45 random_block_manager/nvme_block_device.cc
46 random_block_manager/avlallocator.cc
47 journal/segmented_journal.cc
48 journal/segment_allocator.cc
49 journal/record_submitter.cc
50 journal/circular_journal_space.cc
51 journal.cc
52 device.cc
53 segment_manager_group.cc
aee94f69 54 record_scanner.cc
1e59de90 55 journal/circular_bounded_journal.cc
f67539c2 56 ../../../test/crimson/seastore/test_block.cc
20effc67 57 ${PROJECT_SOURCE_DIR}/src/os/Transaction.cc
f67539c2 58 )
20effc67
TL
59
60CMAKE_DEPENDENT_OPTION(WITH_ZNS "enable Linux ZNS support" OFF
61 "CMAKE_SYSTEM_NAME STREQUAL Linux" OFF)
62if(WITH_ZNS)
63 find_package(LinuxZNS REQUIRED)
64 list(APPEND crimson_seastore_srcs
aee94f69 65 segment_manager/zbd.cc)
20effc67
TL
66endif()
67
68add_library(crimson-seastore STATIC
69 ${crimson_seastore_srcs})
70
f67539c2
TL
71target_link_libraries(crimson-seastore
72 crimson)
20effc67
TL
73if(WITH_ZNS)
74 target_link_libraries(crimson-seastore
75 Linux::ZNS)
76endif()
77
78set_target_properties(crimson-seastore PROPERTIES
79 JOB_POOL_COMPILE heavy_compile_job_pool)