Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@xxxxxxxxxxxx> --- defaultenv-2/base/boot/nfs | 55 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 52 insertions(+), 3 deletions(-) diff --git a/defaultenv-2/base/boot/nfs b/defaultenv-2/base/boot/nfs index 248f975..a33a21c 100644 --- a/defaultenv-2/base/boot/nfs +++ b/defaultenv-2/base/boot/nfs @@ -43,6 +43,18 @@ if [ -n "${global.dhcp.bootfile}" ]; then mount -t nfs "${eth0.serverip}:${mnt}" "${path}" global.bootm.image="${path}/${bootfile}" + + if [ -L "${global.bootm.image}" ]; then + readlink -f "${global.bootm.image}" bootfile_symlink + + dirname -V "${bootfile_symlink}" mnt + basename "${bootfile_symlink}" bootfile + + umount "${path}" + mount -t nfs "${eth0.serverip}:${mnt}" "${path}" + + global.bootm.image="${path}/${bootfile}" + fi fi if [ -n "${global.dhcp.oftree_file}" ]; then @@ -61,13 +73,50 @@ if [ -n "${global.dhcp.oftree_file}" ]; then mount -t nfs "${eth0.serverip}:${mnt}" "${path}" global.bootm.oftree="${path}/${bootfile}" + + if [ -L "${global.bootm.oftree}" ]; then + readlink -f "${global.bootm.oftree}" oftree_symlink + + dirname -V "${oftree_symlink}" mnt + basename "${oftree_symlink}" bootfile + + umount "${path}" + mount -t nfs "${eth0.serverip}:${mnt}" "${path}" + + global.bootm.oftree="${path}/${bootfile}" + fi +fi + +if [ ${global.allow_color} = "true" ]; then + blue="\e[1;36m" + normal="\e[0m" fi if [ x${bootp} = x1 ]; then echo "Boot via bootp/dhcp on server ${eth0.serverip}" - [ -n "${global.dhcp.bootfile}" ] && echo "bootm.image => ${global.dhcp.bootfile}" - [ -n "${global.dhcp.oftree_file}" ] && echo "bootm.oftree => ${global.dhcp.oftree_file}" - [ -n "${global.dhcp.rootpath}" ] && echo "nfsroot => ${global.dhcp.rootpath}" + if [ -n "${global.dhcp.bootfile}" ]; then + echo -n "bootm.image => " + if [ "x${bootfile_symlink}" != x ]; then + echo -e -n "${blue}${global.dhcp.bootfile}${normal}" + echo -n " -> ${bootfile_symlink}" + else + echo -n "${global.dhcp.bootfile}" + fi + echo "" + fi + + if [ -n "${global.dhcp.oftree_file}" ]; then + echo "bootm.oftree => " + if [ "x${oftree_symlink}" != x ]; then + echo -e -n "${blue}${global.dhcp.oftree_file}${normal}" + echo -n " -> ${oftree_symlink}" + else + echo -n "${global.dhcp.oftree_file}" + fi + echo "" + fi + + [ -n "${global.dhcp.rootpath}" ] && echo "nfsroot -> ${global.dhcp.rootpath}" fi bootargs-ip -- 1.7.10.4 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox