The libcls_*.so libraries are runtime dependencies of the OSD (and RGW).
Building the vstart target doesn't build these libraries, rendering some
functionalities unusable. This goes unnoticed when building the entire
source tree.
Signed-off-by: Mohamad Gebai <mgebai@suse.com>
if(WITH_OSD_INSTRUMENT_FUNCTIONS)
add_dependencies(osd cyg_profile_tp)
endif()
+
+# libcls_* are runtime dependencies
+add_dependencies(osd cls_journal cls_hello cls_lock cls_log cls_numops
+ cls_refcount cls_timeindex cls_user cls_version cls_cas)
+if(WITH_CEPHFS)
+ add_dependencies(osd cls_cephfs)
+endif()
+if(WITH_RBD)
+ add_dependencies(osd cls_rbd)
+endif()
+if(WITH_RADOSGW)
+ add_dependencies(osd cls_otp cls_rgw)
+endif()
global ${FCGI_LIBRARY} ${LIB_RESOLV}
${CURL_LIBRARIES} ${EXPAT_LIBRARIES} ${BLKID_LIBRARIES}
${ALLOC_LIBS})
-# radosgw depends on cls libraries at runtime, but not as link dependencies
-add_dependencies(radosgw cls_rgw cls_lock cls_refcount
- cls_log cls_timeindex
- cls_version cls_user cls_otp)
install(TARGETS radosgw DESTINATION bin)
set(radosgw_admin_srcs