From 5aa0a8800dc3849d9fa1d3b6995fcce7afb70a11 Mon Sep 17 00:00:00 2001 From: Paul HENRYS Date: Wed, 10 Dec 2025 10:51:27 +0100 Subject: [PATCH] scripts: gen-secure-initramfs: convert absolute symlinks into relative ones prpl CI enables CONFIG_IB which runs imagebuilder. Imagebuilder was failing when trying to copy targets from symlink whose path was absolute. The solution is to convert absolute symlinks into relative ones when creating the secure initramfs. Fixes: PCF-1893 Tracked-by: FEAT-29 Signed-off-by: Paul HENRYS --- scripts/gen-secure-initramfs.sh | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/scripts/gen-secure-initramfs.sh b/scripts/gen-secure-initramfs.sh index 453657923e..7b78bb52c6 100755 --- a/scripts/gen-secure-initramfs.sh +++ b/scripts/gen-secure-initramfs.sh @@ -104,9 +104,16 @@ function find_binary { function import_file_symlink { - import_file_other "$1" + mkdir -p `dirname $TMP_FOLDER$1` target=`readlink "$ROOTFS_FOLDER$1"` - [[ "$target" == /* ]] || target=`dirname "$1"`/$target + if [[ "$target" == /* ]] ; then + # Create a relative symlink + reltarget=$(realpath --relative-to="$(dirname "$ROOTFS_FOLDER$1")" "$ROOTFS_FOLDER$target") + ln -sf "$reltarget" "$TMP_FOLDER$1" + else + cp -pPTr "$ROOTFS_FOLDER$1" "$TMP_FOLDER$1" + target=`dirname "$1"`/$target + fi import_file "$target" }