summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorKen Werner <ken.werner@linaro.org>2012-03-06 09:03:06 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-03-08 11:55:34 -0800
commitcddd52a4428ef7b6d57c21a55a2cc51e95fa220f (patch)
tree57022350d2943dba2752089e40c23033297072e0 /meta/classes
parentce342127ff72506dcc1db717feb4c99fb3d69c75 (diff)
downloadpoky-cddd52a4428ef7b6d57c21a55a2cc51e95fa220f.tar.gz
image_types: add IMAGE_ROOTFS_ALIGNMENT
Introduce a new variable called IMAGE_ROOTFS_ALIGNMENT that allows to control the aligment of the size of the rootfs. Its default value is set to 1KiB so that the existing behaviour is not changed. In case the SD card emulation of a QEMU system emulator gets used you may set the alignment to 2MiB. (From OE-Core rev: 99128c209e3de3e9e175eacb3acf0f06857043fe) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/image_types.bbclass12
1 files changed, 11 insertions, 1 deletions
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index 1bf59a5e3e..8b820182e2 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -60,9 +60,19 @@ def get_imagecmds(d):
60 cmds += "\n" + localdata.getVar("runimagecmd", True) 60 cmds += "\n" + localdata.getVar("runimagecmd", True)
61 return cmds 61 return cmds
62 62
63# The default aligment of the size of the rootfs is set to 1KiB. In case
64# you're using the SD card emulation of a QEMU system simulator you may
65# set this value to 2048 (2MiB alignment).
66IMAGE_ROOTFS_ALIGNMENT ?= "1"
67
63runimagecmd () { 68runimagecmd () {
64 # Image generation code for image type ${type} 69 # Image generation code for image type ${type}
65 ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{base_size = ($1 * ${IMAGE_OVERHEAD_FACTOR}); OFMT = "%.0f" ; print ((base_size > ${IMAGE_ROOTFS_SIZE} ? base_size : ${IMAGE_ROOTFS_SIZE}) + ${IMAGE_ROOTFS_EXTRA_SPACE}) }'` 70 # The base_size gets calculated:
71 # - initial size determined by `du -ks` of the IMAGE_ROOTFS
72 # - then multiplied by the IMAGE_OVERHEAD_FACTOR
73 # - then rounded up to IMAGE_ROOTFS_ALIGNMENT
74 # - finally tested against IMAGE_ROOTFS_SIZE
75 ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{base_size = $1 * ${IMAGE_OVERHEAD_FACTOR} + ${IMAGE_ROOTFS_ALIGNMENT} - 1; base_size -= base_size % ${IMAGE_ROOTFS_ALIGNMENT}; print ((base_size > ${IMAGE_ROOTFS_SIZE} ? base_size : ${IMAGE_ROOTFS_SIZE}) + ${IMAGE_ROOTFS_EXTRA_SPACE}) }'`
66 ${cmd} 76 ${cmd}
67 # Now create the needed compressed versions 77 # Now create the needed compressed versions
68 cd ${DEPLOY_DIR_IMAGE}/ 78 cd ${DEPLOY_DIR_IMAGE}/