scripts/kernel_bump: Allow for migrating only configuration files

In some cases, we want to only migrate configuration files, e.g. if the
kernel was bumped already. Lets add a flag for this case to offer
flexibility. By default we will migrate configuration flags as before.

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
This commit is contained in:
Olliver Schinagl 2024-03-18 13:10:31 +01:00 committed by Robert Marko
parent 9f0cc3eb11
commit 9e6c4392f8

View File

@ -54,6 +54,7 @@ usage()
{
echo "Usage: ${0}"
echo 'Helper script to bump the target kernel version, whilst keeping history.'
echo ' -c Migrate config files (e.g. subtargets) only.'
echo " -p Optional Platform name (e.g. 'ath79' [PLATFORM_NAME]"
echo " -s Source version of kernel (e.g. 'v6.1' [SOURCE_VERSION])"
echo " -t Target version of kernel (e.g. 'v6.6' [TARGET_VERSION]')"
@ -113,22 +114,24 @@ bump_kernel()
git switch --force-create '__openwrt_kernel_files_mover'
for _path in "${_target_dir}/"*; do
if [ ! -s "${_path}" ] || \
[ "${_path}" = "${_path%%"-${source_version}"}" ]; then
continue
fi
if [ "${config_only:-false}" != 'true' ]; then
for _path in "${_target_dir}/"*; do
if [ ! -e "${_path}" ] || \
[ "${_path}" = "${_path%%"-${source_version}"}" ]; then
continue
fi
_target_path="${_path%%"-${source_version}"}-${target_version}"
if [ -s "${_target_path}" ]; then
e_err "Target '${_target_path}' already exists!"
exit 1
fi
_target_path="${_path%%"-${source_version}"}-${target_version}"
if [ -e "${_target_path}" ]; then
e_err "Target '${_target_path}' already exists!"
exit 1
fi
git mv \
"${_path}" \
"${_target_path}"
done
git mv \
"${_path}" \
"${_target_path}"
done
fi
find "${_target_dir}" -iname "config-${source_version}" | while read -r _config; do
_path="${_config%%"/config-${source_version}"}"
@ -182,8 +185,11 @@ check_requirements()
main()
{
while getopts 'hp:s:t:' _options; do
while getopts 'chp:s:t:' _options; do
case "${_options}" in
'c')
config_only='true'
;;
'h')
usage
exit 0