projects
/
awesomized
/
libmemcached
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
fix soname versioning as suggested in #98
[awesomized/libmemcached]
/
src
/
libmemcachedprotocol
/
CMakeLists.txt
diff --git
a/src/libmemcachedprotocol/CMakeLists.txt
b/src/libmemcachedprotocol/CMakeLists.txt
index 84b7fa1fb9687f1822c32373869487423848ce76..3e69aad9af329e7aa092b90279323fe8a0ef30c0 100644
(file)
--- 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
add_library(libmemcachedprotocol SHARED
ascii_handler.c
@@
-6,15
+7,26
@@
add_library(libmemcachedprotocol SHARED
common.h
handler.c
pedantic.c
common.h
handler.c
pedantic.c
+ ../libmemcached/byteorder.cc
)
add_library(memcachedprotocol ALIAS libmemcachedprotocol)
set_target_properties(libmemcachedprotocol PROPERTIES
)
add_library(memcachedprotocol ALIAS libmemcachedprotocol)
set_target_properties(libmemcachedprotocol PROPERTIES
+ CXX_STANDARD ${CXX_STANDARD}
LIBRARY_OUTPUT_NAME memcachedprotocol
LIBRARY_OUTPUT_NAME_DEBUG memcachedprotocol-dbg
LIBRARY_OUTPUT_NAME memcachedprotocol
LIBRARY_OUTPUT_NAME_DEBUG memcachedprotocol-dbg
- SOVERSION ${LIBMEMCACHEDPROTOCOL_SO_VERSION}
- VERSION
v${LIBMEMCACHEDPROTOCOL
_VERSION})
+ SOVERSION ${LIBMEMCACHEDPROTOCOL_SO_
SO
VERSION}
+ VERSION
${LIBMEMCACHEDPROTOCOL_SO
_VERSION})
target_compile_definitions(libmemcachedprotocol PRIVATE -DBUILDING_LIBMEMCACHED)
target_compile_definitions(libmemcachedprotocol PRIVATE -DBUILDING_LIBMEMCACHED)
+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)
target_link_libraries(libmemcachedprotocol PUBLIC Threads::Threads)
+if(MSVC OR MINGW)
+ target_link_libraries(libmemcachedprotocol PUBLIC wsock32 ws2_32)
+endif()
target_include_directories(libmemcachedprotocol PRIVATE
${CMAKE_SOURCE_DIR}/src
${CMAKE_BINARY_DIR}/src
target_include_directories(libmemcachedprotocol PRIVATE
${CMAKE_SOURCE_DIR}/src
${CMAKE_BINARY_DIR}/src
@@
-25,6
+37,12
@@
target_include_directories(libmemcachedprotocol PUBLIC
$<INSTALL_INTERFACE:include>)
install(TARGETS libmemcachedprotocol EXPORT libmemcachedprotocol-targets
$<INSTALL_INTERFACE:include>)
install(TARGETS libmemcachedprotocol EXPORT libmemcachedprotocol-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 libmemcachedprotocol-targets NAMESPACE libmemcached::)
export(EXPORT libmemcachedprotocol-targets NAMESPACE libmemcached::)
-install(EXPORT libmemcachedprotocol-targets NAMESPACE libmemcached:: DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake)
+install(EXPORT libmemcachedprotocol-targets NAMESPACE libmemcached::
+ COMPONENT dev
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake)