From bdaf1db7044ce944203776975a6ad3fdd033f07a Mon Sep 17 00:00:00 2001 From: Tomas Pecka <peckato1@fit.cvut.cz> Date: Tue, 12 Mar 2019 15:35:22 +0100 Subject: [PATCH] CMake: Fix lib versioning --- CMake/generate.py | 9 +++++++++ CMake/templates/CMakeLists_bin.txt | 4 +++- CMake/templates/CMakeLists_itest.txt | 4 +++- CMake/templates/CMakeLists_lib.txt | 8 +++++--- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/CMake/generate.py b/CMake/generate.py index 91f9fc50b1..ae3d302f62 100755 --- a/CMake/generate.py +++ b/CMake/generate.py @@ -229,6 +229,9 @@ class Generator: include_files=Helpers.join(project.find_install_sources()), find_packages=Helpers.join(map(lambda p: "find_package({})".format(p), finds), "\n"), find_packages_tests=Helpers.join(map(lambda p: "find_package({})".format(p), test_finds), "\n"), + alib_versioning_major=Config.get(CONFIG, 'Versioning', 'major'), + alib_versioning_minor=Config.get(CONFIG, 'Versioning', 'minor'), + alib_versioning_patch=Config.get(CONFIG, 'Versioning', 'patch'), )) @classmethod @@ -243,6 +246,9 @@ class Generator: cmake_options=Helpers.join(["set({} {})".format(k.upper(), v) for k, v in project.cmake_additional_set], sep='\n'), source_files_test=Helpers.join(project.find_sources_test()), find_packages_tests=Helpers.join(map(lambda p: "find_package({})".format(p), test_finds), "\n"), + alib_versioning_major=Config.get(CONFIG, 'Versioning', 'major'), + alib_versioning_minor=Config.get(CONFIG, 'Versioning', 'minor'), + alib_versioning_patch=Config.get(CONFIG, 'Versioning', 'patch'), )) @classmethod @@ -257,6 +263,9 @@ class Generator: cmake_options=Helpers.join(["set({} {})".format(k.upper(), v) for k, v in project.cmake_additional_set], sep='\n'), source_files=Helpers.join(project.find_sources()), find_packages=Helpers.join(map(lambda p: "find_package({})".format(p), finds), "\n"), + alib_versioning_major=Config.get(CONFIG, 'Versioning', 'major'), + alib_versioning_minor=Config.get(CONFIG, 'Versioning', 'minor'), + alib_versioning_patch=Config.get(CONFIG, 'Versioning', 'patch'), )) @staticmethod diff --git a/CMake/templates/CMakeLists_bin.txt b/CMake/templates/CMakeLists_bin.txt index 020aa0e28e..ad53264206 100644 --- a/CMake/templates/CMakeLists_bin.txt +++ b/CMake/templates/CMakeLists_bin.txt @@ -1,4 +1,6 @@ -project({project_name}) +project({project_name} + VERSION {alib_versioning_major}.{alib_versioning_minor}.{alib_versioning_patch} + LANGUAGES CXX) set(PROJECT_NAME {project_name}) find_package(tclap REQUIRED) diff --git a/CMake/templates/CMakeLists_itest.txt b/CMake/templates/CMakeLists_itest.txt index fa4110869d..267024a678 100644 --- a/CMake/templates/CMakeLists_itest.txt +++ b/CMake/templates/CMakeLists_itest.txt @@ -1,4 +1,6 @@ -project({project_name}) +project({project_name} + VERSION {alib_versioning_major}.{alib_versioning_minor}.{alib_versioning_patch} + LANGUAGES CXX) set(PROJECT_NAME_TEST test-{project_name}) {cmake_options} diff --git a/CMake/templates/CMakeLists_lib.txt b/CMake/templates/CMakeLists_lib.txt index 82c420b0dd..8ae2a618bd 100644 --- a/CMake/templates/CMakeLists_lib.txt +++ b/CMake/templates/CMakeLists_lib.txt @@ -1,4 +1,6 @@ -project({project_name}) +project({project_name} + VERSION {alib_versioning_major}.{alib_versioning_minor}.{alib_versioning_patch} + LANGUAGES CXX) set(PROJECT_NAME {project_name}) {cmake_options} @@ -28,8 +30,8 @@ set_target_properties(${{PROJECT_NAME}} PROPERTIES INTERFACE_POSITION_INDEPENDENT_CODE ON - VERSION ${{ALIB_VERSION}} - SOVERSION ${{ALIB_VERSION_MAJOR}} + VERSION ${{PROJECT_VERSION}} + SOVERSION ${{PROJECT_VERSION_MAJOR}} ) # if (CMAKE_BUILD_TYPE STREQUAL "Release") -- GitLab