From: Ricardo Neri Date: Sat, 11 Jul 2015 00:41:03 +0000 (-0700) Subject: bootimg.bbclass:iso: determine the -iso-level only if there is a rootfs X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~29435 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=57064ac9ccd8a3783789d11feb5a51351cd924bf;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git bootimg.bbclass:iso: determine the -iso-level only if there is a rootfs It may be possible that some bootable images do not use a rootfs; this may be the case if the bootable image utilize only an initrd for all its needs. If there is not rootfs, the size calculation will fail. Furthermore, given that the iso9660 conformance level is determined using the size of rootfs, it makes sense to not make the calculation if there is not such rootfs. Signed-off-by: Ricardo Neri Signed-off-by: Richard Purdie --- diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass index ebc927edc7e..5adcacc0f37 100644 --- a/meta/classes/bootimg.bbclass +++ b/meta/classes/bootimg.bbclass @@ -142,11 +142,14 @@ build_iso() { # when it exceeds 3.8GB, the specification is 4G - 1 bytes, we need # leave a few space for other files. mkisofs_iso_level="" - rootfs_img_size=`stat -c '%s' ${ISODIR}/rootfs.img` - # 4080218931 = 3.8 * 1024 * 1024 * 1024 - if [ $rootfs_img_size -gt 4080218931 ]; then - bbnote "${ISODIR}/rootfs.img execeeds 3.8GB, using '-iso-level 3' for mkisofs" - mkisofs_iso_level="-iso-level 3" + + if [ -n "${ROOTFS}" ] && [ -s "${ROOTFS}" ]; then + rootfs_img_size=`stat -c '%s' ${ISODIR}/rootfs.img` + # 4080218931 = 3.8 * 1024 * 1024 * 1024 + if [ $rootfs_img_size -gt 4080218931 ]; then + bbnote "${ISODIR}/rootfs.img execeeds 3.8GB, using '-iso-level 3' for mkisofs" + mkisofs_iso_level="-iso-level 3" + fi fi if [ "${PCBIOS}" = "1" ] && [ "${EFI}" != "1" ] ; then