From 35f12b37c947e767f947bf612d5297b1f98eb53e Mon Sep 17 00:00:00 2001 From: Benjamin Esquivel Date: Fri, 21 Jul 2023 09:04:50 -0700 Subject: [PATCH] Enable so versioning Use the C_SHARED_VERSION on the aziotsharedutil_dll.so library and have cmake build the symlinks required for proper so library versioning. Signed-off-by: Benjamin Esquivel --- CMakeLists.txt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6eb607f02..8f1620f7a 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,6 +10,8 @@ endif() project(azure_c_shared_utility) FILE(READ ${CMAKE_CURRENT_LIST_DIR}/version.txt C_SHARED_VERSION) +string(REGEX MATCH "^([0-9]+)[\\.]([0-9]+)[\\.]([0-9]+)$" _ ${C_SHARED_VERSION}) +set(C_SHARED_VERSION_MAJOR ${CMAKE_MATCH_1}) # Include the common build rules for the C SDK include(configs/azure_iot_build_rules.cmake) @@ -520,7 +522,11 @@ if(${build_as_dynamic}) ${source_h_files} ${def_files} ) - set_target_properties(aziotsharedutil_dll PROPERTIES OUTPUT_NAME "aziotsharedutil_dll") + set_target_properties(aziotsharedutil_dll PROPERTIES + OUTPUT_NAME "aziotsharedutil_dll" + VERSION ${C_SHARED_VERSION} + SOVERSION ${C_SHARED_VERSION_MAJOR} + ) endif() set(aziotsharedutil_target_libs)