diff options
author | Darren Hart <dvhart@linux.intel.com> | 2011-08-16 21:16:53 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-17 15:56:07 +0100 |
commit | 978cdd5cb5b445f1cf406296444cb57cd8aa526a (patch) | |
tree | 8635e91da62697741bd5d3c198022b53647f9a5c /meta | |
parent | 5ab332a205b3fc431549ae3dec2fe5d0b2f2aacc (diff) | |
download | poky-978cdd5cb5b445f1cf406296444cb57cd8aa526a.tar.gz |
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 <dvhart@linux.intel.com>
CC: Bruce Ashfield <bruce.ashfield@windriver.com>
CC: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/kernel.bbclass | 7 |
1 files changed, 7 insertions, 0 deletions
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() { | |||
159 | find $kerneldir -path $kerneldir/scripts -prune -o -name "*.[csS]" -exec rm '{}' \; | 159 | find $kerneldir -path $kerneldir/scripts -prune -o -name "*.[csS]" -exec rm '{}' \; |
160 | find $kerneldir/Documentation -name "*.txt" -exec rm '{}' \; | 160 | find $kerneldir/Documentation -name "*.txt" -exec rm '{}' \; |
161 | 161 | ||
162 | # As of Linux kernel version 3.0.1, the clean target removes | ||
163 | # arch/powerpc/lib/crtsavres.o which is present in | ||
164 | # KBUILD_LDFLAGS_MODULE, making it required to build external modules. | ||
165 | if [ ${ARCH} = "powerpc" ]; then | ||
166 | cp arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o | ||
167 | fi | ||
168 | |||
162 | # Remove the following binaries which cause strip errors | 169 | # Remove the following binaries which cause strip errors |
163 | # during do_package for cross-compiled platforms | 170 | # during do_package for cross-compiled platforms |
164 | bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \ | 171 | bin_files="arch/powerpc/boot/addnote arch/powerpc/boot/hack-coff \ |