[cmake] split versioning

* WITH_LIBRARY_VERSIONING appends the major version to the name
* WITH_LIBRARY_SOVERSIONING enables SOVERSION on platforms supporting it
This commit is contained in:
akallabeth
2025-08-26 15:23:15 +02:00
parent 36b3f2ba15
commit 5948091c65
2 changed files with 3 additions and 2 deletions

View File

@@ -76,7 +76,7 @@ macro(AddTargetWithResourceFile nameAndTarget is_exe version sources)
message("add_library(${target}) [${lib_options}]")
add_library(${target} ${lib_options} ${${sources}})
if(VERSIONING)
if(WITH_LIBRARY_SOVERSIONING)
set_target_properties(${target} PROPERTIES VERSION ${version} SOVERSION ${RC_VERSION_MAJOR})
else()
set_target_properties(${target} PROPERTIES PREFIX "")

View File

@@ -1,7 +1,8 @@
option(CMAKE_COLOR_MAKEFILE "colorful CMake makefile" ON)
option(CMAKE_VERBOSE_MAKEFILE "verbose CMake makefile" ON)
option(CMAKE_POSITION_INDEPENDENT_CODE "build with position independent code (-fPIC or -fPIE)" ON)
option(WITH_LIBRARY_VERSIONING "Use library version triplet" ON)
option(WITH_LIBRARY_VERSIONING "Append library major version to name" ON)
option(WITH_LIBRARY_SOVERSIONING "Use library SO version triplet" ON)
option(WITH_BINARY_VERSIONING "Use binary versioning" OFF)
option(WITH_RESOURCE_VERSIONING "Use resource versioning" OFF)
option(BUILD_SHARED_LIBS "Build shared libraries" ON)