[OE-core] [PATCH 1/1] kernel: restore scripts in the sysroot
Khem Raj
raj.khem at gmail.com
Wed Nov 20 02:59:10 UTC 2013
On Nov 19, 2013, at 2:45 PM, Richard Purdie <richard.purdie at linuxfoundation.org> wrote:
> On Tue, 2013-11-19 at 14:39 -0800, Khem Raj wrote:
>> On Nov 19, 2013, at 2:36 PM, Richard Purdie <richard.purdie at linuxfoundation.org> wrote:
>>
>>> On Tue, 2013-11-19 at 14:29 -0800, Khem Raj wrote:
>>>
>>>> Well reproducer case is that build from sstate but such that an external module needs to be rebuilt
>>>> if external module also comes from sstate then it all is fine. Its only when everything is coming from
>>>> sstate except this external module which needs to be rebuilt then you see this problem.
>>>>
>>>> now, I see the code in module-base.class
>>>>
>>>> #
>>>> # Ensure the hostprogs are available for module compilation. Modules that
>>>> # inherit this recipe and override do_compile() should be sure to call
>>>> # do_make_scripts() or ensure the scripts are built independently.
>>>> #
>>>> do_make_scripts() {
>>>> unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
>>>> make CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \
>>>> -C ${STAGING_KERNEL_DIR} scripts
>>>> }
>>>>
>>>> so it expects that, do_make_scripts is explicitly called by external module recipes
>>>>
>>>> and my recipes did override module_do_compile task but not do_compile like below
>>>>
>>>> module_do_compile() {
>>>> oe_runmake
>>>> }
>>>>
>>>> so, is comment wrong there should it say module_do_compile instead ?
>>>>
>>>> will it work with sstate always ?
>>>>
>>>> it will be OK to revert it if thats the case.
>>>
>>> Did you inherit module-base or module? I think the wording applies to
>>> module and not module-base. I think the function used to be in module
>>> and was moved along with the comment which is now incorrect.
>>>
>>
>> inherit module
>
> So in that case there is:
>
> addtask make_scripts after do_patch before do_compile
> do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
> do_make_scripts[deptask] = “do_populate_sysroot”
>
yes I see.
> which forces the make_scripts task to run before compile. I don't see
> how that could therefore fail? :/
>
> Do you have a copy of the exact log?
Not anymore, it was sometime ago, the logs are unfortunately recycled.
> I'm wondering if this is another
> variant of the bitbake dependency bug I just tracked down
> (http://git.yoctoproject.org/cgit.cgi/poky-contrib/patch/?id=7b49d336c4672f3dfa78e1c3f1f5c7384264a118)
>
ah very likely, I think I will try this fix and revert the kernel.bbclass fix locally and see if I still am
able to reproduce this issue. In any case I think the kernel.bbclass may be abandoned since I now think it
was a wrong fix although it did fix the problem
> Cheers,
>
> Richard
>
More information about the Openembedded-core
mailing list