]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
cmake: link ${rgw_libs} not rgw_a and rabbitmq
authorKefu Chai <kchai@redhat.com>
Wed, 27 Feb 2019 07:07:08 +0000 (15:07 +0800)
committerKefu Chai <kchai@redhat.com>
Wed, 27 Feb 2019 07:07:11 +0000 (15:07 +0800)
so we don't need to check the condition everywhere

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

index c577ea433c4af5165a4341646eb57190554c1297..9eb91caa42a1e2088cf5b2dd2ed82feadf741780 100644 (file)
@@ -202,6 +202,12 @@ if(WITH_BOOST_CONTEXT)
   target_link_libraries(rgw_a PRIVATE Boost::coroutine Boost::context)
 endif()
 
+set(rgw_libs rgw_a)
+if(WITH_RADOSGW_AMQP_ENDPOINT)
+  # used by rgw_amqp.cc
+  list(APPEND rgw_libs RabbitMQ::RabbitMQ)
+endif()
+
 set(radosgw_srcs
   rgw_loadgen_process.cc
   rgw_civetweb.cc
@@ -220,15 +226,11 @@ endif()
 
 add_library(radosgw_a STATIC ${radosgw_srcs}
   $<TARGET_OBJECTS:civetweb_common_objs>)
-target_link_libraries(radosgw_a PRIVATE rgw_a)
+target_link_libraries(radosgw_a PRIVATE ${rgw_libs})
 if(WITH_RADOSGW_BEAST_FRONTEND AND WITH_RADOSGW_BEAST_OPENSSL)
   # used by rgw_asio_frontend.cc
   target_link_libraries(radosgw_a PRIVATE OpenSSL::SSL)
 endif()
-if(WITH_RADOSGW_AMQP_ENDPOINT)
-  # used by rgw_amqp.cc
-  target_link_libraries(radosgw_a PRIVATE RabbitMQ::RabbitMQ)
-endif()
 
 add_executable(radosgw rgw_main.cc)
 target_link_libraries(radosgw radosgw_a librados
@@ -245,29 +247,23 @@ set(radosgw_admin_srcs
   rgw_admin.cc
   rgw_orphan.cc)
 add_executable(radosgw-admin ${radosgw_admin_srcs})
-target_link_libraries(radosgw-admin rgw_a librados
+target_link_libraries(radosgw-admin ${rgw_libs} librados
   cls_rgw_client cls_otp_client cls_lock_client cls_refcount_client
   cls_log_client cls_timeindex_client
   cls_version_client cls_user_client
   global ${FCGI_LIBRARY} ${LIB_RESOLV}
   ${CURL_LIBRARIES} ${EXPAT_LIBRARIES} ${BLKID_LIBRARIES})
-if(WITH_RADOSGW_AMQP_ENDPOINT)
-  target_link_libraries(radosgw-admin RabbitMQ::RabbitMQ)
-endif()
 install(TARGETS radosgw-admin DESTINATION bin)
 
 set(radosgw_es_srcs
   rgw_es_main.cc)
 add_executable(radosgw-es ${radosgw_es_srcs})
-target_link_libraries(radosgw-es rgw_a librados
+target_link_libraries(radosgw-es ${rgw_libs} librados
   cls_rgw_client cls_otp_client cls_lock_client cls_refcount_client
   cls_log_client cls_timeindex_client
   cls_version_client cls_user_client
   global ${FCGI_LIBRARY} ${LIB_RESOLV}
   ${CURL_LIBRARIES} ${EXPAT_LIBRARIES} ${BLKID_LIBRARIES})
-if(WITH_RADOSGW_AMQP_ENDPOINT)
-  target_link_libraries(radosgw-es RabbitMQ::RabbitMQ)
-endif()
 install(TARGETS radosgw-es DESTINATION bin)
 
 set(radosgw_token_srcs
@@ -280,15 +276,12 @@ install(TARGETS radosgw-token DESTINATION bin)
 set(radosgw_object_expirer_srcs
   rgw_object_expirer.cc)
 add_executable(radosgw-object-expirer ${radosgw_object_expirer_srcs})
-target_link_libraries(radosgw-object-expirer rgw_a librados
+target_link_libraries(radosgw-object-expirer ${rgw_libs} librados
   cls_rgw_client cls_otp_client cls_lock_client cls_refcount_client
   cls_log_client cls_timeindex_client
   cls_version_client cls_user_client
   global ${FCGI_LIBRARY} ${LIB_RESOLV}
   ${CURL_LIBRARIES} ${EXPAT_LIBRARIES})
-if(WITH_RADOSGW_AMQP_ENDPOINT)
-  target_link_libraries(radosgw-object-expirer RabbitMQ::RabbitMQ)
-endif()
 install(TARGETS radosgw-object-expirer DESTINATION bin)
 
 set(librgw_srcs
@@ -298,7 +291,7 @@ add_library(rgw SHARED ${librgw_srcs})
 target_link_libraries(rgw
   PUBLIC dmclock::dmclock
   PRIVATE
-  rgw_a
+  ${rgw_libs}
   librados
   cls_rgw_client
   cls_otp_client
@@ -312,9 +305,6 @@ target_link_libraries(rgw
   ${LIB_RESOLV}
   ${CURL_LIBRARIES}
   ${EXPAT_LIBRARIES})
-if(WITH_RADOSGW_AMQP_ENDPOINT)
-  target_link_libraries(rgw PRIVATE RabbitMQ::RabbitMQ)
-endif()
 set_target_properties(rgw PROPERTIES OUTPUT_NAME rgw VERSION 2.0.0
   SOVERSION 2)
 install(TARGETS rgw DESTINATION ${CMAKE_INSTALL_LIBDIR})