X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Flibmemcachedprotocol%2FCMakeLists.txt;h=2add5133ec9dda3ce6f3bf93f8783a03cbff85c3;hb=d180295a76d7e43b357765a8a6434fdf5f7d3abd;hp=a826e0aa12e1399b11589c5cab1ce37d07297610;hpb=5d6f037cd773ec09a91ed63bbc794a44b1ffbf84;p=awesomized%2Flibmemcached diff --git a/src/libmemcachedprotocol/CMakeLists.txt b/src/libmemcachedprotocol/CMakeLists.txt index a826e0aa..2add5133 100644 --- a/src/libmemcachedprotocol/CMakeLists.txt +++ b/src/libmemcachedprotocol/CMakeLists.txt @@ -1,3 +1,4 @@ +check_include(umem.h) add_library(libmemcachedprotocol SHARED ascii_handler.c @@ -6,11 +7,25 @@ add_library(libmemcachedprotocol SHARED common.h handler.c pedantic.c + ../libmemcached/byteorder.cc ) add_library(memcachedprotocol ALIAS libmemcachedprotocol) -set_target_properties(libmemcachedprotocol PROPERTIES LIBRARY_OUTPUT_NAME memcachedprotocol) +set_target_properties(libmemcachedprotocol PROPERTIES + CXX_STANDARD ${CXX_STANDARD} + LIBRARY_OUTPUT_NAME memcachedprotocol + LIBRARY_OUTPUT_NAME_DEBUG memcachedprotocol-dbg + SOVERSION ${LIBMEMCACHEDPROTOCOL_SO_VERSION}) target_compile_definitions(libmemcachedprotocol PRIVATE -DBUILDING_LIBMEMCACHED) -target_link_libraries(libmemcachedprotocol PUBLIC libmemcached Threads::Threads) +if(CMAKE_CXX_COMPILER_ID STREQUAL AppleClang) + set_target_properties(libmemcachedprotocol PROPERTIES + LINK_FLAGS "-Wl,-undefined,dynamic_lookup" + ) +endif() +target_link_libraries(libmemcachedprotocol PRIVATE p9y) +target_link_libraries(libmemcachedprotocol PUBLIC Threads::Threads) +if(MSVC) + target_link_libraries(libmemcachedprotocol PUBLIC wsock32 ws2_32) +endif() target_include_directories(libmemcachedprotocol PRIVATE ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src @@ -20,8 +35,12 @@ target_include_directories(libmemcachedprotocol PUBLIC $ $) -set_target_properties(libmemcachedprotocol PROPERTIES SOVERSION ${LIBMEMCACHEDPROTOCOL_SO_VERSION}) -install(TARGETS libmemcachedprotocol EXPORT libmemcachedprotocol - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) -export(EXPORT libmemcachedprotocol) -install(EXPORT libmemcachedprotocol DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake) +install(TARGETS libmemcachedprotocol EXPORT libmemcachedprotocol-targets + LIBRARY + COMPONENT lib + ${TARGET_NAMELINK_COMPONENT} + DESTINATION ${CMAKE_INSTALL_LIBDIR}) +export(EXPORT libmemcachedprotocol-targets NAMESPACE libmemcached::) +install(EXPORT libmemcachedprotocol-targets NAMESPACE libmemcached:: + COMPONENT dev + DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake)