mirror of
https://github.com/codership/wsrep-lib.git
synced 2025-07-22 23:21:53 +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:
@ -3,7 +3,28 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
cmake_minimum_required (VERSION 2.8)
|
cmake_minimum_required (VERSION 2.8)
|
||||||
|
|
||||||
|
# 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)
|
project(wsrep-lib)
|
||||||
|
endif()
|
||||||
|
|
||||||
include(CheckIncludeFile)
|
include(CheckIncludeFile)
|
||||||
|
|
||||||
# Options
|
# Options
|
||||||
|
53
include/wsrep/version.hpp
Normal file
53
include/wsrep/version.hpp
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2019 Codership Oy <info@codership.com>
|
||||||
|
*
|
||||||
|
* This file is part of wsrep-lib.
|
||||||
|
*
|
||||||
|
* Wsrep-lib is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* Wsrep-lib is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with wsrep-lib. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef WSREP_VERSION_HPP
|
||||||
|
#define WSREP_VERSION_HPP
|
||||||
|
|
||||||
|
/** @file version.hpp
|
||||||
|
*
|
||||||
|
* Wsrep library version numbers. The versioning follows Semantic
|
||||||
|
* Versioning 2.0.0 (https://semver.org/).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Major version number.
|
||||||
|
*/
|
||||||
|
#define WSREP_LIB_VERSION_MAJOR 1
|
||||||
|
/**
|
||||||
|
* Minor version number.
|
||||||
|
*/
|
||||||
|
#define WSREP_LIB_VERSION_MINOR 0
|
||||||
|
/**
|
||||||
|
* Patch version number.
|
||||||
|
*/
|
||||||
|
#define WSREP_LIB_VERSION_PATCH 0
|
||||||
|
|
||||||
|
// Range of supported wsrep-API versions.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Lowest supported wsrep-API version.
|
||||||
|
*/
|
||||||
|
#define WSREP_LIB_MIN_API_VERSION 26
|
||||||
|
/**
|
||||||
|
* Highest supported wsrep-API version.
|
||||||
|
*/
|
||||||
|
#define WSREP_LIB_MAX_API_VERSION 26
|
||||||
|
|
||||||
|
#endif // WSREP_VERSION_HPP
|
Reference in New Issue
Block a user