[OE-core] [PATCH 1/1] kernel: restore scripts in the sysroot

Khem Raj raj.khem at gmail.com
Fri Oct 4 20:23:51 UTC 2013


Bruce

Besides the sstate problem RP mentioned your patch worked fine.

On Fri, Oct 4, 2013 at 5:42 AM, Bruce Ashfield
<bruce.ashfield at windriver.com> wrote:
> On 13-10-04 03:46 AM, Richard Purdie wrote:
>>
>> On Thu, 2013-10-03 at 20:02 -0400, Bruce Ashfield wrote:
>>>
>>> When building against the sysroot, out of tree modules can require
>>> modpost
>>> and other utilities normally found in the kernel's scripts directory. For
>>> the kernel source in the staging dir, these scripts have been removed to
>>> avoid mixing archiectures when packaging kernel-dev (among other things).
>>
>>
>> Its also to avoid mixing architectures when packaging the sstate for
>> do_populate_sysroot. The sstate for that task is now native arch
>> specific after this patch but its task hash is not. Even if we made it
>> native specific, that means the kernel would rebuild entirely if you
>> switch 32 bit to 64 bit native machine. We therefore cannot merge this
>> patch as is.
>
>
> Aha! I knew there was a lurking element I wouldn't know about. I nearly
> put "RFC" in the patch .. and clearly should have :)
>
>
>>
>> Instead do something like:
>>
>>
>> SSTATEPOSTINSTFUNCS += "kernelheaders_sstate_postinst"
>>
>> kernelheaders_sstate_postinst () {
>>         if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o
>> "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ]
>>         then
>>                 ( cd ${SYSROOT_DESTDIR}${KERNEL_SRC_PATH};
>>                   oe_runmake scripts
>>                 )
>>         fi
>> }
>>
>> This will rerun the oe_runmake scripts each time the sstate package is
>> installed. It slows down the use of sstate but should be correct whether
>> the build machine is 32 or 64 bit.
>
>
> I'll try what you have above and re-spin the patch.
>
> Cheers,
>
> Bruce
>
>>
>>
>> Cheers,
>>
>> Richard
>>
>>
>



More information about the Openembedded-core mailing list