commit 994b65bc7731c5acc0d260f4fbeee754213968be
parent 001919c1d0e4fee6e7d21fce54cd5406da33a62f
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Fri, 22 May 2026 11:28:15 +0200
Fix #11423
Diffstat:
4 files changed, 39 insertions(+), 3 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -7,6 +7,7 @@
*.rej
.deps/
.libs/
+.version
Makefile
aclocal.m4
autom4te.cache/
diff --git a/meson-dist-script b/meson-dist-script
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+cp $MESON_SOURCE_ROOT/.version $MESON_DIST_ROOT
diff --git a/meson.build b/meson.build
@@ -3,7 +3,7 @@ project(
'c',
license: 'AGPLv3',
meson_version: '>=1.1.0',
- version: '1.5.12',
+ version: run_command('sh', 'scripts/get_version.sh', check: true).stdout().strip(),
)
cc = meson.get_compiler('c')
@@ -321,7 +321,6 @@ if not get_option('only-doc')
private_config.set_quoted('PACKAGE_VERSION', meson.project_version())
# Compatibility. Used in source.
private_config.set_quoted('VERSION', meson.project_version())
- private_config.set_quoted('VCS_VERSION', 'mesonbuild')
private_config.set_quoted('PACKAGE_BUGREPORT', 'taler@gnu.org')
configure_file(output: 'sync_config.h', configuration: private_config)
configuration_inc = include_directories('.')
@@ -357,5 +356,5 @@ run_target(
env: {'PACKAGE_VERSION': meson.project_version()},
)
-#meson.add_dist_script('meson-dist-script')
+meson.add_dist_script('meson-dist-script')
diff --git a/scripts/get_version.sh b/scripts/get_version.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+# Gets the version number from git, or from the contents of .version
+VERSION=
+if test -f ".version"; then
+ VERSION=$(cat .version)
+fi
+if [ -e ./.git ]; then
+ # With sparse checkouts, we have a .git dir but possibly no tags
+ gitver=$(git describe --tags 2>/dev/null || echo no-git-version)
+ if test "$gitver" != "no-git-version"; then
+ VERSION=${gitver#v}
+ echo "$VERSION" > .version
+ fi
+fi
+if test "x$VERSION" = "x"; then
+ VERSION="unknown"
+fi
+case $1 in
+"--major")
+ echo "$VERSION" | sed 's/\(^[0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1/g'
+ ;;
+"--minor")
+ echo "$VERSION" | sed 's/\(^[0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\2/g'
+ ;;
+"--micro")
+ echo "$VERSION" | sed 's/\(^[0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\3/g'
+ ;;
+"--git")
+ echo "$VERSION" | sed 's/\(^[0-9]*\)\.\([0-9]*\)\.\([0-9]*\)\(.*\)/\4/g'
+ ;;
+*)
+ echo "$VERSION"
+esac