2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-22 09:57:41 +00:00

[#3731] bump-lib-versions.sh now updates meson.build files

This commit is contained in:
Andrei Pavel 2025-02-24 07:52:59 +02:00
parent ebb49b9176
commit 5e33073c1e
No known key found for this signature in database
GPG Key ID: D4E804481939CB21

View File

@ -1,6 +1,6 @@
#!/bin/sh
# Copyright (C) 2020-2024 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2020-2025 Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
@ -120,22 +120,23 @@ middle=$(echo "${new_release_tag}" | cut -d '-' -f 2 | cut -d '.' -f 2)
minor=$(echo "${new_release_tag}" | cut -d '-' -f 2 | cut -d '.' -f 3)
new_hooks_version="${major}$(printf '%02d' "${middle}")$(printf '%02d' "${minor}")"
sed -i "s/^\/\/ Version .* of the hooks framework, set for Kea .*/\/\/ Version ${new_hooks_version} of the hooks framework, set for $(echo "${new_release_tag}" | tr '-' ' ')/" "src/lib/hooks/hooks.h"
sed -i "s/KEA_HOOKS_VERSION.*/KEA_HOOKS_VERSION = ${new_hooks_version};/" "src/lib/hooks/hooks.h"
sed -i'' "s/^\/\/ Version .* of the hooks framework, set for Kea .*/\/\/ Version ${new_hooks_version} of the hooks framework, set for $(echo "${new_release_tag}" | tr '-' ' ')/" "src/lib/hooks/hooks.h"
sed -i'' "s/KEA_HOOKS_VERSION.*/KEA_HOOKS_VERSION = ${new_hooks_version};/" "src/lib/hooks/hooks.h"
for lib in $(git diff --name-only "${old_release_tag}" src/lib | cut -d '/' -f 3- | grep -v test | sed "s/\/[^\/]*$//" | sort -uV); do
# Skip over files and anything that is not a directory.
if test ! -d "src/lib/${lib}"; then
continue
fi
# Skip over directories that do not contain Makefile.am.
if test ! -f "src/lib/${lib}/Makefile.am"; then
# Skip over directories that do not contain a meson.build file.
if test ! -f "src/lib/${lib}/meson.build"; then
continue
fi
old_version=$(grep -- '-version-info' "src/lib/${lib}/Makefile.am" | tr -s ' ' | rev | cut -d ' ' -f 1 | rev | cut -d ':' -f 1)
old_version=$(grep -Eo "version: '[0-9.]+'," "src/lib/${lib}/meson.build" | grep -Eo '[0-9.]+' | cut -d '.' -f 1)
new_version=$((old_version + increment))
sed -i "s/version-info .*/version-info ${new_version}:0:0/" "src/lib/${lib}/Makefile.am"
sed -i'' "s/version: '.*',/version: '${new_version}.0.0',/" "src/lib/${lib}/meson.build"
sed -i'' "s/version-info .*/version-info ${new_version}:0:0/" "src/lib/${lib}/Makefile.am"
done
if ! ${is_new_tag_stable_release} && ${is_old_tag_stable_release}; then
@ -144,14 +145,15 @@ if ! ${is_new_tag_stable_release} && ${is_old_tag_stable_release}; then
if test ! -d "src/lib/${lib}"; then
continue
fi
# Skip over directories that do not contain Makefile.am.
if test ! -f "src/lib/${lib}/Makefile.am"; then
# Skip over directories that do not contain a meson.build file.
if test ! -f "src/lib/${lib}/meson.build"; then
continue
fi
old_version=$(grep -- '-version-info' "src/lib/${lib}/Makefile.am" | tr -s ' ' | rev | cut -d ' ' -f 1 | rev | cut -d ':' -f 1)
old_version=$(grep -Eo "version: '[0-9.]+'," "src/lib/${lib}/meson.build" | grep -Eo '[0-9.]+' | cut -d '.' -f 1)
new_version=$((old_version + increment_extra))
sed -i "s/version-info .*/version-info ${new_version}:0:0/" "src/lib/${lib}/Makefile.am"
sed -i'' "s/version: '.*',/version: '${new_version}.0.0',/" "src/lib/${lib}/meson.build"
sed -i'' "s/version-info .*/version-info ${new_version}:0:0/" "src/lib/${lib}/Makefile.am"
done
fi