]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake/cephfs: fix options to enable client and dependencies
authorCasey Bodley <cbodley@redhat.com>
Wed, 5 Mar 2025 18:22:38 +0000 (13:22 -0500)
committerPatrick Donnelly <pdonnell@ibm.com>
Mon, 17 Mar 2025 19:43:23 +0000 (15:43 -0400)
invoking cmake with -DWITH_LIBCEPHFS=OFF fails to configure the client target:

CMake Error at src/client/CMakeLists.txt:13 (target_link_libraries):
  Target "client" links to:

    Boost::locale

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.

because the client target is not conditional on WITH_LIBCEPHFS in src/CMakeLists.txt:

add_subdirectory(client)

if(WITH_LIBCEPHFS)

because client is also needed for ceph-fuse, make the client and its
dependencies depend on WITH_LIBCEPHFS OR WITH_FUSE

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 70eb1d64ac1ea6e7202d42571f83c34d3758ad8f)

CMakeLists.txt
src/CMakeLists.txt

index e2f82d9cb311984c6f69f2866f7e6958cb6de9e9..de85d3f793d567ab8bf69c3d3bc812c8525cf165 100644 (file)
@@ -681,7 +681,7 @@ if(WITH_RADOSGW AND WITH_RADOSGW_LUA_PACKAGES)
   list(APPEND BOOST_COMPONENTS filesystem)
 endif()
 
-if(WITH_LIBCEPHFS)
+if(WITH_LIBCEPHFS OR WITH_FUSE)
   find_package(ICU REQUIRED COMPONENTS uc i18n)
   list(APPEND BOOST_COMPONENTS locale)
 endif()
index 403b8acb21945b85aa97448fcec50ac9670c9574..cbc5f55edf1b6d4df4b08cb6e6fa7911b58fb448 100644 (file)
@@ -812,7 +812,10 @@ install(PROGRAMS
   DESTINATION sbin)
 
 add_subdirectory(bash_completion)
-add_subdirectory(client)
+
+if(WITH_LIBCEPHFS OR WITH_FUSE)
+  add_subdirectory(client)
+endif()
 
 if(WITH_LIBCEPHFS)
   set(libcephfs_srcs libcephfs.cc)