]> git.proxmox.com Git - ceph.git/blame - ceph/src/test/librbd/CMakeLists.txt
import ceph 14.2.5
[ceph.git] / ceph / src / test / librbd / CMakeLists.txt
CommitLineData
11fdf7f2
TL
1set(librbd_test_support_srcs
2 test_support.cc
3 )
4add_library(rbd_test_support STATIC ${librbd_test_support_srcs})
5target_link_libraries(rbd_test_support PRIVATE
6 GTest::GTest)
7
7c673cae
FG
8set(librbd_test
9 test_fixture.cc
7c673cae
FG
10 test_librbd.cc
11 test_ImageWatcher.cc
12 test_internal.cc
13 test_mirroring.cc
224ce89b 14 test_BlockGuard.cc
11fdf7f2
TL
15 test_DeepCopy.cc
16 test_Groups.cc
17 test_Migration.cc
7c673cae
FG
18 test_MirroringWatcher.cc
19 test_ObjectMap.cc
20 test_Operations.cc
11fdf7f2 21 test_Trash.cc
7c673cae
FG
22 journal/test_Entries.cc
23 journal/test_Replay.cc)
24add_library(rbd_test STATIC ${librbd_test})
11fdf7f2
TL
25target_link_libraries(rbd_test PRIVATE
26 rbd_test_support
27 radostest
28 radostest-cxx
29 librados
30 Boost::thread
31 GMock::GMock
32 GTest::GTest)
7c673cae
FG
33
34set(librbd_test_mock_srcs
35 mock/MockImageCtx.cc
36 mock/MockJournal.cc)
37add_library(rbd_test_mock STATIC ${librbd_test_mock_srcs})
11fdf7f2
TL
38target_link_libraries(rbd_test_mock PUBLIC
39 GMock::GMock)
7c673cae
FG
40
41# unittest_librbd
42# doesn't use add_ceph_test because it is called by run-rbd-unit-tests.sh
43set(unittest_librbd_srcs
7c673cae
FG
44 test_main.cc
45 test_mock_fixture.cc
11fdf7f2 46 test_mock_DeepCopyRequest.cc
7c673cae
FG
47 test_mock_ExclusiveLock.cc
48 test_mock_Journal.cc
49 test_mock_ManagedLock.cc
50 test_mock_ObjectMap.cc
11fdf7f2 51 test_mock_TrashWatcher.cc
91327a77 52 test_mock_Watcher.cc
11fdf7f2
TL
53 deep_copy/test_mock_ImageCopyRequest.cc
54 deep_copy/test_mock_MetadataCopyRequest.cc
55 deep_copy/test_mock_ObjectCopyRequest.cc
56 deep_copy/test_mock_SetHeadRequest.cc
57 deep_copy/test_mock_SnapshotCopyRequest.cc
58 deep_copy/test_mock_SnapshotCreateRequest.cc
7c673cae
FG
59 exclusive_lock/test_mock_PreAcquireRequest.cc
60 exclusive_lock/test_mock_PostAcquireRequest.cc
61 exclusive_lock/test_mock_PreReleaseRequest.cc
11fdf7f2
TL
62 image/test_mock_AttachChildRequest.cc
63 image/test_mock_AttachParentRequest.cc
64 image/test_mock_CloneRequest.cc
65 image/test_mock_DetachChildRequest.cc
66 image/test_mock_DetachParentRequest.cc
67 image/test_mock_ListWatchersRequest.cc
68 image/test_mock_PreRemoveRequest.cc
7c673cae
FG
69 image/test_mock_RefreshRequest.cc
70 image/test_mock_RemoveRequest.cc
11fdf7f2 71 image/test_mock_ValidatePoolRequest.cc
81eedcae 72 io/test_mock_CopyupRequest.cc
7c673cae 73 io/test_mock_ImageRequest.cc
224ce89b 74 io/test_mock_ImageRequestWQ.cc
b32b8144 75 io/test_mock_ObjectRequest.cc
7c673cae
FG
76 journal/test_mock_OpenRequest.cc
77 journal/test_mock_PromoteRequest.cc
78 journal/test_mock_Replay.cc
11fdf7f2 79 journal/test_mock_ResetRequest.cc
7c673cae
FG
80 managed_lock/test_mock_AcquireRequest.cc
81 managed_lock/test_mock_BreakRequest.cc
82 managed_lock/test_mock_GetLockerRequest.cc
83 managed_lock/test_mock_ReacquireRequest.cc
84 managed_lock/test_mock_ReleaseRequest.cc
85 mirror/test_mock_DisableRequest.cc
86 object_map/test_mock_InvalidateRequest.cc
87 object_map/test_mock_LockRequest.cc
88 object_map/test_mock_RefreshRequest.cc
89 object_map/test_mock_ResizeRequest.cc
90 object_map/test_mock_SnapshotCreateRequest.cc
91 object_map/test_mock_SnapshotRemoveRequest.cc
92 object_map/test_mock_SnapshotRollbackRequest.cc
93 object_map/test_mock_UnlockRequest.cc
94 object_map/test_mock_UpdateRequest.cc
95 operation/test_mock_DisableFeaturesRequest.cc
96 operation/test_mock_EnableFeaturesRequest.cc
97 operation/test_mock_Request.cc
98 operation/test_mock_ResizeRequest.cc
99 operation/test_mock_SnapshotCreateRequest.cc
100 operation/test_mock_SnapshotProtectRequest.cc
101 operation/test_mock_SnapshotRemoveRequest.cc
102 operation/test_mock_SnapshotRollbackRequest.cc
103 operation/test_mock_SnapshotUnprotectRequest.cc
3efd9988 104 operation/test_mock_TrimRequest.cc
11fdf7f2 105 trash/test_mock_MoveRequest.cc
eafe8130 106 trash/test_mock_RemoveRequest.cc
7c673cae
FG
107 watcher/test_mock_RewatchRequest.cc
108 )
109add_executable(unittest_librbd
110 ${unittest_librbd_srcs}
111 $<TARGET_OBJECTS:common_texttable_obj>)
11fdf7f2 112target_compile_definitions(unittest_librbd PRIVATE "TEST_LIBRBD_INTERNALS")
7c673cae
FG
113target_link_libraries(unittest_librbd
114 cls_rbd
115 cls_rbd_client
116 cls_lock
117 cls_lock_client
118 journal
119 journal_test_mock
120 cls_journal
121 cls_journal_client
122 rados_test_stub
123 librados
124 rbd_test
125 rbd_test_mock
126 rbd_api
127 rbd_internal
128 rbd_types
129 osdc
11fdf7f2 130 ceph-common
7c673cae 131 global
11fdf7f2 132 ${UNITTEST_LIBS})
7c673cae
FG
133
134add_executable(ceph_test_librbd
135 test_main.cc
136 $<TARGET_OBJECTS:common_texttable_obj>)
137target_link_libraries(ceph_test_librbd
138 rbd_test
139 rbd_api
140 rbd_internal
141 rbd_types
142 journal
143 cls_journal_client
144 cls_rbd_client
11fdf7f2 145 librados
7c673cae
FG
146 ${UNITTEST_LIBS}
147 radostest)
11fdf7f2 148target_compile_definitions(ceph_test_librbd PRIVATE "TEST_LIBRBD_INTERNALS")
7c673cae 149
11fdf7f2
TL
150add_executable(ceph_test_librbd_fsx
151 fsx.cc
152 $<TARGET_OBJECTS:common_texttable_obj>
153 )
154target_link_libraries(ceph_test_librbd_fsx
155 librbd
156 librados
157 journal
158 global
159 m
160 ${CMAKE_DL_LIBS}
161 ${CRYPTO_LIBS}
162 ${EXTRALIBS}
163 )
164if(WITH_KRBD)
7c673cae 165 target_link_libraries(ceph_test_librbd_fsx
11fdf7f2
TL
166 krbd)
167endif()
168install(TARGETS
169 ceph_test_librbd_fsx
170 DESTINATION ${CMAKE_INSTALL_BINDIR})
7c673cae
FG
171
172install(TARGETS
173 ceph_test_librbd
7c673cae 174 DESTINATION ${CMAKE_INSTALL_BINDIR})