1
0
mirror of https://git.yoctoproject.org/meta-arm synced 2026-01-12 03:10:15 +00:00
Denys Dmytriyenko af69667215 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 20:59:29 -04:00
2022-06-22 12:10:34 -04:00
2022-02-22 12:34:31 +00:00
2019-11-15 11:19:35 -05:00
2021-09-20 11:01:24 -04:00

Introduction

This repository contains the Arm layers for OpenEmbedded.

  • meta-arm

    This layer contains general recipes for the Arm architecture, such as firmware, FVPs, and Arm-specific integration.

  • meta-arm-autonomy

    This layer is the distribution for a reference stack for autonomous systems.

  • meta-arm-bsp

    This layer contains machines for Arm reference platforms, for example FVP Base, N1SDP, and Juno.

  • meta-arm-toolchain

    This layer contains recipes for Arm's binary toolchains (GCC and Clang for -A and -M), and a recipe to build Arm's GCC.

  • meta-atp

    This layer contains recipes for the Adaptive Traffic Generation integration into meta-gem5.

  • meta-gem5

    This layer contains recipes and machines for gem5, a system-level and processor simulator.

Other Directories

  • ci

    This directory contains gitlab continuous integration configuration files (KAS yaml files) as well as scripts needed for this

  • kas

    This directory contains KAS yaml files to describe builds for systems not used in CI

  • scripts

    This directory contains scripts used in running the CI tests

Contributing

Currently, we only accept patches from the meta-arm mailing list. For general information on how to submit a patch, please read https://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded

E-mail meta-arm@lists.yoctoproject.org with patches created using this process. You can configure git-send-email to automatically use this address for the meta-arm repository with the following git command:

$ git config --local --add sendemail.to meta-arm@lists.yoctoproject.org

Commits and patches added should follow the OpenEmbedded patch guidelines:

https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines

The component being changed in the shortlog should be prefixed with the layer name (without the meta- prefix), for example:

arm-bsp/trusted-firmware-a: decrease frobbing level

arm-toolchain/gcc: enable foobar v2

Reporting bugs

E-mail meta-arm@lists.yoctoproject.org with the error encountered and the steps to reproduce the issue.

Maintainer(s)

Description
No description provided
Readme 10 MiB
Languages
BitBake 68.9%
Python 24.2%
HTML 2%
Shell 1.8%
Jinja 1.4%
Other 1.7%