From cb3de34a28cde3f9ebd52ba842da9f91c6f0fa66 Mon Sep 17 00:00:00 2001 From: Marco Felsch Date: Fri, 11 Oct 2024 14:01:12 +0200 Subject: [PATCH] barebox-tools: add initial barebox tools support Add initial support to build the barebox tools for the host and the target. Some of the tools are generic barebox utilities (like 'bareboximd' for image meta data inspection or 'bareboxenv' for accessing the barebox environment) some are SoC family-specific specific utilities (like 'imx-usb-loader' or 'omap3-usb-loader'). Signed-off-by: Marco Felsch Signed-off-by: Enrico Jorns Signed-off-by: Richard Purdie --- meta/conf/distro/include/maintainers.inc | 1 + .../barebox/barebox-tools_2024.08.0.bb | 59 +++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 meta/recipes-bsp/barebox/barebox-tools_2024.08.0.bb diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index 0fd6c14658d..b5297862149 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -55,6 +55,7 @@ RECIPE_MAINTAINER:pn-avahi = "Yi Zhao " RECIPE_MAINTAINER:pn-babeltrace = "Alexander Kanavin " RECIPE_MAINTAINER:pn-babeltrace2 = "Alexander Kanavin " RECIPE_MAINTAINER:pn-barebox = "Enrico Jörns " +RECIPE_MAINTAINER:pn-barebox-tools = "Enrico Jörns " RECIPE_MAINTAINER:pn-baremetal-helloworld = "Alejandro Hernandez " RECIPE_MAINTAINER:pn-base-files = "Anuj Mittal " RECIPE_MAINTAINER:pn-base-passwd = "Anuj Mittal " diff --git a/meta/recipes-bsp/barebox/barebox-tools_2024.08.0.bb b/meta/recipes-bsp/barebox/barebox-tools_2024.08.0.bb new file mode 100644 index 00000000000..ed49ce5373f --- /dev/null +++ b/meta/recipes-bsp/barebox/barebox-tools_2024.08.0.bb @@ -0,0 +1,59 @@ +SUMMARY = "barebox bootloader tools" +HOMEPAGE = "https://barebox.org/" +SECTION = "bootloaders" + +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=f5125d13e000b9ca1f0d3364286c4192" + +DEPENDS = "bison-native flex-native libusb1" + +SRC_URI = "https://barebox.org/download/barebox-${PV}.tar.bz2" +SRC_URI[sha256sum] = "b08a762da8d63dd18b4f2d9f5d0a8da001b6e608d1b3eff6dcebc6a2e575d535" + +S = "${WORKDIR}/barebox-${PV}" +B = "${WORKDIR}/build" + +inherit pkgconfig + +EXTRA_OEMAKE = " \ + ARCH=sandbox \ + CROSS_COMPILE=${TARGET_PREFIX} -C ${S} O=${B} \ + CROSS_PKG_CONFIG=pkg-config \ + CC='${CC}' \ + LD='${LD}' \ + " + +do_compile:class-target () { + export userccflags="${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" + export userldflags="${TARGET_LDFLAGS}${TOOLCHAIN_OPTIONS}" + oe_runmake targettools_defconfig + oe_runmake scripts +} + +do_compile:class-native () { + oe_runmake hosttools_defconfig + oe_runmake scripts +} + +BAREBOX_TOOLS = " \ + bareboxenv \ + bareboxcrc32 \ + kernel-install \ + bareboximd \ + omap3-usb-loader \ + omap4_usbboot \ + imx/imx-usb-loader \ + " + +BAREBOX_TOOLS_SUFFIX = "" +BAREBOX_TOOLS_SUFFIX:class-target = "-target" + +do_install () { + install -d ${D}${bindir} + + for tool in ${BAREBOX_TOOLS}; do + install -m 0755 scripts/${tool}${BAREBOX_TOOLS_SUFFIX} ${D}${bindir}/${tool##*/} + done +} + +BBCLASSEXTEND = "native nativesdk" -- 2.47.3