Files
mpv/common/meson.build
Kacper Michajłow f88f423829 meson: consider only 'v0.*' tags when computing the version
This allow creating other tags on the repository and don't interfere
with version string generated.
2026-06-05 07:21:58 +02:00

34 lines
1011 B
Meson

git = find_program('git', required: false)
if not git.found()
git = ''
endif
generate_ver = '''
#!/usr/bin/env python3
import os
import sys
from subprocess import DEVNULL, CalledProcessError, check_output
if not sys.argv[1]:
sys.exit(1)
git_cmd = [sys.argv[1], "--git-dir=" + os.path.join(sys.argv[2], ".git"),
"--work-tree=" + sys.argv[2]]
describe_cmd = git_cmd + ["describe", "--abbrev=9", "--tags", "--dirty", "--match", "v0.*"]
try:
ver = check_output(describe_cmd, stderr=DEVNULL, encoding="UTF-8")
except CalledProcessError:
describe_cmd += ["--always"]
ver = check_output(describe_cmd, stderr=DEVNULL, encoding="UTF-8")
ver = f"v{sys.argv[3]}-dev-g{ver}"
sys.stdout.write(ver)
'''
version_h = vcs_tag(
command: [python, '-c', generate_ver, git, source_root, meson.project_version().replace('-UNKNOWN', '')],
fallback: 'v' + meson.project_version(),
input: 'version.h.in',
output: 'version.h',
replace_string: '@VERSION@',
)
sources += version_h