From a29371848deda618a42f9a30f9856a44c2342fe6 Mon Sep 17 00:00:00 2001 From: Andre McCurdy Date: Tue, 22 Dec 2015 16:12:53 -0800 Subject: kernel-yocto.bbclass: move do_kernel_link_vmlinux() into kernel.bbclass Move do_kernel_link_vmlinux() from kernel-yocto.bbclass into kernel.bbclass so that it's available to any kernel recipe. Note that the task is not enabled by default in kernel-yocto.bbclass, so don't enable by default in kernel.bbclass either. To enable, see the example in linux-yocto.inc, ie: addtask kernel_link_vmlinux after do_compile before do_install Signed-off-by: Andre McCurdy Signed-off-by: Richard Purdie --- meta/classes/kernel.bbclass | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'meta/classes/kernel.bbclass') diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 5c3287bb98..dee6f7db24 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -417,6 +417,18 @@ python split_kernel_packages () { do_split_packages(d, root='/lib/firmware', file_regex='^(.*)\.(bin|fw|cis|dsp)$', output_pattern='kernel-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='') } +# Many scripts want to look in arch/$arch/boot for the bootable +# image. This poses a problem for vmlinux based booting. This +# task arranges to have vmlinux appear in the normalized directory +# location. +do_kernel_link_vmlinux() { + if [ ! -d "${B}/arch/${ARCH}/boot" ]; then + mkdir ${B}/arch/${ARCH}/boot + fi + cd ${B}/arch/${ARCH}/boot + ln -sf ../../../vmlinux +} + do_strip() { if [ -n "${KERNEL_IMAGE_STRIP_EXTRA_SECTIONS}" ]; then if [ "${KERNEL_IMAGETYPE}" != "vmlinux" ]; then -- cgit v1.2.3