[yocto] linux-yocto: doesn't maintain patch order from SRC_URI?

Darren Hart dvhart at linux.intel.com
Tue Nov 29 16:41:54 PST 2011



On 11/29/2011 03:14 PM, Bruce Ashfield wrote:
> On 11-11-29 04:39 PM, Darren Hart wrote:
>> I'm experimenting with Matt Fleming's EFI_STUB patches. The first 10 patches were working fine, but when I try to add the 11th, the do_patch fails. I found that it isn't trying to apply the patches in the order listed in the recipe - no in any other recognizable pattern for that matter.
>>
> 
> It's shell order. You really should just create a .scc file, put IT
> on the SRC_URI and list the patches. You'll have no problems after
> that.
> 
> I do have a fix for this, but can't send it right now due to travel.
> 
> You are using the compatibility mode for more than I originally intended
> it for. So just dropping a .scc file into place will fix things
> up nicely.

OK, I like that better than the monolith patch I plugged the leak with :-)

I understand I am using the compatibility mode more than the original
intent - and in part I'm doing this on purpose. The "recipe-space"
iterative development model is going to be the most familiar to OE
developers and is the fastest way to prototype changes. We need to
ensure it works well. Once I'm done here, I fully intend to push it into
a proper in-tree scc file - but for now, it makes the most sense in
recipe-space while we tweak it and the patches are under heavy development.

Thanks Bruce!

--
Darren

> 
> Bruce
> 
>> The recipe contains:
>>
>> # Add the efi-stub
>> SRC_URI += "file://0001-x86-Add-missing-bzImage-fields-to-struct-setup_heade.patch \
>>              file://0002-x86-efi-Make-efi_call_phys_prelog-CONFIG_RELOCATABLE.patch \
>>              file://0003-x86-Don-t-use-magic-strings-for-EFI-loader-signature.patch \
>>              file://0004-efi.h-Add-struct-definition-for-boot-time-services.patch \
>>              file://0005-efi.h-Add-efi_image_loaded_t.patch \
>>              file://0006-efi.h-Add-allocation-types-for-boottime-allocate_pag.patch \
>>              file://0007-efi.h-Add-graphics-protocol-guids.patch \
>>              file://0008-efi.h-Add-boottime-locate_handle-search-types.patch \
>>              file://0009-efi-Add-EFI-file-I-O-data-types.patch \
>>              file://0010-x86-efi-EFI-boot-stub-support.patch \
>> 	    file://0011-x86-efi-Break-up-large-initrd-reads.patch \
>>              "
>>
>> do_patch fails with:
>> Log data follows:
>> | Deleted branch meta-temp (was 620917d).
>> | warning: could not find (or was already included): ktypes/yocto.scc
>> | ./0-standard-yocto-61b5e146f9d113375883df8c51449722.sco: line 14: yocto_68b329da9893e34099c7d8ad5cb9c940: command not found
>> | [INFO] validating against known patches  (standard-yocto-meta)
>> error: arch/x86/boot/compressed/eboot.c: does not exist in index09 %)
>> | To force apply this patch, use 'guilt push -f'
>> | [ERROR] unable to complete push
>> | pending patches are:
>> | Patches directory doesn't exist, try guilt-init
>> | ERROR. could not update git tree
>> | ERROR: Function 'do_patch' failed (see /build/poky/ie/tmp/work/ie_phase1-poky-linux/linux-yocto-ie-3.0.4+git1+d51b0e743599a41a42e119f29f8dfa89854b3b5e_1+6b2c7d65b844e686eae7d5cccb9b638887afe28e-r4/temp/log.do_patch.2768 for further information)
>>
>> and meta/patches/standard/series contains:
>>
>> $ cat standard/series
>> links/scratch/obj/0002-x86-efi-Make-efi_call_phys_prelog-CONFIG_RELOCATABLE.patch
>> links/scratch/obj/0003-x86-Don-t-use-magic-strings-for-EFI-loader-signature.patch
>> links/scratch/obj/0004-efi.h-Add-struct-definition-for-boot-time-services.patch
>> links/scratch/obj/0005-efi.h-Add-efi_image_loaded_t.patch
>> links/scratch/obj/0011-x86-efi-Break-up-large-initrd-reads.patch
>>
>> This needs to come after 10.
>>
>> links/scratch/obj/0007-efi.h-Add-graphics-protocol-guids.patch
>> links/scratch/obj/0001-x86-Add-missing-bzImage-fields-to-struct-setup_heade.patch
>> links/scratch/obj/0009-efi-Add-EFI-file-I-O-data-types.patch
>> links/scratch/obj/0008-efi.h-Add-boottime-locate_handle-search-types.patch
>> links/scratch/obj/0006-efi.h-Add-allocation-types-for-boottime-allocate_pag.patch
>> links/scratch/obj/0010-x86-efi-EFI-boot-stub-support.patch
>>
>>
>>
> 

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel



More information about the yocto mailing list