diff --git a/CMakeLists.txt b/CMakeLists.txt index 99fcc5df7f6f6de35488ff508b1e7eb490c4dd63..957c589d3aedf26f7f9195bf16abf6979d52364b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -65,6 +65,11 @@ project(CALAMARES VERSION ${CALAMARES_VERSION_SHORT} LANGUAGES C CXX HOMEPAGE_UR if(NOT CALAMARES_RELEASE_MODE AND CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) message(FATAL_ERROR "Do not build development versions in the source-directory.") endif() +# Calamares in the 3.3 series promises ABI compatbility, so it sets a +# .so-version equal to the series number. We use ci/abicheck.sh to +# keep track of this. Note that the **alpha** releases also have +# such an .so-version, but are not ABI-stable yet. +set(CALAMARES_SOVERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}") ### OPTIONS # diff --git a/src/libcalamares/CMakeLists.txt b/src/libcalamares/CMakeLists.txt index 1506f4791072e85ebc29619c335fc647779fb254..767c2ab398b5b2c75743bab618eed8fd385dd8c3 100644 --- a/src/libcalamares/CMakeLists.txt +++ b/src/libcalamares/CMakeLists.txt @@ -97,7 +97,7 @@ set_target_properties( calamares PROPERTIES VERSION ${CALAMARES_VERSION_SHORT} - SOVERSION ${CALAMARES_VERSION_SHORT} + SOVERSION ${CALAMARES_SOVERSION} INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_INSTALL_FULL_INCLUDEDIR}/libcalamares ) target_link_libraries(calamares LINK_PUBLIC yamlcpp::yamlcpp Qt5::Core KF5::CoreAddons) diff --git a/src/libcalamaresui/CMakeLists.txt b/src/libcalamaresui/CMakeLists.txt index 406bd3ce4d2dea546a6c25fa0ab240d4ce444132..20af93a5659b72331b962acfbe68941e9b8cc202 100644 --- a/src/libcalamaresui/CMakeLists.txt +++ b/src/libcalamaresui/CMakeLists.txt @@ -53,6 +53,7 @@ calamares_add_library(calamaresui UI utils/ErrorDialog/ErrorDialog.ui VERSION ${CALAMARES_VERSION_SHORT} + SOVERSION ${CALAMARES_SOVERSION} ) target_link_libraries(calamaresui PRIVATE yamlcpp::yamlcpp) if(KF5CoreAddons_FOUND AND KF5CoreAddons_VERSION VERSION_GREATER_EQUAL 5.58)