I jumped the gun on the previous patch, more careful examination
demonstrated that it has to be a little bit more complicated than
that. Another patch attached.
--
Dmitry Borodaenko
--- 10_linux.bak 2010-10-25 13:30:54.792624060 +0300
+++ 10_linux 2010-10-25 13:57:14.151034678 +0300
@@ -79,12 +79,12 @@
printf '%s\n' "${prepare_boot_cache}"
cat << EOF
echo '$(printf "$(gettext_quoted "Loading Linux %s ...")" ${version})'
- linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
+ linux `make_system_path_relative_to_its_root $linux` root=${linux_root_device_thisversion} ro ${args}
EOF
if test -n "${initrd}" ; then
cat << EOF
echo '$(gettext_quoted "Loading initial ramdisk ...")'
- initrd ${rel_dirname}/${initrd}
+ initrd `make_system_path_relative_to_its_root ${dirname}/${initrd}`
EOF
fi
cat << EOF
@@ -102,7 +102,6 @@
echo "Found linux image: $linux" >&2
basename=`basename $linux`
dirname=`dirname $linux`
- rel_dirname=`make_system_path_relative_to_its_root $dirname`
version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
alt_version=`echo $version | sed -e "s,\.old$,,g"`
linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"