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