diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-07-28 16:49:49 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-08-15 10:22:44 +0100 |
commit | 9e83976054925a49196f4c5be7eb4b4b9cc1e041 (patch) | |
tree | 39bafb5cc3ef0fa7f498f24a9bee41fb6bd3841b /meta | |
parent | 53d5f01d2dc34ac140f985aef0fbe0c407394a2c (diff) | |
download | poky-9e83976054925a49196f4c5be7eb4b4b9cc1e041.tar.gz |
make-mod-scripts/kernel-devsrc: Fix objtool issues
Kernels which use tools/objtool can now fail when building external modules
due to objtool being missing, the generated files can also cause problems
for kernel-devsrc.
Ensure objtool is generated in make-mod-scripts by also calling
"make prepare".
For devsrc, delete the generated binaries since they'd be native
binaries and unsuitable for the target.
The oeqa kernel module tests also need to have the additional "make prepare"
step added.
(From OE-Core rev: 52fd2993784b4218f5df4f343e7da45d964df305)
Fixes [YOCTO #12860]
(From OE-Core rev: 49b208fc7b3d52826ba57a86ed52bc30e181ff78)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Tweaked to add "make prepare" to module-base.bbclass instead of
make-mod-scripts.bb]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/module-base.bbclass | 2 | ||||
-rw-r--r-- | meta/lib/oeqa/runtime/cases/kernelmodule.py | 2 | ||||
-rw-r--r-- | meta/recipes-kernel/linux/kernel-devsrc.bb | 7 |
3 files changed, 9 insertions, 2 deletions
diff --git a/meta/classes/module-base.bbclass b/meta/classes/module-base.bbclass index 6fe77c01b7..64729770c7 100644 --- a/meta/classes/module-base.bbclass +++ b/meta/classes/module-base.bbclass | |||
@@ -23,5 +23,5 @@ PACKAGE_ARCH = "${MACHINE_ARCH}" | |||
23 | do_make_scripts() { | 23 | do_make_scripts() { |
24 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS | 24 | unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS |
25 | make CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \ | 25 | make CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \ |
26 | -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts | 26 | -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts prepare |
27 | } | 27 | } |
diff --git a/meta/lib/oeqa/runtime/cases/kernelmodule.py b/meta/lib/oeqa/runtime/cases/kernelmodule.py index 11ad7b7f01..de1a5aa445 100644 --- a/meta/lib/oeqa/runtime/cases/kernelmodule.py +++ b/meta/lib/oeqa/runtime/cases/kernelmodule.py | |||
@@ -28,7 +28,7 @@ class KernelModuleTest(OERuntimeTestCase): | |||
28 | @OETestDepends(['gcc.GccCompileTest.test_gcc_compile']) | 28 | @OETestDepends(['gcc.GccCompileTest.test_gcc_compile']) |
29 | def test_kernel_module(self): | 29 | def test_kernel_module(self): |
30 | cmds = [ | 30 | cmds = [ |
31 | 'cd /usr/src/kernel && make scripts', | 31 | 'cd /usr/src/kernel && make scripts prepare', |
32 | 'cd /tmp && make', | 32 | 'cd /tmp && make', |
33 | 'cd /tmp && insmod hellomod.ko', | 33 | 'cd /tmp && insmod hellomod.ko', |
34 | 'lsmod | grep hellomod', | 34 | 'lsmod | grep hellomod', |
diff --git a/meta/recipes-kernel/linux/kernel-devsrc.bb b/meta/recipes-kernel/linux/kernel-devsrc.bb index c1b5b7786d..8bbfa23e4b 100644 --- a/meta/recipes-kernel/linux/kernel-devsrc.bb +++ b/meta/recipes-kernel/linux/kernel-devsrc.bb | |||
@@ -69,6 +69,13 @@ do_install() { | |||
69 | cp ${B}/arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o | 69 | cp ${B}/arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o |
70 | fi | 70 | fi |
71 | 71 | ||
72 | # Remove fixdep/objtool as they won't be target binaries | ||
73 | for i in fixdep objtool; do | ||
74 | if [ -e $kerneldir/tools/objtool/$i ]; then | ||
75 | rm -rf $kerneldir/tools/objtool/$i | ||
76 | fi | ||
77 | done | ||
78 | |||
72 | chown -R root:root ${D} | 79 | chown -R root:root ${D} |
73 | } | 80 | } |
74 | # Ensure we don't race against "make scripts" during cpio | 81 | # Ensure we don't race against "make scripts" during cpio |