summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2024-02-23 11:07:56 +0100
committerGitHub <noreply@github.com>2024-02-23 11:07:56 +0100
commit0ace2560eaaf459246ee39f70afe712443e1068a (patch)
treefdfbc096686e0adc21cccb236f5db4d33ffb4a53 /tools
parentsd-dhcp,sd-ndisc: drop mistakenly set copyright (diff)
parentmeson: Decouple the version tag from the vcs tag (diff)
downloadsystemd-0ace2560eaaf459246ee39f70afe712443e1068a.tar.xz
systemd-0ace2560eaaf459246ee39f70afe712443e1068a.zip
Merge pull request #31352 from DaanDeMeyer/versioning
Rework meson-vcs-tag.sh
Diffstat (limited to 'tools')
-rwxr-xr-xtools/meson-vcs-tag.sh42
1 files changed, 0 insertions, 42 deletions
diff --git a/tools/meson-vcs-tag.sh b/tools/meson-vcs-tag.sh
deleted file mode 100755
index 16cf11007d..0000000000
--- a/tools/meson-vcs-tag.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: LGPL-2.1-or-later
-
-set -u
-set -o pipefail
-
-dir="${1:-.}"
-version_tag="${2:-}"
-
-if [ -n "${version_tag}" ]; then
- # If -Dversion_tag= was used, just use that without further changes.
- echo "${version_tag}"
-else
- read -r project_version <"${dir}/meson.version"
-
- # Check that we have either .git/ (a normal clone) or a .git file (a work-tree)
- # and that we don't get confused if a tarball is extracted in a higher-level
- # git repository.
- #
- # If the working tree has no tags (CI builds), the first git-describe will fail
- # and we fall back to project_version-commitid instead.
-
- c=''
- if [ -e "${dir}/.git" ]; then
- c="$(git -C "$dir" describe --abbrev=7 --dirty=^ 2>/dev/null)"
- if [ -n "$c" ]; then
- # git describe uses the most recent tag. However, for development versions (e.g. v256~devel), the
- # most recent tag will be v255 as there is no tag for development versions. To deal with this, we
- # replace the tag with the project version instead.
- c="${project_version}-${c#*-}"
- else
- # This call might still fail with permission issues
- suffix="$(git -C "$dir" describe --always --abbrev=7 --dirty=^ 2>/dev/null)"
- [ -n "$suffix" ] && c="${project_version}-${suffix}"
- fi
- fi
- [ -z "$c" ] && c="${project_version}"
- # Replace any hyphens with carets which are allowed in versions by pacman whereas hyphens are not. Git
- # versions with carets will also sort higher than their non-git version counterpart both in pacman
- # versioning and in version format specification versioning.
- echo "$c" | sed 's/^v//; s/-/^/g'
-fi