dist: sanitize usage of unamer

Upstream: no

Clean up how unamer is being formatted, ensure it's set in
lib-version.sh and else where can simply use it.

Signed-off-by: Kairui Song <kasong@tencent.com>
This commit is contained in:
Kairui Song 2024-04-17 16:37:13 +08:00 committed by frankjpliu
parent e9ee1b9837
commit afd9d2d0b6
6 changed files with 18 additions and 18 deletions

View File

@ -8,10 +8,6 @@
. "$(dirname "$(realpath "$0")")/lib-version.sh"
prepare_kernel_ver "$@"
KERNEL_UNAMER="$KERNEL_UNAMER_BASE.<dist>.<arch>"
if [[ $KERNEL_UNAMER_FORCE ]]; then
KERNEL_UNAMER="$KERNEL_UNAMER_FORCE"
fi
# If tag is not recognized, prepare_kernel_ver will version it as snapshot
# use this as an indicator of invalid tag

View File

@ -115,8 +115,7 @@ _gen_kerver_spec() {
%define kernel_relver $KERNEL_RELVER
%define kernel_variant ${LOCALVERSION:-"%{nil}"}
%define kernel_tarname $KERNEL_TARNAME
%define kernel_unamer_base $KERNEL_UNAMER_BASE
%define kernel_unamer_force ${KERNEL_UNAMER_FORCE:-"%{nil}"}
%define kernel_unamer $KERNEL_UNAMER
%define rpm_name $KERNEL_NAME
%define rpm_vendor $VENDOR_CAPITALIZED
%define rpm_url $URL

View File

@ -17,7 +17,7 @@ case $2 in
nvr )
echo "$KERNEL_NAME"-"$KERNEL_MAJVER"-"$KERNEL_RELVER"
;;
* | unamer )
* )
echo "$KERNEL_UNAMER"
;;
esac

View File

@ -115,6 +115,7 @@ KGIT_SUB_RELEASE_NUM=
### The formal kernel version and release
# Simulate base part of uname output, which is always "$KVERSION.$KPATCHLEVEL.$KSUBLEVEL$KEXTRAVERSION"
export KERNEL_UNAMER=
# The full `uname -r` will also include <dist>.<arch>[+<flavor>]
export KERNEL_UNAMER_BASE=
# Force set a value for `uname -r`, see KFORCEUNAMER.
@ -563,6 +564,15 @@ _prepare_kernel_ver() {
fi
}
# Get `uname -r` output before bulid, for preview
_prepare_kernel_unamer() {
# <dist> <arch> and <variant> will be determinded in kernel.template.spec
KERNEL_UNAMER="$KERNEL_UNAMER_BASE%{?dist}.%{_target_cpu}%{kernel_variant}"
if [[ $KERNEL_UNAMER_FORCE ]]; then
KERNEL_UNAMER="$KERNEL_UNAMER_FORCE"
fi
}
### Generate a RPM friendly version based on kernel tag and commit info
#
# Examples:
@ -663,6 +673,8 @@ prepare_kernel_ver() {
KERNEL_UNAMER_FORCE="$KERNEL_UNAMER_FORCE+$localversion"
fi
fi
_prepare_kernel_unamer
}
### Generate formal release version based on kernel tag and commit info
@ -712,7 +724,7 @@ prepare_next_kernel_ver() {
KERNEL_MAJVER="$KVERSION.$KPATCHLEVEL.$KSUBLEVEL"
KERNEL_RELVER="$krelease"
KERNEL_UNAMER="$KERNEL_MAJVER-$KERNEL_RELVER${KDIST:+.$KDIST}"
_prepare_kernel_unamer
}
# Get next formal kernel version based on previous git tag
@ -739,5 +751,5 @@ prepare_next_sub_kernel_ver() {
KERNEL_MAJVER="$KVERSION.$KPATCHLEVEL.$KSUBLEVEL"
KERNEL_RELVER="$krelease"
KERNEL_UNAMER="$KERNEL_MAJVER-$KERNEL_RELVER${KDIST:+.$KDIST}"
_prepare_kernel_unamer
}

View File

@ -34,7 +34,7 @@ fi
AUTHOR="$AUTHOR_NAME <$AUTHOR_MAIL>"
RELEASE_VERSION="$KERNEL_MAJVER-$KERNEL_RELVER"
TAG_VERSION="$KERNEL_UNAMER_BASE"
TAG_VERSION="$KERNEL_MAJVER-$KERNEL_RELVER${KDIST:+.$KDIST}"
CHANGELOG_HDR="* $(date +"%a %b %e %Y") $AUTHOR - $RELEASE_VERSION"
CHANGELOG="$(echo "$GITLOG" | sed -E "s/^\S+/-/g")"

View File

@ -8,20 +8,13 @@
# %%{kernel_relver}: Kernel RPM package release, eg. 2207.1, 0.20211115git1135ec008ef3.rc0.2207, 0009.11
# %%{kernel_variant}: Kernel RPM package release, eg. 2207.1, 0.20211115git1135ec008ef3.rc0.2207, 0009.11
# %%{kernel_tarname} Kernel Source tar's basename and prefix after untar, eg. 5.16.0.20211115git1135ec008ef3.rc0.2207
# %%{kernel_unamer_base}: base part of `uname -r` output, used to generate %%kernel_unamer, needed by scriptlets so prepare it early. eg. 5.18.19-2207.2.1.tks, 5.18.19-2207.2.1.tks+debug, 5.4.119-1-0009.1
# %%{kernel_unamer_force}: force use a unamer, usually for historical reason.
# %%{kernel_unamer}: Define `uname -r` output, needed by scriptlets so prepare it early. (KVER.%{{?dist}}.%{{_target_cpu}}%{{kernel_variant}})
# %%{rpm_name}: Kernel RPM package name, eg. kernel, kernel-tlinux4, kernel-stream kernel-stream-debug
# %%{rpm_vendor}: RPM package vendor
# %%{rpm_url}: RPM url
# TODO: kernel_unamer don't have distro mark
{{VERSIONSPEC}}
%if "%{kernel_unamer_force}" == ""
%define kernel_unamer %{kernel_unamer_base}%{?dist}.%{_target_cpu}%{kernel_variant}
%else
%define kernel_unamer %{kernel_unamer_force}
%endif
# This section defines following value:
# %%{kernel_arch}
# Since kernel arch name differs from many other definations, this will insert a script snip