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)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2018-03-29 14:02:20 +01:00
parent 3a51d2c808
commit 0f85563eac
3 changed files with 10 additions and 2 deletions

View File

@ -28,7 +28,7 @@ class KernelModuleTest(OERuntimeTestCase):
@OETestDepends(['gcc.GccCompileTest.test_gcc_compile'])
def test_kernel_module(self):
cmds = [
'cd /usr/src/kernel && make scripts',
'cd /usr/src/kernel && make scripts prepare',
'cd /tmp && make',
'cd /tmp && insmod hellomod.ko',
'lsmod | grep hellomod',

View File

@ -69,6 +69,13 @@ do_install() {
cp ${B}/arch/powerpc/lib/crtsavres.o $kerneldir/arch/powerpc/lib/crtsavres.o
fi
# Remove fixdep/objtool as they won't be target binaries
for i in fixdep objtool; do
if [ -e $kerneldir/tools/objtool/$i ]; then
rm -rf $kerneldir/tools/objtool/$i
fi
done
chown -R root:root ${D}
}
# Ensure we don't race against "make scripts" during cpio

View File

@ -22,5 +22,6 @@ EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="
do_configure() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \
-C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts
-C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts prepare
}