From af4026104c56a1933f2b3102724d87187c2c47e0 Mon Sep 17 00:00:00 2001 From: Daniel Mensinger Date: Sun, 30 Jun 2019 16:48:20 +0200 Subject: [PATCH] Extract version from header file --- extract_version.py | 17 +++++++++++++++++ meson.build | 10 ++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100755 extract_version.py diff --git a/extract_version.py b/extract_version.py new file mode 100755 index 00000000..a6f791e9 --- /dev/null +++ b/extract_version.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python3 + +import os +import re + +base_path = os.path.abspath(os.path.dirname(__file__)) +config_h = os.path.join(base_path, 'include', 'spdlog', 'version.h') +data = {'MAJOR': 0, 'MINOR': 0, 'PATCH': 0} +reg = re.compile(r'^\s*#define\s+SPDLOG_VER_([A-Z]+)\s+([0-9]+).*$') + +with open(config_h, 'r') as fp: + for l in fp: + m = reg.match(l) + if m: + data[m.group(1)] = int(m.group(2)) + +print('{}.{}.{}'.format(data['MAJOR'], data['MINOR'], data['PATCH'])) diff --git a/meson.build b/meson.build index 552d0cda..899ba1f4 100644 --- a/meson.build +++ b/meson.build @@ -1,7 +1,13 @@ project('spdlog', ['cpp'], license : 'MIT', - version : '1.3.1', - default_options : ['warning_level=3', 'cpp_std=c++11', 'default_library=static'], + version : run_command(find_program('extract_version.py')).stdout().strip(), + default_options : [ + 'warning_level=3', + 'cpp_std=c++11', + 'default_library=static', + 'buildtype=release', + 'b_colorout=always', + ], ) # ------------------------