diff --git a/CMakeLists.txt b/CMakeLists.txt index 22da165..6fb6649 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,13 @@ cmake_minimum_required(VERSION 3.23) -project(spatialaudio VERSION 0.4.0) +# Get the version from the meson file +file(READ ${CMAKE_CURRENT_SOURCE_DIR}/meson.build CONTENT) +string(REGEX MATCH " version : '([0-9]+).([0-9]+).([0-9]+)'" VERSION_REGEX "${CONTENT}") +set(MESON_RELEASE_VERSION_MAJOR ${CMAKE_MATCH_1}) +set(MESON_RELEASE_VERSION_MINOR ${CMAKE_MATCH_2}) +set(MESON_RELEASE_VERSION_PATCH ${CMAKE_MATCH_3}) + +project(spatialaudio VERSION ${MESON_RELEASE_VERSION_MAJOR}.${MESON_RELEASE_VERSION_MINOR}.${MESON_RELEASE_VERSION_PATCH}) # Options option(BUILD_SHARED_LIBS "Build shared instead of static libraries" ON) diff --git a/include/meson.build b/include/meson.build index 4962a82..127131b 100644 --- a/include/meson.build +++ b/include/meson.build @@ -1,3 +1,9 @@ +conf_data.set('CMAKE_PROJECT_VERSION', meson.project_version()) +split_version = meson.project_version().split('.') +conf_data.set('CMAKE_PROJECT_VERSION_MAJOR', split_version[0]) +conf_data.set('CMAKE_PROJECT_VERSION_MINOR', split_version[1]) +conf_data.set('CMAKE_PROJECT_VERSION_PATCH', split_version[2]) + config_h = configure_file( input : 'SpatialaudioConfig.h.in', output : 'SpatialaudioConfig.h',