From ff5baed721accd06b0bf3a2c87afbb86a57c65bd Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Fri, 6 Nov 2015 10:21:57 +0200 Subject: tibidabo: fix u-boot build Include u-boot.inc from oe/dora to build the old tibidabo u-boot correctly. Change-Id: I3140afcaab2de3c2add77918f2304209f457acf4 Reviewed-by: Teemu Holappa --- .../recipes/u-boot/u-boot-fslc_2013.10.bb | 4 +- meta-architech-extras/recipes/u-boot/u-boot.inc | 88 ++++++++++++++++++++++ 2 files changed, 90 insertions(+), 2 deletions(-) create mode 100644 meta-architech-extras/recipes/u-boot/u-boot.inc diff --git a/meta-architech-extras/recipes/u-boot/u-boot-fslc_2013.10.bb b/meta-architech-extras/recipes/u-boot/u-boot-fslc_2013.10.bb index 73d4371..8c86b4c 100644 --- a/meta-architech-extras/recipes/u-boot/u-boot-fslc_2013.10.bb +++ b/meta-architech-extras/recipes/u-boot/u-boot-fslc_2013.10.bb @@ -1,4 +1,4 @@ -require recipes-bsp/u-boot/u-boot.inc +require u-boot.inc LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb" @@ -11,7 +11,7 @@ PROVIDES += "u-boot" PV = "v2013.10" SRCREV = "079e214888279518ce061c71238a74a0c3db2c28" -SRC_URI = "git://github.com/Freescale/u-boot-imx.git" +SRC_URI = "git://github.com/Freescale/u-boot-imx.git;branch=patches-2013.10" S = "${WORKDIR}/git" diff --git a/meta-architech-extras/recipes/u-boot/u-boot.inc b/meta-architech-extras/recipes/u-boot/u-boot.inc new file mode 100644 index 0000000..ae215cd --- /dev/null +++ b/meta-architech-extras/recipes/u-boot/u-boot.inc @@ -0,0 +1,88 @@ +DESCRIPTION = "U-Boot - the Universal Boot Loader" +HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome" +SECTION = "bootloaders" +PROVIDES = "virtual/bootloader" + +inherit uboot-config deploy + +EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS}"' + +# Allow setting an additional version string that will be picked up by the +# u-boot build system and appended to the u-boot version. If the .scmversion +# file already exists it will not be overwritten. +UBOOT_LOCALVERSION ?= "" + +# Some versions of u-boot use .bin and others use .img. By default use .bin +# but enable individual recipes to change this value. +UBOOT_SUFFIX ?= "bin" +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" +UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}" +UBOOT_MAKE_TARGET ?= "all" + +# Some versions of u-boot build an SPL (Second Program Loader) image that +# should be packaged along with the u-boot binary as well as placed in the +# deploy directory. For those versions they can set the following variables +# to allow packaging the SPL. +SPL_BINARY ?= "" +SPL_IMAGE ?= "${SPL_BINARY}-${MACHINE}-${PV}-${PR}" +SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" + +do_compile () { + if [ "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then + sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' config.mk + fi + + unset LDFLAGS + unset CFLAGS + unset CPPFLAGS + + if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ] + then + echo ${UBOOT_LOCALVERSION} > ${B}/.scmversion + echo ${UBOOT_LOCALVERSION} > ${S}/.scmversion + fi + + oe_runmake ${UBOOT_MACHINE} + oe_runmake ${UBOOT_MAKE_TARGET} +} + +do_install () { + install -d ${D}/boot + install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} + ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} + + if [ -e ${WORKDIR}/fw_env.config ] ; then + install -d ${D}${sysconfdir} + install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config + fi + + if [ "x${SPL_BINARY}" != "x" ] + then + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} + fi +} + +FILES_${PN} = "/boot ${sysconfdir}" +FILESPATH =. "${FILE_DIRNAME}/u-boot-git/${MACHINE}:" + +do_deploy () { + install -d ${DEPLOYDIR} + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} + + cd ${DEPLOYDIR} + rm -f ${UBOOT_BINARY} ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_BINARY} + + if [ "x${SPL_BINARY}" != "x" ] + then + install ${S}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE} + rm -f ${DEPLOYDIR}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_SYMLINK} + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} + fi +} + +addtask deploy before do_build after do_compile -- cgit v1.2.3-54-g00ecf