Allow exact shared object version
This commit is contained in:
parent
72426e2d4c
commit
77c454b304
|
@ -63,6 +63,15 @@ configure_file(
|
|||
)
|
||||
list(APPEND HEADER_FILES global.h)
|
||||
|
||||
# determine SOVERSION
|
||||
if(NOT META_SOVERSION)
|
||||
if(META_VERSION_EXACT_SONAME)
|
||||
set(META_SOVERSION "${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}")
|
||||
else()
|
||||
set(META_SOVERSION "${META_VERSION_MAJOR}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# add target for building the library
|
||||
if(BUILD_SHARED_LIBS)
|
||||
# use correct linker flags and compile definitions (depend on linkage)
|
||||
|
@ -77,8 +86,8 @@ if(BUILD_SHARED_LIBS)
|
|||
add_library(${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} SHARED ${HEADER_FILES} ${SRC_FILES} ${WIDGETS_FILES} ${QML_FILES} ${RES_FILES} ${QM_FILES} ${WINDOWS_ICON_PATH})
|
||||
target_link_libraries(${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} ${ACTUAL_ADDITIONAL_LINK_FLAGS} ${LIBRARIES})
|
||||
set_target_properties(${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} PROPERTIES
|
||||
VERSION ${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}
|
||||
SOVERSION ${META_VERSION_MAJOR}
|
||||
VERSION "${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}"
|
||||
SOVERSION "${META_SOVERSION}"
|
||||
CXX_STANDARD 11
|
||||
COMPILE_DEFINITIONS "${ACTUAL_ADDITIONAL_COMPILE_DEFINITIONS}"
|
||||
LINK_SEARCH_START_STATIC ${STATIC_LINKAGE}
|
||||
|
@ -94,9 +103,9 @@ if(BUILD_STATIC_LIBS)
|
|||
# add target link libraries for the static lib also because otherwise Qt header files can not be located
|
||||
target_link_libraries(${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX}_static ${STATIC_LIBRARIES})
|
||||
set_target_properties(${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX}_static PROPERTIES
|
||||
VERSION ${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}
|
||||
SOVERSION ${META_VERSION_MAJOR}
|
||||
OUTPUT_NAME ${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX}
|
||||
VERSION "${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}"
|
||||
SOVERSION "${META_SOVERSION}"
|
||||
OUTPUT_NAME "${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX}"
|
||||
CXX_STANDARD 11
|
||||
COMPILE_DEFINITIONS "${ACTUAL_ADDITIONAL_COMPILE_DEFINITIONS}"
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue