project('tinc', 'c',
- version: '1.18pre',
+ version: run_command([find_program('python3'), 'version.py', 'short'], check: true).stdout(),
license: 'GPL-2.0-or-later',
meson_version: '>=0.51',
default_options: [
cpu_family = host_machine.cpu_family()
cc_name = cc.get_id()
+python = find_program('python3')
+if meson_version.version_compare('>=0.55')
+ python_path = python.full_path()
+else
+ python_path = python.path()
+endif
+
cc_defs = ['-D_GNU_SOURCE']
if os_name == 'sunos'
cc_defs += '-D__EXTENSIONS__'
configure_file(output: 'config.h', configuration: cdata)
src_lib_common += vcs_tag(
- command: ['git', 'describe', '--always', '--tags', '--match=release-*'],
+ command: [python_path, src_root / 'version.py'],
fallback: 'unknown',
input: '../version_git.h.in',
output: 'version_git.h',
--- /dev/null
+#!/usr/bin/env python3
+
+from sys import argv, exit
+import subprocess as subp
+
+prefix = "release-"
+
+cmd = [
+ "git",
+ "describe",
+ "--always",
+ "--tags",
+ "--match=" + prefix + "*",
+]
+
+if "short" in argv:
+ cmd.append("--abbrev=0")
+
+result = subp.run(cmd, stdout=subp.PIPE, encoding="utf-8")
+version = result.stdout
+
+if not result.returncode and version and version.startswith(prefix):
+ version = version[len(prefix):].strip()
+
+print(version if version else "unknown", end="")
+exit(not version)