From e79f0db0745625b35dd83483747e486d08eebfde Mon Sep 17 00:00:00 2001 From: Alex Kiernan Date: Wed, 17 Apr 2019 18:31:16 +0000 Subject: uboot-sign: Fix build when UBOOT_DTB_BINARY is empty When UBOOT_DTB_BINARY is empty and because the code now changes directory into ${B}, the test for the existence becomes `[ -f ]` which succeeds and subsequently the install fails. Reorder the code so it's clear that UBOOT_DTB_BINARY empty is an expected configuration and then quote UBOOT_DTB_BINARY everywhere so no one trips over this again. Fixes: bacb59079eb6 ("uboot-sign: add support for different u-boot configurations") Signed-off-by: Alex Kiernan Signed-off-by: Richard Purdie --- meta/classes/uboot-sign.bbclass | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'meta/classes/uboot-sign.bbclass') diff --git a/meta/classes/uboot-sign.bbclass b/meta/classes/uboot-sign.bbclass index 2da43655aa..6385a06c13 100644 --- a/meta/classes/uboot-sign.bbclass +++ b/meta/classes/uboot-sign.bbclass @@ -46,12 +46,12 @@ UBOOT_NODTB_SYMLINK ?= "u-boot-nodtb-${MACHINE}.${UBOOT_SUFFIX}" UBOOT_PN = "${@d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot'}" concat_dtb_helper() { - if [ -e ${UBOOT_DTB_BINARY} ]; then + if [ -e "${UBOOT_DTB_BINARY}" ]; then ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_BINARY} ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_SYMLINK} fi - if [ -f ${UBOOT_NODTB_BINARY} ]; then + if [ -f "${UBOOT_NODTB_BINARY}" ]; then install ${UBOOT_NODTB_BINARY} ${DEPLOYDIR}/${UBOOT_NODTB_IMAGE} ln -sf ${UBOOT_NODTB_IMAGE} ${UBOOT_NODTB_SYMLINK} ln -sf ${UBOOT_NODTB_IMAGE} ${UBOOT_NODTB_BINARY} @@ -67,13 +67,13 @@ concat_dtb_helper() { elif [ -e "${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}" -a -e "$deployed_uboot_dtb_binary" ]; then cd ${DEPLOYDIR} cat ${UBOOT_NODTB_IMAGE} $deployed_uboot_dtb_binary | tee ${UBOOT_BINARY} > ${UBOOT_IMAGE} - elif [ -n "${UBOOT_DTB_BINARY}" ]; then + else bbwarn "Failure while adding public key to u-boot binary. Verified boot won't be available." fi } concat_dtb() { - if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" ]; then + if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then mkdir -p ${DEPLOYDIR} if [ -n "${UBOOT_CONFIG}" ]; then for config in ${UBOOT_MACHINE}; do @@ -90,19 +90,19 @@ concat_dtb() { # Install UBOOT_DTB_BINARY to datadir, so that kernel can use it for # signing, and kernel will deploy UBOOT_DTB_BINARY after signs it. install_helper() { - if [ -f ${UBOOT_DTB_BINARY} ]; then + if [ -f "${UBOOT_DTB_BINARY}" ]; then install -d ${D}${datadir} # UBOOT_DTB_BINARY is a symlink to UBOOT_DTB_IMAGE, so we # need both of them. install ${UBOOT_DTB_BINARY} ${D}${datadir}/${UBOOT_DTB_IMAGE} ln -sf ${UBOOT_DTB_IMAGE} ${D}${datadir}/${UBOOT_DTB_BINARY} - elif [ -n "${UBOOT_DTB_BINARY}" ]; then + else bbwarn "${UBOOT_DTB_BINARY} not found" fi } do_install_append() { - if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" ]; then + if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then if [ -n "${UBOOT_CONFIG}" ]; then for config in ${UBOOT_MACHINE}; do cd ${B}/${config} -- cgit 1.2.3-korg