From 11278e3b2c75be80645b9841763a97dbb35daadc Mon Sep 17 00:00:00 2001 From: Manjukumar Matha Date: Tue, 1 Jan 2019 21:48:17 -0800 Subject: u-boot.inc: Support menuconfig for u-boot u-boot mainline supports menuconfig, this patch enables menuconfig for u-boot using cml1. u-boot recipe in OE-core handles multi configuration of u-boot using UBOOT_CONFIG. Since we cannot determine on which u-boot config the menuconfig should run, the patch limits when UBOOT_CONFIG is not defined. Signed-off-by: Manjukumar Matha Signed-off-by: Richard Purdie --- meta/recipes-bsp/u-boot/u-boot.inc | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc index bbdbc25cfe..96c1f94011 100644 --- a/meta/recipes-bsp/u-boot/u-boot.inc +++ b/meta/recipes-bsp/u-boot/u-boot.inc @@ -5,7 +5,9 @@ B = "${WORKDIR}/build" PACKAGE_ARCH = "${MACHINE_ARCH}" -inherit uboot-config uboot-extlinux-config uboot-sign deploy +DEPENDS += "kern-tools-native" + +inherit uboot-config uboot-extlinux-config uboot-sign deploy cml1 DEPENDS += "swig-native python-native" @@ -66,6 +68,28 @@ UBOOT_EXTLINUX_INSTALL_DIR ?= "/boot/extlinux" UBOOT_EXTLINUX_CONF_NAME ?= "extlinux.conf" UBOOT_EXTLINUX_SYMLINK ?= "${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}-${PR}" +# returns all the elements from the src uri that are .cfg files +def find_cfgs(d): + sources=src_patches(d, True) + sources_list=[] + for s in sources: + if s.endswith('.cfg'): + sources_list.append(s) + + return sources_list + +do_configure () { + if [ -z "${UBOOT_CONFIG}" ]; then + if [ -n "${UBOOT_MACHINE}" ]; then + oe_runmake -C ${S} O=${B} ${UBOOT_MACHINE} + else + oe_runmake -C ${S} O=${B} oldconfig + fi + merge_config.sh -m .config ${@" ".join(find_cfgs(d))} + cml1_do_configure + fi +} + do_compile () { if [ "${@bb.utils.filter('DISTRO_FEATURES', 'ld-is-gold', d)}" ]; then sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' ${S}/config.mk @@ -105,7 +129,6 @@ do_compile () { done unset i else - oe_runmake -C ${S} O=${B} ${UBOOT_MACHINE} oe_runmake -C ${S} O=${B} ${UBOOT_MAKE_TARGET} fi -- cgit 1.2.3-korg