From 28eae2ba5839dab257cab780f7c6fc6df29015ba Mon Sep 17 00:00:00 2001 From: akallabeth Date: Mon, 1 Sep 2025 13:14:15 +0200 Subject: [PATCH] [cmake] fix library naming * fix a backward compatibility issue (versionless proxy modules) --- cmake/AddTargetWithResourceFile.cmake | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/cmake/AddTargetWithResourceFile.cmake b/cmake/AddTargetWithResourceFile.cmake index a4066e2e4..9aec539e8 100644 --- a/cmake/AddTargetWithResourceFile.cmake +++ b/cmake/AddTargetWithResourceFile.cmake @@ -27,7 +27,7 @@ macro(AddTargetWithResourceFile nameAndTarget is_exe version sources) if(IS_EXE AND WITH_BINARY_VERSIONING) set(VERSIONING ON) - elseif(NOT IS_EXE AND WITH_LIBRARY_VERSIONING) + elseif(NOT IS_EXE AND (WITH_LIBRARY_VERSIONING OR WITH_LIBRARY_SOVERSIONING)) set(VERSIONING ON) endif() if(${ARGC} GREATER 4) @@ -47,7 +47,7 @@ macro(AddTargetWithResourceFile nameAndTarget is_exe version sources) set(RC_VERSION_FILE "${name}${CMAKE_EXECUTABLE_SUFFIX}") endif() else() - if(VERSIONING) + if(VERSIONING AND WITH_LIBRARY_VERSIONING) set(RC_VERSION_FILE "${CMAKE_SHARED_LIBRARY_PREFIX}${name}${RC_VERSION_MAJOR}${CMAKE_SHARED_LIBRARY_SUFFIX}") else() set(RC_VERSION_FILE "${CMAKE_SHARED_LIBRARY_PREFIX}${name}${CMAKE_SHARED_LIBRARY_SUFFIX}") @@ -76,14 +76,14 @@ macro(AddTargetWithResourceFile nameAndTarget is_exe version sources) message("add_library(${target}) [${lib_options}]") add_library(${target} ${lib_options} ${${sources}}) - if(WITH_LIBRARY_SOVERSIONING) + if(VERSIONING AND WITH_LIBRARY_SOVERSIONING) set_target_properties(${target} PROPERTIES VERSION ${version} SOVERSION ${RC_VERSION_MAJOR}) - else() - set_target_properties(${target} PROPERTIES PREFIX "") endif() - set_target_properties(${target} PROPERTIES OUTPUT_NAME ${OUTPUT_FILENAME}) - set(OUTPUT_FILENAME "${CMAKE_SHARED_LIBRARY_PREFIX}${OUTPUT_FILENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}") + if(VERSIONING AND WITH_LIBRARY_VERSIONING) + set_target_properties(${target} PROPERTIES OUTPUT_NAME ${OUTPUT_FILENAME}) + set(OUTPUT_FILENAME "${CMAKE_SHARED_LIBRARY_PREFIX}${OUTPUT_FILENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}") + endif() endif() if(WITH_DEBUG_SYMBOLS AND MSVC AND (is_exe OR BUILD_SHARED_LIBS))