mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2025-12-16 15:25:53 +01:00
kernel bbclass: merge in yocto changes
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
This commit is contained in:
parent
e4c4b805c4
commit
04a29595e9
|
|
@ -40,8 +40,8 @@ HOST_CC_KERNEL_ARCH ?= "${TARGET_CC_KERNEL_ARCH}"
|
|||
TARGET_LD_KERNEL_ARCH ?= ""
|
||||
HOST_LD_KERNEL_ARCH ?= "${TARGET_LD_KERNEL_ARCH}"
|
||||
|
||||
KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc${KERNEL_CCSUFFIX} ${HOST_CC_KERNEL_ARCH}"
|
||||
KERNEL_LD = "${LD}${KERNEL_LDSUFFIX} ${HOST_LD_KERNEL_ARCH}"
|
||||
KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc${KERNEL_CCSUFFIX} ${HOST_CC_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
|
||||
KERNEL_LD = "${LD}${KERNEL_LDSUFFIX} ${HOST_LD_KERNEL_ARCH}${TOOLCHAIN_OPTIONS}"
|
||||
|
||||
# Where built kernel lies in the kernel tree
|
||||
KERNEL_OUTPUT ?= "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
|
||||
|
|
@ -178,7 +178,7 @@ kernel_do_install() {
|
|||
scripts/ihex2fw scripts/kallsyms scripts/pnmtologo scripts/basic/docproc \
|
||||
scripts/basic/fixdep scripts/basic/hash scripts/dtc/dtc \
|
||||
scripts/genksyms/genksyms scripts/kconfig/conf scripts/mod/mk_elfconfig \
|
||||
scripts/mod/modpost"
|
||||
scripts/mod/modpost scripts/recordmcount"
|
||||
rm -rf $kerneldir/scripts/*.o
|
||||
rm -rf $kerneldir/scripts/basic/*.o
|
||||
rm -rf $kerneldir/scripts/kconfig/*.o
|
||||
|
|
@ -190,7 +190,7 @@ kernel_do_install() {
|
|||
}
|
||||
|
||||
sysroot_stage_all_append() {
|
||||
sysroot_stage_dir ${D}/kernel ${SYSROOT_DESTDIR}${STAGING_KERNEL_DIR}
|
||||
sysroot_stage_dir ${D}/kernel ${SYSROOT_DESTDIR}/kernel
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -446,7 +446,7 @@ python populate_packages_prepend () {
|
|||
metapkg = "kernel-modules"
|
||||
bb.data.setVar('ALLOW_EMPTY_' + metapkg, "1", d)
|
||||
bb.data.setVar('FILES_' + metapkg, "", d)
|
||||
blacklist = [ 'kernel-dev', 'kernel-image', 'kernel-base', 'kernel-vmlinux' ]
|
||||
blacklist = [ 'kernel-dev', 'kernel-image', 'kernel-base', 'kernel-vmlinux', 'perf' ]
|
||||
for l in module_deps.values():
|
||||
for i in l:
|
||||
pkg = module_pattern % legitimize_package_name(re.match(module_regex, os.path.basename(i)).group(1))
|
||||
|
|
@ -477,24 +477,28 @@ do_sizecheck() {
|
|||
addtask sizecheck before do_install after do_compile
|
||||
|
||||
KERNEL_IMAGE_BASE_NAME ?= "${KERNEL_IMAGETYPE}-${PV}-${PR}-${MACHINE}-${DATETIME}"
|
||||
# Don't include the DATETIME variable in the sstate package signatures
|
||||
KERNEL_IMAGE_BASE_NAME[vardepsexclude] = "DATETIME"
|
||||
KERNEL_IMAGE_SYMLINK_NAME ?= "${KERNEL_IMAGETYPE}-${MACHINE}"
|
||||
|
||||
do_deploy() {
|
||||
kernel_do_deploy() {
|
||||
install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
|
||||
if (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
|
||||
tar -cvzf ${DEPLOYDIR}/modules-${KERNEL_VERSION}-${PR}-${MACHINE}.tgz -C ${D} lib
|
||||
fi
|
||||
|
||||
if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then
|
||||
if test -e arch/${ARCH}/boot/compressed/vmlinux ; then
|
||||
if test -e arch/${ARCH}/boot/uImage ; then
|
||||
cp arch/${ARCH}/boot/uImage ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
|
||||
elif test -e arch/${ARCH}/boot/compressed/vmlinux ; then
|
||||
${OBJCOPY} -O binary -R .note -R .comment -S arch/${ARCH}/boot/compressed/vmlinux linux.bin
|
||||
uboot-mkimage -A ${ARCH} -O linux -T kernel -C none -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${DEPLOYDIR}/uImage-${PV}-${PR}-${MACHINE}-${DATETIME}.bin
|
||||
uboot-mkimage -A ${ARCH} -O linux -T kernel -C none -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
|
||||
rm -f linux.bin
|
||||
else
|
||||
${OBJCOPY} -O binary -R .note -R .comment -S vmlinux linux.bin
|
||||
rm -f linux.bin.gz
|
||||
gzip -9 linux.bin
|
||||
uboot-mkimage -A ${ARCH} -O linux -T kernel -C gzip -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin.gz ${DEPLOYDIR}/uImage-${PV}-${PR}-${MACHINE}-${DATETIME}.bin
|
||||
uboot-mkimage -A ${ARCH} -O linux -T kernel -C gzip -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin.gz ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
|
||||
rm -f linux.bin.gz
|
||||
fi
|
||||
fi
|
||||
|
|
@ -507,6 +511,8 @@ do_deploy[dirs] = "${DEPLOYDIR} ${B}"
|
|||
|
||||
addtask deploy before do_package after do_install
|
||||
|
||||
EXPORT_FUNCTIONS do_deploy
|
||||
|
||||
# perf must be enabled in individual kernel recipes
|
||||
PACKAGES =+ "perf"
|
||||
FILES_perf = "${bindir}/* \
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user