summaryrefslogtreecommitdiffstats
path: root/meson.build
diff options
context:
space:
mode:
authorDaan De Meyer <daan.j.demeyer@gmail.com>2024-07-19 13:05:11 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2024-07-22 12:04:40 +0200
commit944faf65986f36d7ed3a4ba5cb4cc763011f0f77 (patch)
tree22eed0f654453f5e433d4958c31c98909cffd0c1 /meson.build
parentzsh/_networkctl: remove duplicated argument for completion (#31926) (diff)
downloadsystemd-944faf65986f36d7ed3a4ba5cb4cc763011f0f77.tar.xz
systemd-944faf65986f36d7ed3a4ba5cb4cc763011f0f77.zip
Make vcs-tag do something useful for non-developer mode as well
When building packages of arbitrary commits of systemd-stable, distributors might want to include a git sha of the exact commit they're on. Let's extend vcs-tag a little to make this possible. If we're on a commit matching a tag, don't generate a git sha at all. If we're not on a commit matching a tag, generate a vcs tag as usually. However, if we're not in developer mode, don't append a '^' if the tree is dirty to accomodate package builds applying various patches to the tree which shouldn't be considered as "dirty" edits.
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build5
1 files changed, 1 insertions, 4 deletions
diff --git a/meson.build b/meson.build
index e0bbb6a908..45030d29b0 100644
--- a/meson.build
+++ b/meson.build
@@ -1994,14 +1994,11 @@ endif
conf.set_quoted('VERSION_TAG', version_tag)
vcs_tag = get_option('vcs-tag')
-command = ['sh', '-c',
- vcs_tag and fs.exists(project_source_root / '.git') ?
- 'echo "-g$(git -C . describe --abbrev=7 --match="" --always --dirty=^)"' : ':']
version_h = vcs_tag(
input : 'src/version/version.h.in',
output : 'version.h',
fallback : '',
- command : command,
+ command : [vcs_tag ? 'tools/vcs-tag.sh' : 'true', get_option('mode')],
)
shared_lib_tag = get_option('shared-lib-tag')