]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: add "WITH_ZBD" option 36955/head
authorKefu Chai <kchai@redhat.com>
Sat, 5 Sep 2020 05:00:17 +0000 (13:00 +0800)
committerAbutalib Aghayev <agayev@cs.cmu.edu>
Sun, 6 Sep 2020 16:35:05 +0000 (12:35 -0400)
for enabling Zoned Block Device support using libzbd

Signed-off-by: Kefu Chai <kchai@redhat.com>
CMakeLists.txt
src/blk/CMakeLists.txt
src/os/CMakeLists.txt

index 05cba03369421ed293586228275550c486c1ddb7..5df53eac17493a6ce95a14a1724b4e0c6336d021 100644 (file)
@@ -183,8 +183,6 @@ if(WITH_BLUESTORE)
   if(LINUX)
     find_package(aio)
     set(HAVE_LIBAIO ${AIO_FOUND})
-    find_package(zbd)
-    set(HAVE_LIBZBD ${ZBD_FOUND})
   elseif(FREEBSD)
     # POSIX AIO is integrated into FreeBSD kernel, and exposed by libc.
     set(HAVE_POSIXAIO ON)
@@ -192,6 +190,10 @@ if(WITH_BLUESTORE)
 endif()
 
 include(CMakeDependentOption)
+
+CMAKE_DEPENDENT_OPTION(WITH_ZBD "Enable libzbd bluestore backend" OFF
+  "WITH_BLUESTORE" OFF)
+
 CMAKE_DEPENDENT_OPTION(WITH_LIBURING "Enable io_uring bluestore backend" OFF
   "WITH_BLUESTORE;HAVE_LIBAIO" OFF)
 set(HAVE_LIBURING ${WITH_LIBURING})
index 586a9b2628b84ce2e70f6fabd39328e640af7b18..2f0cd695bd079e3b5061c610d98fe390530d38d3 100644 (file)
@@ -20,7 +20,9 @@ if(WITH_SPDK)
     spdk/NVMEDevice.cc)
 endif()
 
-if(HAVE_LIBZBD)
+if(WITH_LIBZBD)
+  find_package(zbd REQUIRED)
+  set(HAVE_LIBZBD ${ZBD_FOUND})
   list(APPEND libblk_srcs
     zoned/HMSMRDevice.cc)
 endif()
@@ -36,7 +38,7 @@ if(WITH_SPDK)
   target_link_libraries(blk PRIVATE ${SPDK_LIBRARIES})
 endif()
 
-if(HAVE_LIBZBD)
+if(WITH_LIBZBD)
   target_link_libraries(blk PRIVATE ${ZBD_LIBRARIES})
 endif()
 
index 375811a68043878c9f573bea7d8684c5b854f3c0..99df5c0c00fc78361c46400e031d89bfee2dcdf5 100644 (file)
@@ -37,7 +37,7 @@ if(WITH_BLUESTORE)
   )
 endif(WITH_BLUESTORE)
 
-if(HAVE_LIBZBD)
+if(WITH_LIBZBD)
   list(APPEND libos_srcs
     bluestore/zoned_types.cc
     bluestore/ZonedFreelistManager.cc