I am working on an sdcard image class for Yocto (Morty), which is basically straight forward. The sdcard image must be built after the roofs is done.
This can be indicated by IMAGE_TYPEDEP_sdcard, which in my case is set to "ext4"
The problem I encounter is that as soon as the sdcard image is added to IMAGE_FSTYPES the ext4 is not built anymore.
I tried to narrow it down by removing everything from my class file. so it only contains the following:
inherit image_Types
IMAGE_TYPEDEP_sdcard = "ext4"
IMAGE_CMD_sdcard {
bbnote "Generating SDCARD image"
bbfatal "DONE"
}
The normal case should be that on the bbfatal the ext4 rootfs would have been built, because this is required for the sdcard image. This is however not the case.
When I remove the bbfatal statement the ext4 is built as expected. It is built after the sdcard generation command. So it seems the IMAGE_TYPEDEP is not working.
Am I overlooking something ?
if you put the line:
IMAGE_TYPEDEP_sdcard = "ext4"
, the taskdo_image_ext4
runs beforedo_image_sdcard
, but it places the output in${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ext4
.The task
do_image_complete
then makes a copy of it to${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext4
.So, if you need the output of
do_image_ext4
, you must look for it in${IMGDEPLOYDIR}
, not in${DEPLOY_DIR_IMAGE}
.