[OE-core] [PATCH_V5] image types: split live into iso and hddimg

Saul Wold sgw at linux.intel.com
Sat Sep 21 18:11:44 UTC 2013


On 09/19/2013 06:31 AM, Valentin Popa wrote:
> Changes to split live into iso and hddimg without
> adding a new image type class.
> This patch has only a visible effect on HOB and solves
> part 2 of #3197
>
> [YOCTO #3197]
>
> Signed-off-by: Valentin Popa <valentin.popa at intel.com>
> ---
>   meta/classes/image.bbclass       | 13 ++++++++++++-
>   meta/classes/image_types.bbclass | 13 +++++++++----
>   2 files changed, 21 insertions(+), 5 deletions(-)
>
> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index f1e62f1..bbeb765 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -87,7 +87,18 @@ do_rootfs[depends] += "makedevs-native:do_populate_sysroot virtual/fakeroot-nati
>   do_rootfs[depends] += "virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot"
>   do_rootfs[recrdeptask] += "do_packagedata"
>
> -IMAGE_TYPE_live = '${@base_contains("IMAGE_FSTYPES", "live", "live", "empty", d)}'
> +def build_live(d):
> +    if base_contains("IMAGE_FSTYPES", "live", "live", "0", d) == "0": # live is not set but hob might set iso or hddimg
> +        d.setVar('NOISO', base_contains('IMAGE_FSTYPES', "iso", "0", "1", d))
> +        d.setVar('NOHDD', base_contains('IMAGE_FSTYPES', "hddimg", "0", "1", d))
> +        if d.getVar('NOISO', True) == "0" or d.getVar('NOHDD', True) == "0":
> +            return "live"
> +        return "empty"
> +    return "live"
> +
> +IMAGE_TYPE_temp = "${@build_live(d)}"
> +IMAGE_TYPE_live = "${@base_contains("IMAGE_FSTYPES", "live", "live", "${IMAGE_TYPE_temp}", d)}"
> +
I don't think you need the _temp thing anymore since you have the live 
check above, is that not correct?

>   inherit image-${IMAGE_TYPE_live}
>   IMAGE_TYPE_vmdk = '${@base_contains("IMAGE_FSTYPES", "vmdk", "vmdk", "empty", d)}'
>   inherit image-${IMAGE_TYPE_vmdk}
> diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
> index 8c49169..9ead059 100644
> --- a/meta/classes/image_types.bbclass
> +++ b/meta/classes/image_types.bbclass
> @@ -43,12 +43,17 @@ def get_imagecmds(d):
>           if "ext3" not in alltypes:
>               alltypes.append("ext3")
>           types.remove("vmdk")
> -    if "live" in types:
> +    if "live" in types or "iso" in types or "hddimg" in types:
>           if "ext3" not in types:
>               types.append("ext3")
>           if "ext3" not in alltypes:
>               alltypes.append("ext3")
> -        types.remove("live")
> +        if "live" in types:
> +            types.remove("live")
> +        if "iso" in types:
> +            types.remove("iso")
> +        if "hddimg" in types:
> +            types.remove("hddimg")
>
>       if d.getVar('IMAGE_LINK_NAME', True):
>           if d.getVar('RM_OLD_IMAGE', True) == "1":
> @@ -115,7 +120,7 @@ def imagetypes_getdepends(d):
>       deps = []
>       ctypes = d.getVar('COMPRESSIONTYPES', True).split()
>       for type in (d.getVar('IMAGE_FSTYPES', True) or "").split():
> -        if type == "vmdk" or type == "live":
> +        if type == "vmdk" or type == "live" or type == "iso" or type == "hddimg":
>               type = "ext3"
>           basetype = type
>           for ctype in ctypes:
> @@ -230,7 +235,7 @@ IMAGE_DEPENDS_ubi = "mtd-utils-native"
>   IMAGE_DEPENDS_ubifs = "mtd-utils-native"
>
>   # This variable is available to request which values are suitable for IMAGE_FSTYPES
> -IMAGE_TYPES = "jffs2 sum.jffs2 cramfs ext2 ext2.gz ext2.bz2 ext3 ext3.gz ext2.lzma btrfs live squashfs squashfs-xz ubi ubifs tar tar.gz tar.bz2 tar.xz cpio cpio.gz cpio.xz cpio.lzma vmdk elf"
> +IMAGE_TYPES = "jffs2 sum.jffs2 cramfs ext2 ext2.gz ext2.bz2 ext3 ext3.gz ext2.lzma btrfs iso hddimg squashfs squashfs-xz ubi ubifs tar tar.gz tar.bz2 tar.xz cpio cpio.gz cpio.xz cpio.lzma vmdk elf"
>
If live is still a valid type, why remove it from the IMAGE_TYPES list?

Sau!


>   COMPRESSIONTYPES = "gz bz2 lzma xz"
>   COMPRESS_CMD_lzma = "lzma -k -f -7 ${IMAGE_NAME}.rootfs.${type}"
>



More information about the Openembedded-core mailing list