summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2017-07-21 18:06:33 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-08-29 11:57:29 +0100
commit88eec32150c025bae6f3c381152b0772990d0751 (patch)
tree1c4599c3fd2d5b638be61d0be39c00afbf81ec1d
parent5a20323f2076b74e82f168f691f942df4b9bf93a (diff)
downloadpoky-88eec32150c025bae6f3c381152b0772990d0751.tar.gz
image.bbclass: Correct chaining compression support
When chaining of compression/conversion types was added, we had a new way to handle doing things like "ext4.bz2.sha256sum" or "ext2.gz.u-boot". However, because the U-Boot image class isn't included normally, it wasn't properly converted at the time. After the support was added the "clean" argument that the .u-boot code uses no longer functions. The fix for this inadvertently broke chaining compression/conversion. First, correct the u-boot conversion code. Fixes: 46bc438374de ("image.bbclass: do exact match for rootfs type") Cc: Zhenhua Luo <zhenhua.luo@nxp.com> Cc: Richard Purdie <richard.purdie@linuxfoundation.org> Cc: Patrick Ohly <patrick.ohly@intel.com> (From OE-Core rev: ad22f73519292f53d2ea6eaae99f8a919c4f2c26) Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 0a7ce0b971a208956cb895ba5a869ec8c5d94703) Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/image.bbclass2
-rw-r--r--meta/classes/image_types_uboot.bbclass13
2 files changed, 6 insertions, 9 deletions
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 405fd73c04..4b208c94f1 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -454,7 +454,7 @@ python () {
454 rm_tmp_images = set() 454 rm_tmp_images = set()
455 def gen_conversion_cmds(bt): 455 def gen_conversion_cmds(bt):
456 for ctype in ctypes: 456 for ctype in ctypes:
457 if bt[bt.find('.') + 1:] == ctype: 457 if bt.endswith("." + ctype):
458 type = bt[0:-len(ctype) - 1] 458 type = bt[0:-len(ctype) - 1]
459 if type.startswith("debugfs_"): 459 if type.startswith("debugfs_"):
460 type = type[8:] 460 type = type[8:]
diff --git a/meta/classes/image_types_uboot.bbclass b/meta/classes/image_types_uboot.bbclass
index 5dfa39287d..8db436efb1 100644
--- a/meta/classes/image_types_uboot.bbclass
+++ b/meta/classes/image_types_uboot.bbclass
@@ -3,9 +3,6 @@ inherit image_types kernel-arch
3oe_mkimage () { 3oe_mkimage () {
4 mkimage -A ${UBOOT_ARCH} -O linux -T ramdisk -C $2 -n ${IMAGE_NAME} \ 4 mkimage -A ${UBOOT_ARCH} -O linux -T ramdisk -C $2 -n ${IMAGE_NAME} \
5 -d ${IMGDEPLOYDIR}/$1 ${IMGDEPLOYDIR}/$1.u-boot 5 -d ${IMGDEPLOYDIR}/$1 ${IMGDEPLOYDIR}/$1.u-boot
6 if [ x$3 = x"clean" ]; then
7 rm $1
8 fi
9} 6}
10 7
11CONVERSIONTYPES += "gz.u-boot bz2.u-boot lz4.u-boot lzma.u-boot lzo.u-boot u-boot" 8CONVERSIONTYPES += "gz.u-boot bz2.u-boot lz4.u-boot lzma.u-boot lzo.u-boot u-boot"
@@ -14,19 +11,19 @@ CONVERSION_DEPENDS_u-boot = "u-boot-mkimage-native"
14CONVERSION_CMD_u-boot = "oe_mkimage ${IMAGE_NAME}.rootfs.${type} none" 11CONVERSION_CMD_u-boot = "oe_mkimage ${IMAGE_NAME}.rootfs.${type} none"
15 12
16CONVERSION_DEPENDS_gz.u-boot = "u-boot-mkimage-native" 13CONVERSION_DEPENDS_gz.u-boot = "u-boot-mkimage-native"
17CONVERSION_CMD_gz.u-boot = "${CONVERSION_CMD_gz}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.gz gzip clean" 14CONVERSION_CMD_gz.u-boot = "${CONVERSION_CMD_gz}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.gz gzip"
18 15
19CONVERSION_DEPENDS_bz2.u-boot = "u-boot-mkimage-native" 16CONVERSION_DEPENDS_bz2.u-boot = "u-boot-mkimage-native"
20CONVERSION_CMD_bz2.u-boot = "${CONVERSION_CMD_bz2}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.bz2 bzip2 clean" 17CONVERSION_CMD_bz2.u-boot = "${CONVERSION_CMD_bz2}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.bz2 bzip2"
21 18
22CONVERSION_DEPENDS_lz4.u-boot = "u-boot-mkimage-native" 19CONVERSION_DEPENDS_lz4.u-boot = "u-boot-mkimage-native"
23CONVERSION_CMD_lz4.u-boot = "${CONVERSION_CMD_lz4_legacy}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.lz4 lz4 clean" 20CONVERSION_CMD_lz4.u-boot = "${CONVERSION_CMD_lz4_legacy}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.lz4 lz4"
24 21
25CONVERSION_DEPENDS_lzma.u-boot = "u-boot-mkimage-native" 22CONVERSION_DEPENDS_lzma.u-boot = "u-boot-mkimage-native"
26CONVERSION_CMD_lzma.u-boot = "${CONVERSION_CMD_lzma}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.lzma lzma clean" 23CONVERSION_CMD_lzma.u-boot = "${CONVERSION_CMD_lzma}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.lzma lzma"
27 24
28CONVERSION_DEPENDS_lzo.u-boot = "u-boot-mkimage-native" 25CONVERSION_DEPENDS_lzo.u-boot = "u-boot-mkimage-native"
29CONVERSION_CMD_lzo.u-boot = "${CONVERSION_CMD_lzo}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.lzo lzo clean" 26CONVERSION_CMD_lzo.u-boot = "${CONVERSION_CMD_lzo}; oe_mkimage ${IMAGE_NAME}.rootfs.${type}.lzo lzo"
30 27
31IMAGE_TYPES += "ext2.u-boot ext2.gz.u-boot ext2.bz2.u-boot ext2.lzma.u-boot ext3.gz.u-boot ext4.gz.u-boot cpio.gz.u-boot" 28IMAGE_TYPES += "ext2.u-boot ext2.gz.u-boot ext2.bz2.u-boot ext2.lzma.u-boot ext3.gz.u-boot ext4.gz.u-boot cpio.gz.u-boot"
32 29