1
0
mirror of https://git.yoctoproject.org/meta-arm synced 2026-07-26 19:17:05 +00:00

69 Commits

Author SHA1 Message Date
Jon Mason 9fa8d0d0d0 arm-toolchain/gcc-aarch64-none-elf: upgrade to 12.3.rel1
Upgrade the 12.2 recipe to 12.3.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2023-08-07 12:00:47 -04:00
Ross Burton 0e043288fd arm-toolchain/gcc-arm-none-eabi: upgrade to 12.3.rel1
Upgrade the 12.2 recipe to 12.3.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2023-08-03 08:27:08 +01:00
Ross Burton 8d42065f41 arm-toolchain/gcc-arm-none-eabi-11.2: add new recipe
Add back the 11.2 release of GCC, because TF-M has code generation
problems with 11.3 onwards.

This recipe has the major version embedded in the recipe name so that it
has to be specifically asked for in a per-recipe basis.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2023-08-03 08:27:08 +01:00
Ross Burton 65504a799d arm-toolchain/arm-binary-toolchain: install to a versioned directory
So that it's obvious which version of GCC is being used, install the
files into a versioned directory under $libexecdir.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2023-08-03 08:27:08 +01:00
Ross Burton 938bbe9837 arm-toolchain/androidclang: remove
This was added to build an Android Common Kernel with the Android
compiler, but we don't need to build that anymore.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2023-08-03 08:27:08 +01:00
Ross Burton a64fb4a40d toolchain: remove pointless provides
Signed-off-by: Jon Mason <jon.mason@arm.com>
2023-07-18 09:16:16 -04:00
Claus Stovgaard 3fcafa3a94 arm-toolchain/gcc: Workaround for missing libcrypt
gcc-arm-none-eabi and gcc-aarch64-none-elf both fails when packaged as
RPM for sdk with

nothing provides libcrypt.so.1()(64bit) needed by nativesdk-gcc-arm-none-eabi-12.2.rel1-r0.x86_64_nativesdk

As we don't control the dependencies for prebuilt libraries we create a
workaround by skipping the FILEDEPS

Signed-off-by: Claus Stovgaard <claus.stovgaard@gmail.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2023-06-06 14:01:56 -04:00
Jon Mason 9166b5deee external-arm-toolchain: Enable 12.2.rel1 support
Enable support for 12.2.rel1 binary toolchain release

Signed-off-by: Jon Mason <jon.mason@arm.com>
2023-01-20 10:00:09 -05:00
Denys Dmytriyenko 261263a670 arm-toolchain/gcc,external-arm-toolchain: resolve conflict with gcc headers
Historically external-arm-toolchain recipe packaged all gcc headers from
${libdir}/gcc/${TARGET_SYS}/${BINV}/include - some would be picked up by
packages like gcc-sanitizers, libssp-dev. libquadmath-dev or libgomp-dev.
The rest would fall into catch-all libgcc-dev package.

Unfortunately, that could result in a conflict with a target gcc, which
also packages some of those files, like unwind.h or stddef.h, among others.

The conflict could be seen with this config:

EXTRA_IMAGE_FEATURES += "dev-pkgs tools-sdk"
TCMODE = "external-arm"
EXTERNAL_TOOLCHAIN = "/OE/toolchains/gcc-arm-11.2-2022.02-x86_64-aarch64-none-linux-gnu"

And the error message is:

Error: Transaction test error:
  file /usr/lib/gcc/aarch64-poky-linux/11.2.1/include/stddef.h conflicts between attempted installs of libgcc-s-dev-11.2.1-r0.1.cortexa57 and gcc-arm+11.2-r2022.02.1.cortexa57
  file /usr/lib/gcc/aarch64-poky-linux/11.2.1/include/unwind.h conflicts between attempted installs of libgcc-s-dev-11.2.1-r0.1.cortexa57 and gcc-arm+11.2-r2022.02.1.cortexa57

Modify external-arm-toolchain recipe according to how libgcc in OE-Core
handles those header files by removing and not packaging them:

https://git.openembedded.org/openembedded-core/tree/meta/recipes-devtools/gcc/libgcc-common.inc#n40

Also need to adjust gcc recipe to pick up unwind.h from EXTERNAL_TOOLCHAIN
location now, since libgcc-dev no longer carries it, and install it into
STAGING_LIBDIR_NATIVE, where OE-Core gcc-target.inc expects it from
gcc-cross:

https://git.openembedded.org/openembedded-core/tree/meta/recipes-devtools/gcc/gcc-target.inc#n164

Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-09-10 12:48:13 -04:00
Ross Burton 7013204337 arm-toolchain/androidclang: move to libexecdir
Binaries shouldn't be in datadir, and now the RPATHs are being cleared
we can put them in libexecdir.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-06-16 08:00:07 -04:00
Ross Burton c4041b667d arm-toolchain/androidclang: strip meaningless RPATHS
As per [1], target builds of androidclang produce useless-rpath errors.

/usr/share/clang-r416183b/python3/lib/python3.9/lib-dynload/_posixsubprocess.cpython-39-x86_64-linux-gnu.so
contains probably-redundant RPATH /../lib [useless-rpaths]

Those RPATHs are of no use, so we can remove them entirely.

[1] https://errors.yoctoproject.org/Errors/Details/640604/

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-06-16 08:00:07 -04:00
Ross Burton 24c4cfa2aa arm-toolchain/armcompiler: remove recipe
As far as we know nobody is actually using the Arm Compiler recipe: 6.17
does a network operation on every call to check the license and this
fails with the network isolation that do_compile has in kirkstone, and
6.18 is behind a loginwall so we cannot download it in a recipe.

Unless we have actual users asking for a recipe, remove it from the layer
to avoid confusion.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-06-08 06:00:13 -04:00
Ross Burton 7007a9c0ea arm-toolchain/gcc-arm-none-eabi: upgrade to 11.2-2022.02
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-06-08 06:00:09 -04:00
Ross Burton 5c9017f7fd arm-toolchain/gcc-aarch64-none-elf: upgrade to 11.2
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-06-08 06:00:09 -04:00
Ross Burton a52f85a2af Revert "arm-toolchain/external-arm-toolchain: set the version in the recipe"
This reverts commit ac83feb7cd.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-05-18 08:00:09 -04:00
Ross Burton 16fe716dc6 Revert "arm-toolchain/external-arm-toolchain: add back 10.3"
This reverts commit 5fec85b41d.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-05-18 08:00:09 -04:00
Ross Burton 5fec85b41d arm-toolchain/external-arm-toolchain: add back 10.3
Add back the 10.3 release of external-arm-toolchain.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-05-17 09:39:12 -04:00
Ross Burton ac83feb7cd arm-toolchain/external-arm-toolchain: set the version in the recipe
We need to support multiple versions of external-arm-toolchain, partly as
different versions have different layouts on disk, and partly because
11.2 doesn't work on pre-Broadwell hardware.

Rename this recipe so the version is in the filename, and dynamically
set PKGV instead of PV so PREFERRED_VERSION is easier to use.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-05-17 09:39:12 -04:00
Ross Burton c65eed7160 arm-toolchain/arm-binary-toolchain: ensure toolchains don't provide any system libraries
Use PRIVATE_LIBS to ensure that the Arm binary toolchains don't provide
their own libraries to the entire system.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-05-06 09:29:50 -04:00
Sumit Garg 50b34c5cc9 external-arm-toolchain: Add support for Arm GCC 11.2 binary release
Arm GCC 11.2 binary release has completely changed the way how libc was
packaged in earlier binary releases. So adjust do_install() accordingly
to support Arm GCC 11.2 as well as earlier binary releases.

Along with this update CI as well to point at Arm GCC 11.2 binary
releases.

Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Reviewed-by: Denys Dmytriyenko <denis@denix.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-04-29 13:14:01 -04:00
Ross Burton 698e053663 arm-toolchain/gcc-aarch64-none-elf: remove redundant LIC_FILES_CHKSUM
Setting LIC_FILES_CHKSUM with some anonymous Python to dynamically fetch
the right checksum is pointless when the right values are assigned with
overrides in the first place.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-04-22 11:31:25 -04:00
Ross Burton a92e076973 arm-toolchain/external-arm-toolchain: install to libexecdir not datadir
$datadir is for architecture-independent files, and a compiler is not
that.

Install to $libexecdir, and clean up the installation commands whilst
there.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-04-06 21:51:59 -04:00
Khem Raj 3fbb255aa7 androidclang: Skip useless-rpaths check
This is a prebuilt stuff, better to ignore its guts.

Fixes
androidclang: /usr/share/clang-r416183b/python3/lib/python3.9/lib-dynload/_posixsubprocess.cpython-39-x86_64-linux-gnu.so contains probably-redundant RPATH /../lib [useless-rpaths]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-03-01 09:30:27 -05:00
Ross Burton 74bd32b2e6 arm-toolchain/external-arm-toolchain: fix missing license updates
Commit 53a40b1 updates the license names to use the SPDX terms, but as
intermediate variables are used in this recipe a few instances were
missed.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2022-02-23 13:39:22 +00:00
Martin Jansa 53a40b1518 meta: update license names
* openembedded-core/scripts/contrib/convert-spdx-licenses.py .
  ...
  All files processed with version 0.01

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
2022-02-22 14:05:46 +00:00
Ross Burton 479aaa7bfb Update for LICENSE_FLAGS_WHITELIST rename to _ACCEPTED.
LICENSE_FLAGS_WHITELIST has been renamed to LICENSE_FLAGS_ACCEPTED in
oe-core master.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2022-02-22 12:34:31 +00:00
Ross Burton 558af689d5 arm-toolchain/gcc-arm-none-eabi: remove old 2020-q2 recipe
This was only used by Corstone 700, so is redundant now.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-01-24 12:00:08 -05:00
Usama Arif c4fb4f53cb arm-toolchain: Fetch prebuilt Android Clang, version r416183b
This Clang version is present in Android master
(as of October 8, 2021)

Signed-off-by: Usama Arif <usama.arif@arm.com>
Signed-off-by: Anders Dellien <anders.dellien@arm.com>
Change-Id: I957742ee943ef68119fd7c7e2bd8ee62b717b31c
2022-01-18 13:00:12 -05:00
Ross Burton 22b453f785 arm-toolchain: remove armcompiler-specific licenses
The Armcompiler-* licenses are specific to a single release of the
Arm Compiler, so remove them from the layer and use NO_GENERIC_LICENSE
to extract them from the source directly.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-01-06 08:59:22 -05:00
Ross Burton 07c7d2f948 arm-toolchain/armcompiler: upgrade to 6.17
Upgrade to the latest release, now based on Clang 14.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2022-01-06 08:59:22 -05:00
Ross Burton 6bc7edfe83 arm-toolchain: upgrade gcc-arm-none-eabi (GNU-RM) to 10.3-2021.10
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-11-12 11:12:01 -05:00
Ross Burton 2098ffd84a Remove use of deprecated lnr command
lnr is deprecated and will be removed soon, so replace it with `ln -rs`

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-11-12 11:10:20 -05:00
Ross Burton 6d5c14a64a arm-toolchain/gcc-aarch64-none-elf: upgrade to 10.3-2021.07
Change-Id: Ie58f448511ef4f1d23cfd4a9d1dc275f7a216a50
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-09-20 11:28:07 -04:00
Jon Mason 8dfdacd75c meta-arm: Convert to new override syntax
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-08-04 12:29:51 -04:00
Ross Burton 8ec7d455a6 arm-toolchain/armcompiler: add EULA comment
Change-Id: I9a46986f0ce23d60acc60a35a8b43d55cf6a512e
Signed-off-by: Ross Burton <ross.burton@arm.com>
2021-07-14 12:05:38 +01:00
Ross Burton 339420ae77 arm-toolchain/armcompiler: fix checksums and installation on arm64
The tarball has been regenerated with new license texts, so the
checksums are different.

Also, patch out the host architecture test in the installer: we might
want to package the armcompiler for a x86 target on a arm64 machine.

Change-Id: Iedf0113c53b6567e3e4e716e2a0db98776d1da6d
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-07-07 09:22:51 -04:00
Ben Horgan 40e3391fa5 arm-toolchain/gcc-aarch64-none-elf: Fix license checksums
Signed-off-by: Ben Horgan <ben.horgan@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-07-07 09:20:06 -04:00
Timothy Mertz af10576f9f external-arm-sdk-toolchain: Fix parsing error with INCOMPATIBLE_LICENSE
This change fixes parsing error that occurs when INCOMPATIBLE_LICENSE =
"GPLv3" by defining EAT_BFD_LICENSE, EAT_GDB_LICENSE and EAT_RLE_LICENSE
in license.inc and requiring it in external-arm-sdk-toolchain.bb

Definitions in external-arm-toolchain-versions.inc are made redundant so
they are removed.

Signed-off-by: Timothy Mertz <timothy.mertz@garmin.com>
Signed-off-by: Joshua Watt <Joshua.Watt@garmin.com>
Reviewed-by: Denys Dmytriyenko <denis@denix.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-06-30 10:58:15 -04:00
Ross Burton 07d28bbaea arm-toolchain/armcompiler: remove pointless PROVIDES
There is only one provider for the armcompiler, so remove the virtual
provider.

Change-Id: I3492c49f5cf6eb6f3d3156adb3d87e315ed8183d
Signed-off-by: Ross Burton <ross.burton@arm.com>
2021-05-11 15:30:21 +01:00
Ross Burton 427912d75a arm-toolchain/armcompiler: add upstream release checking
Change-Id: I2eb94f99a0c828a4d5f2f68756e83ebc1f6499c2
Signed-off-by: Ross Burton <ross.burton@arm.com>
2021-05-11 15:30:21 +01:00
Ross Burton 8af7923c94 arm-toolchain/external-arm-toolchain: inhibit build dependencies
These recipes don't build anything, so there's no need to depend on a
toolchain.

Change-Id: I49b641fb54839c30255a11a7c9d5798c8e4afd2a
Signed-off-by: Ross Burton <ross.burton@arm.com>
2021-05-11 15:30:21 +01:00
Jon Mason f619eb87f5 arm-toolchain/external-arm-toolchains: Update to the latest
Change-Id: Ifb5933b08acf13663c7a6231582ee21032b92327
Signed-off-by: Jon Mason <jon.mason@arm.com>
Acked-by: Sumit Garg <sumit.garg@linaro.org>
2021-05-07 00:08:56 -04:00
Ross Burton 9e2ff72858 arm-toolchain/external-arm-toolchains: add upstream checking information
Change-Id: I08168f5369eafb590d7cdbc972320c852d4252b3
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-01-07 10:55:12 -05:00
Sumit Garg eb3a6b74b7 external-arm-toolchain: Misc. fixup for GCC 10.2 support
Arm GCC 10.2 prebuilt toolchain comes with ldd and tzselect scripts
which uses "/usr/bin/bash", so replace this with "/bin/sh" as the
default shell.

Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-01-07 10:55:12 -05:00
Denys Dmytriyenko 804d3a5b68 external-arm-sdk-toolchain: add recipe to package gcc/gdb/binutils cross binaries
Allows re-use of prebuilt ARM toolchain binaries for SDK generation.

This code is upstreamed from meta-arago layer.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
[Sumit: package headers corresponding to EAT_TARGET_SYS and add PV]
Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-09-18 09:39:46 -04:00
Denys Dmytriyenko 38de27d05f external-arm-toolchain: check for TCLIBC being glibc
The old TARGET_OS check doesn't work, as it only checks for uclibc and musl at
the end, while TARGET_OS is usually "linux-musleabi", uclibc has been deprecated
and new options like "newlib" and "baremetal" were added. Plus it only works for
the target, but not SDK. Switch to simply checking for TCLIBC = glibc.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-08-14 15:55:31 +01:00
Ross Burton 76b639666e arm-toolchain/gcc-arm-none-eabi: support aarch64 hosts
This binary toolchain is also available for aarch64, so support fetching
that too.

Change-Id: I6206d8a9b4221d8461070d0cb7fff40c712c3df0
Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-07-17 09:03:04 -04:00
Ross Burton 984e0ff52e arm-toolchain/gcc-aarch64-none-elf: support aarch64 hosts
This binary toolchain is also available for aarch64, so support fetching
that too.

Change-Id: I788fcd95c30b97f095593059e85de9a99710be05
Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-07-17 09:02:59 -04:00
Ross Burton 35458c9665 arm-toolchain/arm-binary-toolchain: more QA skipping
When building nativesdk or target forms of these recipes more QA tests
are executed, which produce more warnings. As these recipes are quite
special, skip more tests:

- arch, as we ship ilp32 binaries in aarch64 packages
- dev-so, as the entire toolchain is put into a single package

Change-Id: Ib72b224749642c912278f0d5601fe04b30afc25f
Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-07-17 09:02:54 -04:00
Ross Burton f78868e169 arm-toolchain/recipes-devtools: move compatible host assignments
Some of the toolchains are available in more than just x86-64, so move
the COMPATIBLE_HOST assignment out of the include and into the recipes.

Change-Id: I10977593935bc7dc50196132d43541aed585cc18
Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-07-17 09:02:50 -04:00