kernel: Permit overriding of KERNEL_IMAGETYPE_FOR_MAKE

Commit a1690131691507bbf5853540229b3ad775b836bf removed the ability of
recipes to set KERNEL_IMAGETYPE_FOR_MAKE. Fix that by letting recipes
continue to set their own KERNEL_IMAGETYPE_FOR_MAKE if they so wish.
They may have been doing so for a while, and don't want to have their
carefully-selected value trampled on by kernel.bbclass.

This may be required if the recipe itself wants to build one type of
kernel, but post-process it into a different type, rather like the
vmlinux->vmlinux.gz support provided by kernel.bbclass.

(From OE-Core rev: 38abd26fe7de321e0f1fc4895f754f34dee90f6c)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mike Crowe
2018-05-02 17:02:34 +01:00
committed by Richard Purdie
parent b7fd23f883
commit 0ef7994fd0

View File

@@ -69,11 +69,12 @@ python __anonymous () {
types = (alttype + ' ' + types).strip()
d.setVar('KERNEL_IMAGETYPES', types)
# some commonly used kernel images aren't generated by the kernel build system, such as vmlinux.gz
# typeformake lists only valid kernel make targets, and post processing can be done after the kernel
# is built (such as using gzip to compress vmlinux)
typeformake = types.replace('vmlinux.gz', 'vmlinux')
d.setVar('KERNEL_IMAGETYPE_FOR_MAKE', typeformake)
if not d.getVar('KERNEL_IMAGETYPE_FOR_MAKE'):
# some commonly used kernel images aren't generated by the kernel build system, such as vmlinux.gz
# typeformake lists only valid kernel make targets, and post processing can be done after the kernel
# is built (such as using gzip to compress vmlinux)
typeformake = types.replace('vmlinux.gz', 'vmlinux')
d.setVar('KERNEL_IMAGETYPE_FOR_MAKE', typeformake)
for type in types.split():
typelower = type.lower()