Adpated for 0.9.1 from From cfff41dc89f569deb1cd0c46c4e60a95ec8a2ce2 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 1 Jan 2016 09:56:12 +0100 Subject: [PATCH 1/2] honours LIB_SUFFIX value --- src/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) From ccdfb385fe39144f7c092d5d677a50f3c992cd72 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 1 Jan 2016 09:56:40 +0100 Subject: [PATCH 2/2] add soname version --- CMakeLists.txt | 15 +++++++++++++++ src/CMakeLists.txt | 7 +++++++ 2 files changed, 22 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4dd745e..7aab9cf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,6 +6,21 @@ endif() project("hdr_histogram") +# Follow all steps below in order to calculate new ABI version when updating the library +# NOTE: THIS IS UNRELATED to the actual project version +# +# 1. If the library source code has changed at all since the last update, then increment revision +# 2. If any interfaces have been added, removed, or changed since the last update, increment current and set revision to 0. +# 3. If any interfaces have been added since the last public release, then increment age. +# 4. If any interfaces have been removed since the last public release, then set age to 0. + +set(HDR_SOVERSION_CURRENT 1) +set(HDR_SOVERSION_REVISION 0) +set(HDR_SOVERSION_AGE 0) + +set(HDR_VERSION ${HDR_SOVERSION_CURRENT}.${HDR_SOVERSION_AGE}.${HDR_SOVERSION_REVISION}) +set(HDR_SOVERSION ${HDR_SOVERSION_CURRENT}) + ENABLE_TESTING() if(UNIX) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt --- a/src/CMakeLists.txt.pr28 2016-01-01 10:03:49.583109992 +0100 +++ a/src/CMakeLists.txt 2016-01-01 10:05:48.075702608 +0100 @@ -6,6 +6,12 @@ add_library(hdr_histogram_static STATIC target_link_libraries(hdr_histogram m z) target_link_libraries(hdr_histogram_static m z) -install(TARGETS hdr_histogram DESTINATION lib) -install(TARGETS hdr_histogram_static DESTINATION lib) +if (WIN32) + set_target_properties(hdr_histogram PROPERTIES VERSION ${HDR_VERSION}) +else (WIN32) + set_target_properties(hdr_histogram PROPERTIES VERSION ${HDR_VERSION} SOVERSION ${HDR_SOVERSION}) +endif (WIN32) + +install(TARGETS hdr_histogram DESTINATION lib${LIB_SUFFIX}) +install(TARGETS hdr_histogram_static DESTINATION lib${LIB_SUFFIX}) install(FILES hdr_histogram.h hdr_histogram_log.h hdr_writer_reader_phaser.h hdr_interval_recorder.h DESTINATION include/hdr)