On 2020-11-13 9:09 p.m., Bruce Ashfield wrote: > On Fri, Nov 13, 2020 at 11:41 PM Bruce Ashfield via > lists.openembedded.org > <[email protected]> wrote: >> On Fri, Nov 13, 2020 at 11:27 PM Bruce Ashfield via >> lists.openembedded.org >> <[email protected]> wrote: >>> On Fri, Nov 13, 2020 at 11:19 PM Scott Branden >>> <[email protected]> wrote: >>>> Sorry, spoke too soon. Doesn't seem to work from a clean build now. >>>> >>> How so ? Works on repeated clean builds here. For 5.4/5.8 and 5.10 >>> >> I have a theory on this. Did you directly bitbake your external module >> ? versus building the kernel first and then the module ? Yes, I was doing a direct bitbake of the external module. >> >> I'll see what I can come up with. > Confirmed. > > I have it sorted now. Doing one more clean build and will send a v2. Glad you were able to reproduce. > > Thanks for the follow up!! Looks to be merged to master now. Will pickup the latest and if anything still not working let you know. > > Bruce > >> Bruce >> >>> Bruce >>> >>>> On 2020-11-13 9:53 a.m., Scott Branden wrote: >>>> >>>> Thanks, works for me building external kernel modules. >>>> >>>> On 2020-11-12 10:32 p.m., Bruce Ashfield wrote: >>>> >>>> From: Bruce Ashfield <[email protected]> >>>> >>>> The upstream commit 596b0474d3d [kbuild: preprocess module linker >>>> script], adds a dependency on module.lds for external module >>>> building. >>>> >>>> Since module.lds is generated as part of 'modules_prepare', we >>>> must make it available with the other kernel artifacts in the >>>> kernel shared workdir, otherwise out of tree builds fail. >>>> >>>> This fixes errors like: >>>> >>>> | make[4]: *** No rule to make target 'scripts/module.lds', needed by >>>> >>>> 'build/tmp/work/qemuarm64-poky-linux/cryptodev-module/1.11-r0/git/cryptodev.ko'. >>>> Stop. >>>> | make[4]: *** Waiting for unfinished jobs.... >>>> >>>> We also ensure that kernel-devsrc has a copy to support on >>>> target module builds that are often prepared with 'make scripts >>>> prepare'. Those targets won't regenerate it, so the build fails. >>>> If 'make modules_prepare' is used, the file will be regenerated >>>> and overwrite our copy (as expected). >>>> >>>> Signed-off-by: Pan, Kris <[email protected]> >>>> Signed-off-by: Lili Li <[email protected]> >>>> Signed-off-by: Bruce Ashfield <[email protected]> >>>> >>>> Tested-by: Scott Branden <[email protected]> >>>> >>>> --- >>>> meta/classes/kernel.bbclass | 1 + >>>> meta/recipes-kernel/linux/kernel-devsrc.bb | 6 ++++++ >>>> 2 files changed, 7 insertions(+) >>>> >>>> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass >>>> index be93a258f6..ccd74e61e8 100644 >>>> --- a/meta/classes/kernel.bbclass >>>> +++ b/meta/classes/kernel.bbclass >>>> @@ -494,6 +494,7 @@ do_shared_workdir () { >>>> # Copy files required for module builds >>>> cp System.map $kerneldir/System.map-${KERNEL_VERSION} >>>> [ -e Module.symvers ] && cp Module.symvers $kerneldir/ >>>> + [ -e scripts/module.lds ] && install -Dm 0644 scripts/module.lds >>>> $kerneldir/scripts/module.lds >>>> cp .config $kerneldir/ >>>> mkdir -p $kerneldir/include/config >>>> cp include/config/kernel.release $kerneldir/include/config/kernel.release >>>> diff --git a/meta/recipes-kernel/linux/kernel-devsrc.bb >>>> b/meta/recipes-kernel/linux/kernel-devsrc.bb >>>> index 81b1e36041..5f0dedbdf7 100644 >>>> --- a/meta/recipes-kernel/linux/kernel-devsrc.bb >>>> +++ b/meta/recipes-kernel/linux/kernel-devsrc.bb >>>> @@ -100,6 +100,12 @@ do_install() { >>>> # be dealt with. >>>> # cp -a scripts $kerneldir/build >>>> >>>> + # although module.lds can be regenerated on target via 'make >>>> modules_prepare' >>>> + # there are several places where 'makes scripts prepare' is done, and >>>> that won't >>>> + # regenerate the file. So we copy it onto the target as a migration to >>>> using >>>> + # modules_prepare >>>> + cp -a --parents scripts/module.lds $kerneldir/build/ 2>/dev/null || : >>>> + >>>> if [ -d arch/${ARCH}/scripts ]; then >>>> cp -a arch/${ARCH}/scripts $kerneldir/build/arch/${ARCH} >>>> fi >>>> >>>> >>>> >>>> >>>> >>>> >>> >>> -- >>> - Thou shalt not follow the NULL pointer, for chaos and madness await >>> thee at its end >>> - "Use the force Harry" - Gandalf, Star Trek II >>> >>> >>> >> >> -- >> - Thou shalt not follow the NULL pointer, for chaos and madness await >> thee at its end >> - "Use the force Harry" - Gandalf, Star Trek II >> >> >> >
smime.p7s
Description: S/MIME Cryptographic Signature
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#144624): https://lists.openembedded.org/g/openembedded-core/message/144624 Mute This Topic: https://lists.openembedded.org/mt/78224757/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
