Fix shared object versioning
This commit is contained in:
parent
3403dabec2
commit
caddbf663d
@ -12,6 +12,15 @@ project(exiv2 # use TWEAK to categorize the build
|
|||||||
LANGUAGES C CXX
|
LANGUAGES C CXX
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Shared Object versioning (SemVer-like: must bump major on API breakage)
|
||||||
|
if(PROJECT_VERSION_MAJOR EQUAL 0)
|
||||||
|
# support legacy scheme (e.g. 0.27.x -> 27)
|
||||||
|
set(EXIV2LIB_SOVERSION ${PROJECT_VERSION_MINOR})
|
||||||
|
else()
|
||||||
|
# restart from 30
|
||||||
|
math(EXPR EXIV2LIB_SOVERSION "30 + (${PROJECT_VERSION_MAJOR} - 1)")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_BUILD_TYPE)
|
if(NOT CMAKE_BUILD_TYPE)
|
||||||
set (CMAKE_BUILD_TYPE Release)
|
set (CMAKE_BUILD_TYPE Release)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@ -160,7 +160,7 @@ endif()
|
|||||||
|
|
||||||
set_target_properties( exiv2lib PROPERTIES
|
set_target_properties( exiv2lib PROPERTIES
|
||||||
VERSION ${PROJECT_VERSION}
|
VERSION ${PROJECT_VERSION}
|
||||||
SOVERSION ${PROJECT_VERSION_MINOR}
|
SOVERSION ${EXIV2LIB_SOVERSION}
|
||||||
OUTPUT_NAME exiv2
|
OUTPUT_NAME exiv2
|
||||||
PDB_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
PDB_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
COMPILE_FLAGS ${EXTRA_COMPILE_FLAGS}
|
COMPILE_FLAGS ${EXTRA_COMPILE_FLAGS}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user