[OE-core] [PATCH] lib/oe/image.py: fix working directory

Jonathan Liu net147 at gmail.com
Tue Feb 18 09:11:04 UTC 2014


On 18/02/2014 7:55 PM, Jonathan Liu wrote:
> On 18/02/2014 7:41 PM, Richard Purdie wrote:
>> On Mon, 2014-02-17 at 21:46 +1100, Jonathan Liu wrote:
>>> The working directory needs to be changed before the image creation
>>> commands instead of afterwards.
>>>
>>> Signed-off-by: Jonathan Liu <net147 at gmail.com>
>>> ---
>>>   meta/lib/oe/image.py | 2 +-
>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/meta/lib/oe/image.py b/meta/lib/oe/image.py
>>> index c15296f..31193f2 100644
>>> --- a/meta/lib/oe/image.py
>>> +++ b/meta/lib/oe/image.py
>>> @@ -176,8 +176,8 @@ class Image(object):
>>>               bb.data.update_data(localdata)
>>>               localdata.setVar('type', type)
>>>   -            cmds.append("\t" + localdata.getVar("IMAGE_CMD", True))
>>>               cmds.append(localdata.expand("\tcd ${DEPLOY_DIR_IMAGE}"))
>>> +            cmds.append("\t" + localdata.getVar("IMAGE_CMD", True))
>>>                 if type in cimages:
>>>                   for ctype in cimages[type]:
>> I applied this but ended up reverting it since its clear the image
>> commands assume a different working directory and this causes failures.
>>
>> I'd like to see more explanation about the problem this is trying to
>> solve.
>>
>> Cheers,
>>
>> Richard
>>
> The sdimg image classes in meta-raspberrypi and meta-sunxi broke when 
> I switched from dora to master branch.
> See: 
> https://github.com/djwillis/meta-raspberrypi/blob/master/classes/sdcard_image-rpi.bbclass#L43
> It is using relative path to rootfs which assumes the working 
> directory is DEPLOY_DIR_IMAGE.
> I was able to build the SD card images fine after the fix.
Also, it makes absolutely no sense whatsoever to change working 
directory at the end of the function:
img_creation_func() {
     oe_mkext234fs ext4 -i 8192
     cd /home/build/poky/build/tmp/deploy/images/qemux86
}

...

img_creation_func

This would mean the last command executed in create_image.ext4 (see temp 
folder for image recipe) would be changing the directory.

>
> Regards,
> Jonathan




More information about the Openembedded-core mailing list