X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=src%2Flibmemcachedutil%2FCMakeLists.txt;h=44e0c8a6009d698f87a867e3166bc1ebebcc95c1;hb=7b0cdf5ab34949158065c125139e5d3ead1ff33f;hp=e1834f265070a7a15681ae65c2eba10c02a8aed7;hpb=0c4fefba6fa21b736a027cde2633c226130a1932;p=awesomized%2Flibmemcached diff --git a/src/libmemcachedutil/CMakeLists.txt b/src/libmemcachedutil/CMakeLists.txt index e1834f26..44e0c8a6 100644 --- a/src/libmemcachedutil/CMakeLists.txt +++ b/src/libmemcachedutil/CMakeLists.txt @@ -5,17 +5,32 @@ add_library(libmemcachedutil SHARED flush.cc pid.cc ping.cc - pool.cc version.cc ) +if(CMAKE_USE_PTHREADS_INIT) + target_sources(libmemcachedutil PRIVATE pool.cc) +endif() add_library(memcachedutil ALIAS libmemcachedutil) set_target_properties(libmemcachedutil PROPERTIES + CXX_STANDARD ${CXX_STANDARD} LIBRARY_OUTPUT_NAME memcachedutil LIBRARY_OUTPUT_NAME_DEBUG memcachedutil-dbg - SOVERSION ${LIBMEMCACHEDUTIL_SO_VERSION} - VERSION v${LIBMEMCACHEDUTIL_VERSION}) + SOVERSION ${LIBMEMCACHEDUTIL_SO_VERSION}) target_compile_definitions(libmemcachedutil PRIVATE -DBUILDING_LIBMEMCACHED) +if(CMAKE_CXX_COMPILER_ID STREQUAL AppleClang) + set_target_properties(libmemcachedutil PROPERTIES + LINK_FLAGS "-Wl,-undefined,dynamic_lookup" + ) +endif() +if(MSVC) + set_target_properties(libmemcachedutil PROPERTIES + LINK_FLAGS "/FORCE:UNRESOLVED" + ) +endif() target_link_libraries(libmemcachedutil PUBLIC Threads::Threads) +if(HAVE_LIBSASL) + target_link_libraries(libmemcachedutil PUBLIC ${LIBSASL}) +endif() target_include_directories(libmemcachedutil PRIVATE ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src @@ -26,6 +41,12 @@ target_include_directories(libmemcachedutil PUBLIC $) install(TARGETS libmemcachedutil EXPORT libmemcachedutil-targets - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + RUNTIME COMPONENT bin DESTINATION ${CMAKE_INSTALL_BINDIR} + ARCHIVE COMPONENT lib DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY COMPONENT lib DESTINATION ${CMAKE_INSTALL_LIBDIR} + ${TARGET_NAMELINK_COMPONENT} + ) export(EXPORT libmemcachedutil-targets NAMESPACE libmemcached::) -install(EXPORT libmemcachedutil-targets NAMESPACE libmemcached:: DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake) +install(EXPORT libmemcachedutil-targets NAMESPACE libmemcached:: + COMPONENT dev + DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake)