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



_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to