summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorJoao Henrique Ferreira de Freitas <joaohf@gmail.com>2014-01-22 22:50:14 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-01-23 10:17:37 +0000
commite40123a06294a66f7210ba331180fd969ec5e369 (patch)
treed62357ade4a554a835e99d144763551a613506d6 /meta
parent7b171ed393b179e2b9cebf73019024617bf6a67f (diff)
downloadast2050-yocto-poky-e40123a06294a66f7210ba331180fd969ec5e369.zip
ast2050-yocto-poky-e40123a06294a66f7210ba331180fd969ec5e369.tar.gz
boot-directdisk: fix the support of vmdk
Previous change (086ce22b88f5ef5f75a83119a32c8b3fdcfa296d) broke the creating of vmdk images. This protects shell expansion variables and let dd generate the image to be transformed to vmdk by image-vmdk.class. (From OE-Core rev: 2fe667afbdc6880c377657b5ff27e6db3b6cbe77) Signed-off-by: Joao Henrique Ferreira de Freitas <joaohf@gmail.com> [edit to change the usage of IMAGE_FSTYPE to IS_VMDK] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/boot-directdisk.bbclass18
1 files changed, 8 insertions, 10 deletions
diff --git a/meta/classes/boot-directdisk.bbclass b/meta/classes/boot-directdisk.bbclass
index 3277666..42b3415 100644
--- a/meta/classes/boot-directdisk.bbclass
+++ b/meta/classes/boot-directdisk.bbclass
@@ -61,6 +61,8 @@ DISK_SIGNATURE ?= "${DISK_SIGNATURE_GENERATED}"
SYSLINUX_ROOT ?= "root=/dev/sda2"
SYSLINUX_TIMEOUT ?= "10"
+IS_VMDK = '${@base_contains("IMAGE_FSTYPES", "vmdk", "true", "false", d)}'
+
boot_direct_populate() {
dest=$1
install -d $dest
@@ -88,10 +90,10 @@ build_boot_dd() {
grubefi_hddimg_populate $HDDDIR
fi
- if [ ${IMAGE_FSTYPE} = "vmdk" ]; then
- if [ x${AUTO_SYSLINUXMENU} = x1 ] ; then
+ if [ "${IS_VMDK}" = "true" ]; then
+ if [ "x${AUTO_SYSLINUXMENU}" = "x1" ] ; then
install -m 0644 ${STAGING_DIR}/${MACHINE}/usr/share/syslinux/vesamenu.c32 ${HDDDIR}${SYSLINUXDIR}/vesamenu.c32
- if [ x${SYSLINUX_SPLASH} != x ] ; then
+ if [ "x${SYSLINUX_SPLASH}" != "x" ] ; then
install -m 0644 ${SYSLINUX_SPLASH} ${HDDDIR}${SYSLINUXDIR}/splash.lss
fi
fi
@@ -129,9 +131,7 @@ build_boot_dd() {
parted $IMAGE unit B mkpart primary ext2 ${END2}B ${END3}B
parted $IMAGE set 1 boot on
- if [ ${IMAGE_FSTYPE} != "vmdk" ]; then
- parted $IMAGE print
- fi
+ parted $IMAGE print
awk "BEGIN { printf \"$(echo ${DISK_SIGNATURE} | fold -w 2 | tac | paste -sd '' | sed 's/\(..\)/\\x&/g')\" }" | \
dd of=$IMAGE bs=1 seek=440 conv=notrunc
@@ -141,10 +141,8 @@ build_boot_dd() {
dd if=${STAGING_DATADIR}/syslinux/mbr.bin of=$IMAGE conv=notrunc
fi
- if [ ${IMAGE_FSTYPE} != "vmdk" ]; then
- dd if=$HDDIMG of=$IMAGE conv=notrunc seek=1 bs=512
- dd if=${ROOTFS} of=$IMAGE conv=notrunc seek=$OFFSET bs=512
- fi
+ dd if=$HDDIMG of=$IMAGE conv=notrunc seek=1 bs=512
+ dd if=${ROOTFS} of=$IMAGE conv=notrunc seek=$OFFSET bs=512
cd ${DEPLOY_DIR_IMAGE}
rm -f ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.hdddirect
OpenPOWER on IntegriCloud