From: Bruce Ashfield <[email protected]> There were two copies of this patch floating around, and the merged variant has the copy in the wrong place.
module.lds is only created during modules_prepare, and that target is not invoked during our main build of the kernel. We aren't about to change the kernel build (there's no need), so we move the copy into the compile_kernelmodules task. After that runs, we have module.lds availble to copy. This has been tested against clean kernel + out of tree module builds, and the dependencies are correct that the file is copied before the out of tree module build starts. Signed-off-by: Bruce Ashfield <[email protected]> --- v2: I had done my test builds on a branch that didn't actually contain my change, hence why 5.8 builds where blowing up. I switched to the if [ ] model, since that doesn't run afoul of the exit handler. I do find it curious that the compile task behaves so differently than the install ones (even with set +e, I couldn't use the [ ] method. Anyway, this is tested against 5.8 and 5.10 + eternal module builds Bruce meta/classes/kernel.bbclass | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index ccd74e61e8..8b28ee626f 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -391,6 +391,10 @@ do_compile_kernelmodules() { # other kernel modules and will look at this # file to do symbol lookups cp ${B}/Module.symvers ${STAGING_KERNEL_BUILDDIR}/ + # 5.10+ kernels have module.lds that we need to copy for external module builds + if [ -e "${B}/scripts/module.lds" ]; then + install -Dm 0644 ${B}/scripts/module.lds ${STAGING_KERNEL_BUILDDIR}/scripts/module.lds + fi else bbnote "no modules to compile" fi @@ -494,7 +498,6 @@ 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 -- 2.19.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#144775): https://lists.openembedded.org/g/openembedded-core/message/144775 Mute This Topic: https://lists.openembedded.org/mt/78334430/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
