Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / src / test / librbd / CMakeLists.txt
1 set(librbd_test
2   test_fixture.cc
3   test_support.cc
4   test_librbd.cc
5   test_ImageWatcher.cc
6   test_internal.cc
7   test_mirroring.cc
8   test_BlockGuard.cc
9   test_MirroringWatcher.cc
10   test_ObjectMap.cc
11   test_Operations.cc
12   journal/test_Entries.cc
13   journal/test_Replay.cc)
14 add_library(rbd_test STATIC ${librbd_test})
15 set_target_properties(rbd_test PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS})
16
17 set(librbd_test_mock_srcs
18   mock/MockImageCtx.cc
19   mock/MockJournal.cc)
20 add_library(rbd_test_mock STATIC ${librbd_test_mock_srcs})
21 set_target_properties(rbd_test_mock PROPERTIES COMPILE_FLAGS
22   ${UNITTEST_CXX_FLAGS})
23
24 # unittest_librbd
25 # doesn't use add_ceph_test because it is called by run-rbd-unit-tests.sh
26 set(unittest_librbd_srcs
27   test_main.cc
28   test_mock_fixture.cc
29   test_mock_ExclusiveLock.cc
30   test_mock_Journal.cc
31   test_mock_ManagedLock.cc
32   test_mock_ObjectMap.cc
33   exclusive_lock/test_mock_PreAcquireRequest.cc
34   exclusive_lock/test_mock_PostAcquireRequest.cc
35   exclusive_lock/test_mock_PreReleaseRequest.cc
36   image/test_mock_RefreshRequest.cc
37   image/test_mock_RemoveRequest.cc
38   io/test_mock_ImageRequest.cc
39   io/test_mock_ImageRequestWQ.cc
40   journal/test_mock_OpenRequest.cc
41   journal/test_mock_PromoteRequest.cc
42   journal/test_mock_Replay.cc
43   managed_lock/test_mock_AcquireRequest.cc
44   managed_lock/test_mock_BreakRequest.cc
45   managed_lock/test_mock_GetLockerRequest.cc
46   managed_lock/test_mock_ReacquireRequest.cc
47   managed_lock/test_mock_ReleaseRequest.cc
48   mirror/test_mock_DisableRequest.cc
49   object_map/test_mock_InvalidateRequest.cc
50   object_map/test_mock_LockRequest.cc
51   object_map/test_mock_RefreshRequest.cc
52   object_map/test_mock_ResizeRequest.cc
53   object_map/test_mock_SnapshotCreateRequest.cc
54   object_map/test_mock_SnapshotRemoveRequest.cc
55   object_map/test_mock_SnapshotRollbackRequest.cc
56   object_map/test_mock_UnlockRequest.cc
57   object_map/test_mock_UpdateRequest.cc
58   operation/test_mock_DisableFeaturesRequest.cc
59   operation/test_mock_EnableFeaturesRequest.cc
60   operation/test_mock_Request.cc
61   operation/test_mock_ResizeRequest.cc
62   operation/test_mock_SnapshotCreateRequest.cc
63   operation/test_mock_SnapshotProtectRequest.cc
64   operation/test_mock_SnapshotRemoveRequest.cc
65   operation/test_mock_SnapshotRollbackRequest.cc
66   operation/test_mock_SnapshotUnprotectRequest.cc
67   operation/test_mock_TrimRequest.cc
68   watcher/test_mock_RewatchRequest.cc
69   )
70 add_executable(unittest_librbd
71   ${unittest_librbd_srcs}
72   $<TARGET_OBJECTS:common_texttable_obj>)
73 target_compile_definitions(unittest_librbd PUBLIC "-DTEST_LIBRBD_INTERNALS")
74 set_target_properties(unittest_librbd PROPERTIES COMPILE_FLAGS
75   ${UNITTEST_CXX_FLAGS})
76 target_link_libraries(unittest_librbd
77   cls_rbd
78   cls_rbd_client
79   cls_lock
80   cls_lock_client
81   journal
82   journal_test_mock
83   cls_journal
84   cls_journal_client
85   rados_test_stub
86   librados
87   rbd_test
88   rbd_test_mock
89   rbd_api
90   rbd_internal
91   rbd_types
92   osdc
93   global
94   ${UNITTEST_LIBS}
95   radostest)
96
97 add_executable(ceph_test_librbd
98   test_main.cc
99   $<TARGET_OBJECTS:common_texttable_obj>)
100 target_link_libraries(ceph_test_librbd
101   rbd_test
102   rbd_api
103   rbd_internal
104   rbd_types
105   journal
106   cls_journal_client
107   cls_rbd_client
108   rados_a
109   ${UNITTEST_LIBS}
110   radostest)
111 target_compile_definitions(ceph_test_librbd PUBLIC "-DTEST_LIBRBD_INTERNALS")
112 set_target_properties(ceph_test_librbd PROPERTIES COMPILE_FLAGS
113   ${UNITTEST_CXX_FLAGS})
114
115 add_executable(ceph_test_librbd_api
116   test_support.cc
117   test_librbd.cc
118   test_main.cc
119   $<TARGET_OBJECTS:libradostest_obj>
120   $<TARGET_OBJECTS:common_texttable_obj>)
121 target_link_libraries(ceph_test_librbd_api
122   librbd
123   librados
124   ${UNITTEST_LIBS})
125 set_target_properties(ceph_test_librbd_api PROPERTIES COMPILE_FLAGS
126   ${UNITTEST_CXX_FLAGS})
127
128 if(LINUX)
129   add_executable(ceph_test_librbd_fsx
130     fsx.cc
131     $<TARGET_OBJECTS:common_texttable_obj>
132     )
133   target_link_libraries(ceph_test_librbd_fsx
134     librbd
135     librados
136     journal
137     krbd
138     global
139     m
140     ${CMAKE_DL_LIBS}
141     ${CRYPTO_LIBS}
142     ${EXTRALIBS}
143     )
144   install(TARGETS
145     ceph_test_librbd_fsx
146     DESTINATION ${CMAKE_INSTALL_BINDIR})
147 endif(LINUX)
148
149 install(TARGETS
150   ceph_test_librbd
151   ceph_test_librbd_api
152   DESTINATION ${CMAKE_INSTALL_BINDIR})