From e6ff4eb1d6683e967e4ef81bf5b42a087a47f6d5 Mon Sep 17 00:00:00 2001 From: Jon Mason Date: Thu, 14 May 2020 21:36:20 -0400 Subject: [PATCH] arm-toolchain: gcc-arm-none-eabi-native: Add recipe Adds a recipe to pull down the prebuilt GCC for compiling on Cortex-R and Cortex-M processors from ARM. This toolchain is required to build Arm Trusted Firmware for the Rockchip rk3399 SoC, since it must compile some firmware for the M0 coprocessor. This was originally taken from meta-rockchip, but has been modified from mailing list feedback. Signed-off-by: Joshua Watt Signed-off-by: Jon Mason Signed-off-by: Denys Dmytriyenko Reviewed-by: Diego Sueiro Signed-off-by: Jon Mason --- .../gcc-arm-none-eabi_9-2019-q4-major.bb | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb new file mode 100644 index 00000000..84f6dbab --- /dev/null +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/gcc-arm-none-eabi_9-2019-q4-major.bb @@ -0,0 +1,39 @@ +# Copyright (C) 2019 Garmin Ltd. or its subsidiaries +# Released under the MIT license (see COPYING.MIT for the terms) + +SUMMARY = "Baremetal GCC for ARM-R and ARM-M processors" +LICENSE = "GPL-3.0-with-GCC-exception & GPLv3" + +LIC_FILES_CHKSUM = "file://share/doc/gcc-arm-none-eabi/license.txt;md5=c18349634b740b7b95f2c2159af888f5" + +PROVIDES = "virtual/arm-none-eabi-gcc" + +SRC_URI = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/${BPN}-${PV}-x86_64-linux.tar.bz2" + +SRC_URI[md5sum] = "fe0029de4f4ec43cf7008944e34ff8cc" +SRC_URI[sha256sum] = "bcd840f839d5bf49279638e9f67890b2ef3a7c9c7a9b25271e83ec4ff41d177a" + +S = "${WORKDIR}/${BPN}-${PV}" + +COMPATIBLE_HOST = "x86_64.*-linux" + +do_install() { + install -d ${D}${datadir}/arm-none-eabi/ + cp -r ${S}/. ${D}${datadir}/arm-none-eabi/ + + install -d ${D}${bindir} + # Symlink all executables into bindir + for f in ${D}${datadir}/arm-none-eabi/bin/arm-none-eabi-*; do + lnr $f ${D}${bindir}/$(basename $f) + done +} + +FILES_${PN} = "${datadir} ${bindir}" + +INSANE_SKIP_${PN} = "already-stripped libdir staticdev file-rdeps" + +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +BBCLASSEXTEND = "native nativesdk"