暂无描述

Christopher Larson 4010c28d61 sanity-external-toolchain.bbclass: pass HOST_CC_ARCH 3 年之前
classes 4010c28d61 sanity-external-toolchain.bbclass: pass HOST_CC_ARCH 3 年之前
conf 01e3b73e6d tcmode: use libtirpc-external 3 年之前
core ae9ad2e7f9 glibc-locale: quiet the same checks as external-toolchain.bbclass 3 年之前
lib 224bac7c2b oe.external: obey EXTERNAL_TOOLCHAIN_BIN 3 年之前
recipes-external f155ecc572 glibc-external: update SUPPORTED from current oe-core builds 3 年之前
recipes-sdk 26e7e8a719 Switch nativesdk-external-script to target 8 年之前
.gitignore 78ffebafc7 .gitignore: ignore *.pyc, *.pyo 8 年之前
README.md ec84c4680d Fix builds of the ppp recipe with most toolchains 7 年之前

README.md

OpenEmbedded/Yocto layer for the Sourcery G++ toolchain

Dependencies

  • openembedded-core layer, with a matching branch (i.e. master of oe-core and master of meta-sourcery).
  • bitbake, with a matching branch.
  • An installed Sourcery G++ toolchain
  • An existing build directory configured for this bitbake and openembedded-core.

Usage & Instructions

  • If it’s an ia32 toolchain, make sure you did not let it modify your PATH, and if you did, remove it.

This is necessary because the ia32 Sourcery G++ toolchain shipped non-prefixed binaries (e.g. gcc rather than i586-none-linux-gcc), which means bitbake would be unable to run the host’s gcc directly anymore.

  • Add the meta-sourcery layer to your BBLAYERS in conf/bblayers.conf. Please make certain that it is listed before the meta layer, as this ensures meta-sourcery gets priority over meta.
  • Set EXTERNAL_TOOLCHAIN = "/path/to/your/sourcery-g++-install" in conf/local.conf.
  • If the external toolchain was built with linux-libc-headers from the 4.8 Linux kernel or newer, set KERNEL_48_PATCH_REMOVE = "" in conf/local.conf to fix the build of the ppp recipe.

Optional Functionality

  • If the user chooses to, they may optionally decide to rebuild the Sourcery G++ glibc from source, if they have downloaded the corresponding source archive from Mentor Graphics. To so, set TCMODE = "external-sourcery-rebuild-libc", rather than relying on the default value of external-sourcery. After setting TCMODE appropriately, you must also set SOURCERY_SRC_FILE = "/path/to/your/sourcery-g++-source-tarball" or SOURCERY_SRC_URI = "http://some.domain/some-path".

Behavior

The meta-sourcery layer.conf automatically defines TCMODE for us. The tcmode performs a number of operations:

  • Sets TARGET_PREFIX appropriately, after determining what prefix is in use by the toolchain
  • Sanity checks EXTERNAL_TOOLCHAIN: does the path exist? does the expected sysroot exist?
  • Sets preferences so that external recipes are used in preference to building them from source, including cross recipes which link/wrap the toolchain cross binaries

Contributing

To contribute to this layer, please fork and submit pull requests to the github repository, or open issues for any bugs you find, or feature requests you have.

Maintainer

This layer is maintained by Mentor Graphics Corporation. Please direct all support requests for this layer to the GitHub repository issues interface.

To Do List

See TODO.md.