From 7296be4e84d90c1350aef277cdf37b43fdde5082 Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Fri, 29 Jul 2016 12:25:50 +0800 Subject: [PATCH] cmake: use fullpaths of libraries better off using the detected path, instead of using the default path for finding the linked libaries. see "cmake --help-policy CMP0065" for more details. Signed-off-by: Kefu Chai --- src/CMakeLists.txt | 4 ++-- src/rgw/CMakeLists.txt | 19 +++++++++++++------ src/test/CMakeLists.txt | 18 +++++++++--------- src/test/rgw/CMakeLists.txt | 11 +++++------ 4 files changed, 29 insertions(+), 23 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e457b84b7ab1..92feff535ea9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -586,9 +586,9 @@ if(${WITH_RADOSGW}) cls_user_client cls_statelog_client cls_rgw_client - curl - expat fcgi + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ) endif(${WITH_RADOSGW}) if(${WITH_RBD}) diff --git a/src/rgw/CMakeLists.txt b/src/rgw/CMakeLists.txt index 92187570459b..0be612ace066 100644 --- a/src/rgw/CMakeLists.txt +++ b/src/rgw/CMakeLists.txt @@ -92,7 +92,9 @@ add_library(rgw_a STATIC ${rgw_a_srcs}) target_include_directories(rgw_a PUBLIC ${FCGI_INCLUDE_DIR}) target_link_libraries(rgw_a librados cls_lock_client cls_rgw_client cls_refcount_client cls_log_client cls_statelog_client cls_timeindex_client cls_version_client - cls_replica_log_client cls_user_client common common_utf8 curl global expat + cls_replica_log_client cls_user_client common common_utf8 global + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${OPENLDAP_LIBRARIES} ${CRYPTO_LIBS}) set(radosgw_srcs @@ -107,7 +109,8 @@ target_link_libraries(radosgw rgw_a librados cls_rgw_client cls_lock_client cls_refcount_client cls_log_client cls_statelog_client cls_timeindex_client cls_version_client cls_replica_log_client cls_user_client - curl expat global fcgi resolv ${SSL_LIBRARIES} ${BLKID_LIBRARIES} + global fcgi resolv + ${CURL_LIBRARIES} ${EXPAT_LIBRARIES} ${SSL_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 @@ -123,7 +126,8 @@ target_link_libraries(radosgw-admin rgw_a librados cls_rgw_client cls_lock_client cls_refcount_client cls_log_client cls_statelog_client cls_timeindex_client cls_version_client cls_replica_log_client cls_user_client - curl expat global fcgi resolv ${SSL_LIBRARIES} ${BLKID_LIBRARIES}) + global fcgi resolv + ${CURL_LIBRARIES} ${EXPAT_LIBRARIES} ${SSL_LIBRARIES} ${BLKID_LIBRARIES}) install(TARGETS radosgw-admin DESTINATION bin) set(radosgw_token_srcs @@ -140,7 +144,8 @@ target_link_libraries(radosgw-object-expirer rgw_a librados cls_rgw_client cls_lock_client cls_refcount_client cls_log_client cls_statelog_client cls_timeindex_client cls_version_client cls_replica_log_client cls_user_client - curl expat global fcgi resolv) + global fcgi resolv + ${CURL_LIBRARIES} ${EXPAT_LIBRARIES}) install(TARGETS radosgw-object-expirer DESTINATION bin) set(librgw_srcs @@ -159,8 +164,10 @@ target_link_libraries(rgw LINK_PRIVATE cls_version_client cls_replica_log_client cls_user_client - curl expat global - resolv) + global + resolv + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES}) set_target_properties(rgw PROPERTIES OUTPUT_NAME rgw VERSION 2.0.0 SOVERSION 1) install(TARGETS rgw DESTINATION ${CMAKE_INSTALL_LIBDIR}) diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt index 38ffbda0ab42..8e3a1e987b50 100644 --- a/src/test/CMakeLists.txt +++ b/src/test/CMakeLists.txt @@ -86,7 +86,7 @@ endif(${WITH_RADOSGW}) # From src/test/Makefile-client.am: I dont get this one... testing the osdc build but link in libcephfs? add_executable(test_build_libcephfs buildtest_skeleton.cc) -target_link_libraries(test_build_libcephfs cephfs expat pthread ${CRYPTO_LIBS} ${EXTRALIBS}) +target_link_libraries(test_build_libcephfs cephfs pthread ${CRYPTO_LIBS} ${EXTRALIBS}) add_executable(test_build_librados buildtest_skeleton.cc) target_link_libraries(test_build_librados librados pthread ${CRYPTO_LIBS} ${EXTRALIBS} osdc osd os common cls_lock_client ${BLKID_LIBRARIES}) @@ -155,9 +155,9 @@ if(${WITH_RADOSGW}) librados rgw_a global - curl - expat ${BLKID_LIBRARIES} + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${CMAKE_DL_LIBS} ${UNITTEST_LIBS}) set_target_properties(test_cors PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS}) @@ -171,8 +171,6 @@ if(${WITH_RADOSGW}) librados rgw_a global - curl - expat cls_version_client cls_log_client cls_statelog_client @@ -182,6 +180,8 @@ if(${WITH_RADOSGW}) cls_lock_client ${Boost_REGEX_LIBRARY} ${BLKID_LIBRARIES} + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${CMAKE_DL_LIBS} ${UNITTEST_LIBS} ${CRYPTO_LIBS}) set_target_properties(ceph_test_cls_rgw_meta PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS}) @@ -201,8 +201,6 @@ if(${WITH_RADOSGW}) librados rgw_a global - curl - expat cls_version_client cls_log_client cls_statelog_client @@ -212,6 +210,8 @@ if(${WITH_RADOSGW}) cls_lock_client ${Boost_REGEX_LIBRARY} ${BLKID_LIBRARIES} + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${CMAKE_DL_LIBS} ${UNITTEST_LIBS} ${EXTRALIBS} @@ -237,9 +237,9 @@ if(${WITH_RADOSGW}) cls_user_client cls_lock_client global - curl - expat ${BLKID_LIBRARIES} + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${CMAKE_DL_LIBS} ${UNITTEST_LIBS} ${CRYPTO_LIBS} diff --git a/src/test/rgw/CMakeLists.txt b/src/test/rgw/CMakeLists.txt index f4797442836f..0aad7ae8bbde 100644 --- a/src/test/rgw/CMakeLists.txt +++ b/src/test/rgw/CMakeLists.txt @@ -31,9 +31,9 @@ target_link_libraries(ceph_test_rgw_manifest cls_user_client librados global - curl - expat ${BLKID_LIBRARIES} + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${CMAKE_DL_LIBS} ${UNITTEST_LIBS} ${CRYPTO_LIBS} @@ -58,12 +58,11 @@ target_link_libraries(ceph_test_rgw_obj cls_user_client librados global - curl - uuid - expat + ${CURL_LIBRARIES} + ${EXPAT_LIBRARIES} ${CMAKE_DL_LIBS} ${UNITTEST_LIBS} ${CRYPTO_LIBS} ) set_target_properties(ceph_test_rgw_obj PROPERTIES COMPILE_FLAGS - ${UNITTEST_CXX_FLAGS}) \ No newline at end of file + ${UNITTEST_CXX_FLAGS}) -- 2.47.3