summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Liu <net147@gmail.com>2013-05-09 13:24:03 +1000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-16 00:09:46 +0300
commitf5b103ff47d6137326618328fa5803f0963e50f4 (patch)
tree52ad13f1e4e42e934e2115e0808e179079eedc9e
parentbadd71825352f4a2aaf40707154f4d5f506a45f6 (diff)
downloadpoky-f5b103ff47d6137326618328fa5803f0963e50f4.tar.gz
boot-directdisk: Scope HDDDIR and HDDIMG variables to avoid conflicts
These variables should not be shared with other image classes. The bootimg class also has an HDDDIR variable that could be overwritten if executing concurrently in the same image recipe. (From OE-Core rev: 94c83fa26af104d28aa4e6951bcb109bb0c82265) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/boot-directdisk.bbclass25
1 files changed, 12 insertions, 13 deletions
diff --git a/meta/classes/boot-directdisk.bbclass b/meta/classes/boot-directdisk.bbclass
index a3c9a876c1..31690432dd 100644
--- a/meta/classes/boot-directdisk.bbclass
+++ b/meta/classes/boot-directdisk.bbclass
@@ -28,9 +28,6 @@ do_bootdirectdisk[depends] += "dosfstools-native:do_populate_sysroot \
28PACKAGES = " " 28PACKAGES = " "
29EXCLUDE_FROM_WORLD = "1" 29EXCLUDE_FROM_WORLD = "1"
30 30
31HDDDIR = "${S}/hdd/boot"
32HDDIMG = "${S}/hdd.image"
33
34BOOTDD_VOLUME_ID ?= "boot" 31BOOTDD_VOLUME_ID ?= "boot"
35BOOTDD_EXTRA_SPACE ?= "16384" 32BOOTDD_EXTRA_SPACE ?= "16384"
36 33
@@ -43,14 +40,16 @@ SYSLINUX_TIMEOUT ?= "10"
43inherit syslinux 40inherit syslinux
44 41
45build_boot_dd() { 42build_boot_dd() {
43 HDDDIR="${S}/hdd/boot"
44 HDDIMG="${S}/hdd.image"
46 IMAGE=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hdddirect 45 IMAGE=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.hdddirect
47 46
48 install -d ${HDDDIR} 47 install -d $HDDDIR
49 install -m 0644 ${STAGING_KERNEL_DIR}/bzImage ${HDDDIR}/vmlinuz 48 install -m 0644 ${STAGING_KERNEL_DIR}/bzImage $HDDDIR/vmlinuz
50 install -m 0644 ${S}/syslinux.cfg ${HDDDIR}/syslinux.cfg 49 install -m 0644 ${S}/syslinux.cfg $HDDDIR/syslinux.cfg
51 install -m 444 ${STAGING_DATADIR}/syslinux/ldlinux.sys ${HDDDIR}/ldlinux.sys 50 install -m 444 ${STAGING_DATADIR}/syslinux/ldlinux.sys $HDDDIR/ldlinux.sys
52 51
53 BLOCKS=`du -bks ${HDDDIR} | cut -f 1` 52 BLOCKS=`du -bks $HDDDIR | cut -f 1`
54 BLOCKS=`expr $BLOCKS + ${BOOTDD_EXTRA_SPACE}` 53 BLOCKS=`expr $BLOCKS + ${BOOTDD_EXTRA_SPACE}`
55 54
56 # Ensure total sectors is an integral number of sectors per 55 # Ensure total sectors is an integral number of sectors per
@@ -59,11 +58,11 @@ build_boot_dd() {
59 # done in blocks, thus the mod by 16 instead of 32. 58 # done in blocks, thus the mod by 16 instead of 32.
60 BLOCKS=$(expr $BLOCKS + $(expr 16 - $(expr $BLOCKS % 16))) 59 BLOCKS=$(expr $BLOCKS + $(expr 16 - $(expr $BLOCKS % 16)))
61 60
62 mkdosfs -n ${BOOTDD_VOLUME_ID} -S 512 -C ${HDDIMG} $BLOCKS 61 mkdosfs -n ${BOOTDD_VOLUME_ID} -S 512 -C $HDDIMG $BLOCKS
63 mcopy -i ${HDDIMG} -s ${HDDDIR}/* ::/ 62 mcopy -i $HDDIMG -s $HDDDIR/* ::/
64 63
65 syslinux ${HDDIMG} 64 syslinux $HDDIMG
66 chmod 644 ${HDDIMG} 65 chmod 644 $HDDIMG
67 66
68 ROOTFSBLOCKS=`du -Lbks ${ROOTFS} | cut -f 1` 67 ROOTFSBLOCKS=`du -Lbks ${ROOTFS} | cut -f 1`
69 TOTALSIZE=`expr $BLOCKS + $ROOTFSBLOCKS` 68 TOTALSIZE=`expr $BLOCKS + $ROOTFSBLOCKS`
@@ -83,7 +82,7 @@ build_boot_dd() {
83 82
84 OFFSET=`expr $END2 / 512` 83 OFFSET=`expr $END2 / 512`
85 dd if=${STAGING_DATADIR}/syslinux/mbr.bin of=$IMAGE conv=notrunc 84 dd if=${STAGING_DATADIR}/syslinux/mbr.bin of=$IMAGE conv=notrunc
86 dd if=${HDDIMG} of=$IMAGE conv=notrunc seek=1 bs=512 85 dd if=$HDDIMG of=$IMAGE conv=notrunc seek=1 bs=512
87 dd if=${ROOTFS} of=$IMAGE conv=notrunc seek=$OFFSET bs=512 86 dd if=${ROOTFS} of=$IMAGE conv=notrunc seek=$OFFSET bs=512
88 87
89 cd ${DEPLOY_DIR_IMAGE} 88 cd ${DEPLOY_DIR_IMAGE}