]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: Added rbd_mirror targets
authorAli Maredia <amaredia@redhat.com>
Mon, 15 Feb 2016 03:30:15 +0000 (22:30 -0500)
committerAli Maredia <amaredia@redhat.com>
Fri, 15 Apr 2016 00:48:21 +0000 (20:48 -0400)
Added rbd_mirror libraries, unit tests, executables

Signed-off-by: Ali Maredia <amaredia@redhat.com>
src/CMakeLists.txt
src/test/CMakeLists.txt
src/test/rbd_mirror/CMakeLists.txt [new file with mode: 0644]

index 940cad0607a356d3ad2eddb5deeee33f9478156b..b227e8d8be20e3c1c6bc94bc1d63678a4df576a9 100644 (file)
@@ -997,6 +997,41 @@ add_library(krbd_objs OBJECT krbd.cc)
 if(${WITH_RBD})
   add_subdirectory(librbd)
 
+  set(rbd_mirror_internal
+    tools/rbd_mirror/ClusterWatcher.cc 
+    tools/rbd_mirror/ImageReplayer.cc
+    tools/rbd_mirror/ImageSync.cc
+    tools/rbd_mirror/Mirror.cc 
+    tools/rbd_mirror/PoolWatcher.cc 
+    tools/rbd_mirror/Replayer.cc 
+    tools/rbd_mirror/Threads.cc
+    tools/rbd_mirror/types.cc
+    tools/rbd_mirror/image_replayer/BootstrapRequest.cc
+    tools/rbd_mirror/image_replayer/CloseImageRequest.cc
+    tools/rbd_mirror/image_replayer/OpenLocalImageRequest.cc
+    tools/rbd_mirror/image_sync/ImageCopyRequest.cc
+    tools/rbd_mirror/image_sync/ObjectCopyRequest.cc
+    tools/rbd_mirror/image_sync/SnapshotCopyRequest.cc
+    tools/rbd_mirror/image_sync/SyncPointCreateRequest.cc
+    tools/rbd_mirror/image_sync/SyncPointPruneRequest.cc)
+  add_library(rbd_mirror_internal STATIC ${rbd_mirror_internal})
+  
+  add_executable(rbd-mirror
+    tools/rbd_mirror/main.cc
+    common/ContextCompletion.cc)
+  target_link_libraries(rbd-mirror
+    rbd_mirror_internal
+    rbd_internal
+    rbd_api
+    rbd_types
+    journal
+    librados
+    osdc
+    cls_rbd_client
+    cls_lock_client
+    cls_journal_client
+    global)
+
   set(rbd_srcs
     tools/rbd/rbd.cc
     tools/rbd/ArgumentTypes.cc
index 07f836ab618e73fc6af595b787a0396c2497b97c..3625acc267a163f03b4b082b4cfbf2d38c1d6795 100644 (file)
@@ -38,6 +38,7 @@ add_subdirectory(osd)
 add_subdirectory(osdc)
 add_subdirectory(pybind)
 add_subdirectory(rgw)
+add_subdirectory(rbd_mirror)
 add_subdirectory(system)
 
 # test_timers
diff --git a/src/test/rbd_mirror/CMakeLists.txt b/src/test/rbd_mirror/CMakeLists.txt
new file mode 100644 (file)
index 0000000..e1c1632
--- /dev/null
@@ -0,0 +1,67 @@
+set(rbd_mirror_test_srcs
+  test_ClusterWatcher.cc
+  test_PoolWatcher.cc
+  test_ImageReplayer.cc
+  test_ImageSync.cc
+  test_fixture.cc
+  )
+add_library(rbd_mirror STATIC ${rbd_mirror_test_srcs})
+set_target_properties(rbd_mirror PROPERTIES COMPILE_FLAGS
+  ${UNITTEST_CXX_FLAGS})
+
+add_executable(unittest_rbd_mirror EXCLUDE_FROM_ALL
+  test_main.cc
+  test_mock_fixture.cc
+  test_mock_ImageSync.cc
+  image_sync/test_mock_ImageCopyRequest.cc
+  image_sync/test_mock_ObjectCopyRequest.cc
+  image_sync/test_mock_SnapshotCopyRequest.cc
+  image_sync/test_mock_SyncPointCreateRequest.cc
+  image_sync/test_mock_SyncPointPruneRequest.cc
+  mock/MockJournaler.cc
+  ${CMAKE_SOURCE_DIR}/src/common/ContextCompletion.cc
+  )
+add_ceph_unittest(unittest_rbd_mirror ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_rbd_mirror)
+set_target_properties(unittest_rbd_mirror PROPERTIES COMPILE_FLAGS
+  ${UNITTEST_CXX_FLAGS})
+target_link_libraries(unittest_rbd_mirror
+  rbd_mirror
+  rados_test_stub
+  rbd_mirror_internal
+  rbd_internal
+  rbd_api
+  journal
+  cls_rbd_client
+  cls_lock_client
+  cls_journal_client
+  rbd_types
+  librados
+  osdc
+  global
+  radostest
+  )
+
+add_executable(ceph_test_rbd_mirror
+  test_main.cc
+  ${CMAKE_SOURCE_DIR}/src/common/ContextCompletion.cc
+  )
+set_target_properties(ceph_test_rbd_mirror PROPERTIES COMPILE_FLAGS
+  ${UNITTEST_CXX_FLAGS})
+target_link_libraries(ceph_test_rbd_mirror
+  rbd_mirror
+  rados_test_stub
+  rbd_mirror_internal
+  rbd_internal
+  rbd_api
+  journal
+  cls_rbd_client
+  cls_lock_client
+  cls_journal_client
+  rbd_types
+  librados
+  osdc
+  global
+  radostest
+  ${UNITTEST_LIBS}
+  )
+