1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-07-31 18:24:25 +03:00

Added version header, handle version in top level CMakeLists.txt

Added version header which contains definitions for major, minor
and patch version numbers, as well as for lowest and highest supported
wsrep-API versions. The library versioning follows Semantic Versioning.

Handle CMake policy CMP0048 in top level CMakeLists.txt.
This commit is contained in:
Teemu Ollakka
2019-06-07 14:23:05 +03:00
parent 503d4e7ab4
commit eba8a8f35d
2 changed files with 75 additions and 1 deletions

View File

@ -3,7 +3,28 @@
#
cmake_minimum_required (VERSION 2.8)
project (wsrep-lib)
# Parse version from version header file and store it into
# WSREP_LIB_VERSION.
file (READ "include/wsrep/version.hpp" ver)
string(REGEX MATCH "WSREP_LIB_VERSION_MAJOR ([0-9]*)" _ ${ver})
set(ver_major ${CMAKE_MATCH_1})
file (READ "include/wsrep/version.hpp" ver)
string(REGEX MATCH "WSREP_LIB_VERSION_MINOR ([0-9]*)" _ ${ver})
set(ver_minor ${CMAKE_MATCH_1})
file (READ "include/wsrep/version.hpp" ver)
string(REGEX MATCH "WSREP_LIB_VERSION_PATCH ([0-9]*)" _ ${ver})
set(ver_patch ${CMAKE_MATCH_1})
set(WSREP_LIB_VERSION "${ver_major}.${ver_minor}.${ver_patch}")
message(STATUS "Wsrep-lib version: ${WSREP_LIB_VERSION}")
if (POLICY CMP0048)
cmake_policy(SET CMP0048 NEW)
project(wsrep-lib VERSION ${WSREP_LIB_VERSION})
else()
project(wsrep-lib)
endif()
include(CheckIncludeFile)
# Options