fix soname versioning as suggested in #98
[m6w6/libmemcached] / src / libmemcached / CMakeLists.txt
index 8b5633084f6f2876647a4f13ed010bba848da5b8..ebc5a213cdfcce2d58ac674c27724ddaae988fe1 100644 (file)
@@ -28,7 +28,7 @@ set(LIBMEMCACHED_SOURCES
         ${FLEX_CSL_SCANNER_OUTPUTS}
         allocators.cc
         analyze.cc
-        array.c
+        array.cc
         auto.cc
         backtrace.cc
         behavior.cc
@@ -72,7 +72,7 @@ set(LIBMEMCACHED_SOURCES
         udp.cc
         verbosity.cc
         version.cc
-        virtual_bucket.c)
+        virtual_bucket.cc)
 
 check_cxx_compiler_flag(-Wno-deprecated-register W_NO_DEPRECATED_REGISTER)
 
@@ -91,7 +91,8 @@ set_target_properties(libmemcached PROPERTIES
         CXX_STANDARD ${CXX_STANDARD}
         LIBRARY_OUTPUT_NAME memcached
         LIBRARY_OUTPUT_NAME_DEBUG memcached-dbg
-        SOVERSION ${LIBMEMCACHED_SO_VERSION})
+        SOVERSION ${LIBMEMCACHED_SO_SOVERSION}
+        VERSION ${LIBMEMCACHED_SO_VERSION})
 target_compile_definitions(libmemcached PRIVATE -DBUILDING_LIBMEMCACHED)
 target_link_libraries(libmemcached PUBLIC libhashkit Threads::Threads ${CMAKE_DL_LIBS})
 target_link_libraries(libmemcached PRIVATE p9y)
@@ -121,6 +122,7 @@ enable_dtrace_for(libmemcached libmemcached_probes.d dtrace_probes.h)
 
 install(TARGETS libmemcached EXPORT libmemcached-targets
         RUNTIME COMPONENT bin DESTINATION ${CMAKE_INSTALL_BINDIR}
+        ARCHIVE COMPONENT lib DESTINATION ${CMAKE_INSTALL_LIBDIR}
         LIBRARY COMPONENT lib DESTINATION ${CMAKE_INSTALL_LIBDIR}
         ${TARGET_NAMELINK_COMPONENT}
         )
@@ -144,7 +146,7 @@ set_target_properties(libmemcachedinternal PROPERTIES CXX_STANDARD ${CXX_STANDAR
 target_compile_definitions(libmemcachedinternal PRIVATE -DBUILDING_LIBMEMCACHEDINTERNAL)
 target_link_libraries(libmemcachedinternal PUBLIC libhashkit Threads::Threads ${CMAKE_DL_LIBS})
 target_link_libraries(libmemcachedinternal PRIVATE p9y)
-if(MSVC)
+if(MSVC OR MINGW)
     target_link_libraries(libmemcached PUBLIC wsock32 ws2_32)
 endif()
 if(HAVE_LIBSASL)