X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Flibmemcached%2FCMakeLists.txt;h=f43e5adb3dcc67596d0bf7c12a0fd7a56ec3f133;hb=6b7d2bf0319e0bd48bd6aa4ad8c56a935f98b0d2;hp=819a98f7c225de3ad5d56cb973aec622329b4c4b;hpb=7e2b466107a65e22f1cc258ca8643922dbb60352;p=awesomized%2Flibmemcached diff --git a/src/libmemcached/CMakeLists.txt b/src/libmemcached/CMakeLists.txt index 819a98f7..f43e5adb 100644 --- a/src/libmemcached/CMakeLists.txt +++ b/src/libmemcached/CMakeLists.txt @@ -71,22 +71,36 @@ set(LIBMEMCACHED_SOURCES version.cc virtual_bucket.c) +check_cxx_compiler_flag(-Wno-deprecated-register W_NO_DEPRECATED_REGISTER) + +if(W_NO_DEPRECATED_REGISTER) + set_source_files_properties( + ${FLEX_CSL_SCANNER_OUTPUTS} + ${BISON_CSL_PARSER_OUTPUTS} + PROPERTIES COMPILE_OPTIONS -Wno-deprecated-register + ) +endif() + add_library(libmemcached SHARED ${LIBMEMCACHED_SOURCES}) add_library(memcached ALIAS libmemcached) set_target_properties(libmemcached PROPERTIES + CXX_STANDARD ${CXX_STANDARD} LIBRARY_OUTPUT_NAME memcached LIBRARY_OUTPUT_NAME_DEBUG memcached-dbg - SOVERSION ${LIBMEMCACHED_SO_VERSION} - VERSION v${LIBMEMCACHED_VERSION}) + SOVERSION ${LIBMEMCACHED_SO_VERSION}) target_compile_definitions(libmemcached PRIVATE -DBUILDING_LIBMEMCACHED) -target_link_libraries(libmemcached PUBLIC libhashkit Threads::Threads ${LIBSASL_LIBRARIES} ${CMAKE_DL_LIBS} ${Backtrace_LIBRARIES}) -target_include_directories(libmemcached PRIVATE ${Backtrace_INCLUDE_DIR}) +target_link_libraries(libmemcached PUBLIC libhashkit Threads::Threads ${CMAKE_DL_LIBS}) +if(HAVE_BACKTRACE) + target_link_libraries(libmemcached PUBLIC ${BACKTRACE}) +endif() +if(HAVE_LIBSASL) + target_link_libraries(libmemcached PUBLIC ${LIBSASL}) +endif() target_include_directories(libmemcached PRIVATE ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src ${CMAKE_BINARY_DIR}) -target_include_directories(libmemcached PUBLIC ${LIBSASL_INCLUDEDIR}) target_include_directories(libmemcached PUBLIC $ $ @@ -110,15 +124,19 @@ install_public_headers( add_library(libmemcachedinternal STATIC ${LIBMEMCACHED_SOURCES}) add_library(memcachedinternal ALIAS libmemcachedinternal) -set_target_properties(libmemcachedinternal PROPERTIES LIBRARY_OUTPUT_NAME memcachedinternal) +set_target_properties(libmemcachedinternal PROPERTIES CXX_STANDARD ${CXX_STANDARD} LIBRARY_OUTPUT_NAME memcachedinternal) target_compile_definitions(libmemcachedinternal PRIVATE -DBUILDING_LIBMEMCACHEDINTERNAL) -target_link_libraries(libmemcachedinternal PUBLIC libhashkit Threads::Threads ${LIBSASL_LIBRARIES} ${CMAKE_DL_LIBS} ${Backtrace_LIBRARIES}) -target_include_directories(libmemcachedinternal PRIVATE ${Backtrace_INCLUDE_DIR}) +target_link_libraries(libmemcachedinternal PUBLIC libhashkit Threads::Threads ${CMAKE_DL_LIBS}) +if(HAVE_LIBSASL) + target_link_libraries(libmemcachedinternal PUBLIC ${LIBSASL}) +endif() +if(HAVE_BACKTRACE) + target_link_libraries(libmemcachedinternal PUBLIC ${BACKTRACE}) +endif() target_include_directories(libmemcachedinternal PRIVATE ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src ${CMAKE_BINARY_DIR}) -target_include_directories(libmemcachedinternal PUBLIC ${LIBSASL_INCLUDEDIR}) target_include_directories(libmemcachedinternal PUBLIC $ $