From 978cdd5cb5b445f1cf406296444cb57cd8aa526a Mon Sep 17 00:00:00 2001 From: Darren Hart Date: Tue, 16 Aug 2011 21:16:53 -0700 Subject: kernel: restore crtsavres.o to enable building external modules on powerpc Fixes [YOCTO #1276] As of Linux kernel version 3.0.1, and much earlier, the make clean target removes arch/powerpc/lib/crtsavres.o. As this object is present in KBUILD_LDFLAGS_MODULE, it is required to build external modules, and should therefor not be removed by make clean. While I do not advocate fixing buggy kernels in the generic kernel classes, we should probably account for this one in kernel.bbclass as it affects such a long list of kernel versions. (From OE-Core rev: 2e83e6755441cb14bd907d306974338c15173189) Signed-off-by: Darren Hart CC: Bruce Ashfield CC: Tom Zanussi Signed-off-by: Richard Purdie --- meta/classes/kernel.bbclass | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'meta/classes/kernel.bbclass') diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 7dc9cc6e42..386b05e57a 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -159,6 +159,13 @@ kernel_do_install() { find $kerneldir -path $kerneldir/scripts -prune -o -name "*.[csS]" -exec rm '{}' \; find $kerneldir/Documentation -name "*.txt" -exec rm '{}' \; + # As of Linux kernel version 3.0.1, the clean target removes + # arch/powerpc/lib/crtsavres.o which is present in + # KBUILD_LDFLAGS_MODULE, making it required to build external modules. + if [ ${ARCH} = "powerpc" ]; then + cp arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o + fi + # Remove the following binaries which cause strip errors # during do_package for cross-compiled platforms bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \ -- cgit v1.2.3-54-g00ecf