Modifies the optee recipes to all build out of tree. This is cleaner and
helps prevent build error from stale builds when dependencies change.
Also allows the elimination of the OPTEEOUTPUTMACHINE variable in
optee-os.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
There is no need to inherit nopackages. Even when the output binaries are being
consumed from deploy or sysroot, and the main binary package is not meant to be
installed in the rootfs, package generation is still useful for SDK use cases
and as a way to distribute sources (e.g. src.rpm/SRPM) in Distros.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Adds a patch to fix compiles with GCC 10 due to the way that libgcc
detects LSE support using __getauxval().
V2: Incorporate patch changes suggested by upstream
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
All SRC_URIs for trusted-firmware-a now use git and checksums are not needed.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
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 <JPEWhacker@gmail.com>
Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
While pycryptodome is a drop-in replacement for the old pycrypto module,
pycryptodomex uses a separate namespace to not confict with pycrypto.
Unfortunately, optee-os uses both namespaces, hence both variants of
pycryptodome and pycryptodomex are needed.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Some platforms expect canonical names, like bl31.bin, instead of bl31-<plat>.bin
Provide symlinks for those as well.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Installing and deploying .bin and .elf shouldn't be mutually exclusive.
There are scenarios where both can be useful - .bin for booting and .elf
for debugging.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Some platforms use Secure Payload Dispatcher - allow selecting one with TFA_SPD.
Official SPD description:
/*******************************************************************************
* This is the Secure Payload Dispatcher (SPD). The dispatcher is meant to be a
* plug-in component to the Secure Monitor, registered as a runtime service. The
* SPD is expected to be a functional extension of the Secure Payload (SP) that
* executes in Secure EL1. The Secure Monitor will delegate all SMCs targeting
* the Trusted OS/Applications range to the dispatcher. The SPD will either
* handle the request locally or delegate it to the Secure Payload. It is also
* responsible for initialising and maintaining communication with the SP.
******************************************************************************/
Clean other EXTRA_OEMAKE to remove leading space not needed with +=
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Some platforms can have multiple board configurations, passed as TARGET_BOARD=""
that also becomes an extra directory level in the build output hierarchy.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The ELF files produced are in a subdirectory named by the build target
(e.g. "bl31/bl31.elf") instead of the BUILD_PLAT directory.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Use the BUILD_BASE variable to specify an out-of-tree build. Eliminates
the need to set the TFA_BUILD_DIR.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Switch gem5 to use current HEAD version of the staging 20.0 branch to
solve compilation issues related to the move to python3
Create a link named python to python3 as some of gem5 python scripts
are looking for python and are compatible with both python2 and
python3.
Change-Id: I59256a8a6783a9614f5a2d5d760fada5bd6d0337
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
We don't want to build firmware blobs into the kernel binary. Also,
add linux-firmware-rtl8168 package to MACHINE_ESSENTIAL_EXTRA_RDEPENDS
to have it installed in any image by default.
Change-Id: If8a88a4ccbc6d474438a2555498989695a4b19dc
Issue-Id: SCM-954
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
To keep consistency with trusted-firmware-a and optee recipes we should
use softer assignment to "invalid" for COMPATIBLE_MACHINE.
Change-Id: I57d0b220d92c4546e0539f95a54d391935f995fc
Issue-Id: SCM-954
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields
in the various TF-A recipes to make them uniform and move the
do_compile_prepend to the inc file.
Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
xenguest-manager now can create guest partition
using compressed images like *.img.gz or *.img.bz2.
Change-Id: Ifaec0b7c301b2b316ebccdd0ca85083262f2714c
Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This patch includes the following changes for n1sdp:
* Add the Xen defconfig and early printk setting;
* Setting the proper Xen device-tree boot args;
* Remove some entries in xen devicetree (PM and SMMU) to make is
compatible with XEN and extra registers settings required for PCI
quirks to communicate with SCP.
Change-Id: Ic968728115787de8d9bfcaaf883fd8573ff6c9c9
Issue-Id: SCM-888
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The CONFIG_MD (Multiple Devices) and CONFIG_BLK_DEV_DM (Device Mapper)
kernel configs are needed for LVM2, so add them in xen-host.cfg to be
included in the kernel configuration for DOM0.
Change-Id: Ib5f4f4d767751615ee1239e95da7a7d56cbbc2dc
Issue-Id: SCM-996
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Update both machine configuration and kernel recipe to
support Linux Kernel device-tree compilation.
Change-Id: I01fa654bd88e0d2b7a4bfcc7cb60222c120a0473
Issue-Id: SCM-888
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
When calling `bitbake virtual/kernel -c menuconfig` it fails if the
ncurses-dev package is not installed on the host machine.
This patch makes usage of the ncurses library built by yocto if it
is present.
Change-Id: I261578f2934b225956e77ca4038a2df5603cc1b1
Issue-Id: SCM-888
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
- Add support for N1SDP platform.
- Build Linux 5.4 from linaro tree for N1SDP platform.
Change-Id: I12e5169da9c2bab946eb7e49fe6cc7bbb07d182b
Issue-Id: PLATFORMS-3134
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
- Add support to fetch and build linaro-arm linux version 5.4 for N1SDP platform
- Add addtional N1SDP specific changes as patches
- Include intree default config
Change-Id: I3b4cf4b1de509beaa3862e1cad37ec2d88b7054d
Issue-Id: PLATFORMS-3134
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com>
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
If the guest image copy fails we need to abort the do_image execution.
Change-Id: I3785a0828e271ed27eb7f9212804b5b9b39f79ac
Issue-Id: SCM-990
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Change Xen package to be machine specific.
This is solving issues encountered when building 2 projects with the
same xen configuration but different machines.
In that case one of the project did not have a xen binary in the deploy
directory.
Change-Id: I2575d91b57455ab690eec9c51e07415673242c06
Issue-Id: SCM-815
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
To reduce final image size, remove the kernel-modules package from
IMAGE_INSTALL.
Change-Id: I61d7d2ea87c3007af1c8f7b4917e9692a1f9e001
Issue-Id: SCM-813
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
When xen is in DISTRO_FEATURES no audio support is needed. This will
helps reducing the final image size.
Change-Id: I50d83cfe007c3f30a8303dcad66abb188559713c
Issue-Id: SCM-813
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
To reduce arm-autonomy-host images size we don't include the Kernel
image.
Change-Id: Ibcadf873fc71f3793b2824e5169a777ee8a0ece6
Issue-Id: SCM-813
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
When xen is in DISTRO_FEATURES we split the qemu package and install
only the qemu-xen with /usr/bin/qemu-system-i386 binary in the image
to reduce its size.
Change-Id: I460e959eb87a180b1baa5a11dbbe7df100d5e6a6
Issue-Id: SCM-813
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
All meta-arm-bsp machines specific settings should live at
meta-arm-autonomy/dynamic-layers/meta-arm-bsp/ and only be included if
meta-arm-bsp layer is present.
Change-Id: Ice8a301db85b5186384d602d9e3bedb909183320
Issue-Id: SCM-984
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Rework the initramfs support in xenguest FSTYPE to be compatible with
Dunfell and remove an error with non existing recipeinfo during build.
- remove initramfs support in FSTYPE and do_deploy function
- create a KERNEL CLASS to create a xenguest image containing the kernel
bundle with initramfs during kernel compilation (only done if FSTYPE
contain xenguest and initramfs bundle is activated)
- add kernel-xenguest to KERNEL_CLASSES when autonomy-guest
DISTRO_FEATURE is activated
- remove unused parameters from xenguest-image class
Change-Id: If163aa74a2bbbd4f22651abefe8d2ab4677e82b0
Issue-Id: SCM-990
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The do_deploy task depends on xen-devicetree:do_deploy in order to
include the generated xen dtbs in the firmware image.
To avoid dependency loop between firmware-image-juno:do_install,
xen:do_deploy and xen-devicetree:do_deploy when
INITRAMFS_IMAGE_BUNDLE = "1", we need to handle the xen and
xen-devicetree binaries copying in the do_deploy task.
Also Use OVERRIDES to minimize the usage of
"@bb.utils.contains('DISTRO_FEATURES', 'xen', ..."
Change-Id: I8da476435de73445fb6d895ec418d85861b8c46c
Issue-Id: SCM-990
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
- make xenguest-manage rdepend on xen-tools to adapt to recipe
modifications in meta-virtualization
- add xen to IMAGE_EXTRADEPENDS to build xen binary when build
autonomy-host-image
- switch arm64-autonomy-machine to use Linux 5.4
- remove trace patch for xen as meta-virtualization is now using a xen
release which has this fixed
- rework xen bbappends to adapt to changes done in xen recipes
Change-Id: I439bde0df2c0a16f529436b65f1a96af5a2981af
Issue-Id: SCM-833
Signed-off-by: Vineeth Raveendran <vineeth.raveendran@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Make following machines compatible with dunfell:
- foundation-armv8
- fvp-base
- juno
- gem5
Major changes include moving kernel version to 5.4 and U-BOOT version
to v2020
Change-Id: Ia59ac874de4e4c4ea02c7a4f976e39a9b6996f75
Issue-Id: SCM-833
Signed-off-by: Vineeth Raveendran <vineeth.raveendran@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
When building with INITRAMFS_IMAGE_BUNDLE set, there is a dependency
loop between trusted-firmware-a:do_install and virtual/kernel:do_deploy
since the trusted-firmware-a:do_install depends on the kernel dtb to be
passed to the fiptool to generate the fip.bin binary.
The kernel dtb is not mandatory to generate the fip.bin if we compile
the "dtbs" and "fip" targets which will include the in-tree device-tree
used for the --hw-config (HW_CONFIG property) dynamic configuration
during the cold boot.
Change-Id: I7147cc1eeecb7c4b66f198562163438b7b663eba
Issue-Id: SCM-990
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This patch includes several fixes for gem5-aarch64
- Switch to a new version of gem5 supporting python3 and use python3 to
build it.
We use a version in develop branch of gem5 for now and we will have to
switch to release 20 once it is released mid of may.
- Remove scons python2 recipes which were used before by gem5 as a
workaround until gem5 was updated to support python3
- make gem5-aarch64-bootloader only compatible with gem5-aarch64
- remove unnecessary FILESEXTRAPATHS_prepend in gem5-aarch64-bootloader
Change-Id: Iad9af4f2e6073ef63a51c2c33a05ed3855dd8f08
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Fixes following QA issue:
WARNING: external-arm-toolchain-2019.12-r0 do_package_qa: QA Issue: The /usr/share/info/dir file is not meant to be shipped in a particular package. [infodir]
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Fixes following QA issue (normally a warning, but Poky and other distros
may treat it as fatal):
ERROR: external-arm-toolchain-2019.12-r0 do_package: QA Issue: external-arm-toolchain: Files/directories were installed but not shipped in any package:
/usr/libexec
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
external-arm-toolchain: 1 installed and not shipped files. [installed-vs-shipped]
ERROR: external-arm-toolchain-2019.12-r0 do_package: Fatal QA errors found, failing task.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
When TCMODE=external-arm, TARGET_SYS!=EAT_TARGET_SYS and gcc installs extra
binary aliases, which could lead to QA errors:
ERROR: gcc-arm-9.2-r2019.12 do_package: QA Issue: gcc: Files/directories were installed but not shipped in any package:
/usr/bin/arm-poky-linux-gnueabi-arm-none-linux-gnueabihf-g++
/usr/bin/arm-poky-linux-gnueabi-arm-none-linux-gnueabihf-gcc
/usr/bin/arm-poky-linux-gnueabi-arm-none-linux-gnueabihf-gcc-ar
/usr/bin/arm-poky-linux-gnueabi-arm-none-linux-gnueabihf-gcc-ranlib
/usr/bin/arm-poky-linux-gnueabi-arm-none-linux-gnueabihf-gcc-nm
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
gcc: 5 installed and not shipped files. [installed-vs-shipped]
ERROR: gcc-arm-9.2-r2019.12 do_package: Fatal QA errors found, failing task.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
gcc-target.inc expects unwind.h to come from and be staged by libgcc.
When TCMODE="external-arm" libgcc is provided by external-arm-toolchain.bb
And while it stages the necessary unwind.h file, it ends up in slightly
different location, so re-stage it. More details are in the comments.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The boot-wrapper-aarch64_%.bbappend and firmware-image-juno.bbappend
should be only considered when meta-arm-bsp layer is present.
Change-Id: Id66a989820675a281946a26b9afec6d5b3d29bca
Issue-Id: SCM-984
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Since firmware-image-juno main recipe is only compatible with juno
MACHINE, the _juno machine override are not needed.
Change-Id: If1b880ee2b6b854f83087005f7ae89f0d77aef7d
Issue-Id: SCM-889
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Kernel binaries copying have to be performed in the do_deploy task to
avoid dependency loop between firmware-image-juno do_install and
virtual/kernel do_deploy when INITRAMFS_IMAGE_BUNDLE is set.
Also, copy the kernel image bundled with initramfs to the firmware
image when INITRAMFS_IMAGE_BUNDLE is set.
Change-Id: I66083d294ab4eb77c643ec33cc1333000373125b
Issue-Id: SCM-987
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Implement a wait block of 20s with exit condition for checking
/dev/xvdaX creation.
For example, in cases where the rootfs is mounted via NFS, a longer
time is needed until the xvda device appears in the system.
Change-Id: I44cbcf2a43aeb476eae92d5b6d2cfd683e4bdf21
Issue-Id: SCM-929
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Suggest the usage of `bitbake-layers add-layer` command to add all
dependant layers.
Change-Id: I1f40f6218b2edc5267e04723c592c16a434f2e82
Issue-Id: SCM-986
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
To keep consistency with trusted-firmware-a recipe we should use
softer assignment to "invalid" for COMPATIBLE_MACHINE.
Change-Id: Ib05afcd62b6b2104188b90bad4d952eb055ae443
Issue-Id: SCM-888
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The 2 scripts that still have /bin/bash shebang are ldd and tzselect. But
it seems upstream had fixed all bashisms in those scripts in recent years
and OE-Core versions of those scripts use /bin/sh already.
Dropping these unnecessary RDEPENDS on bash actually significantly prunes
dependency tree for simple BSP builds like u-boot, etc.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
There's no need to directly provide binutils-cross-${TARGET_ARCH}, as the
PROVIDES list already contains virtual/${TARGET_PREFIX}binutils and correct
PREFERRED_PROVIDER is set in the corresponding tcmode-external-arm.inc file:
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "external-arm-toolchain"
Similar to the compiler:
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc = "external-arm-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial = "external-arm-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "external-arm-toolchain"
And similar to glibc:
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "external-arm-toolchain"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "external-arm-toolchain"
There shouldn't be any direct dependency on binutils-cross-${TARGET_ARCH}. And
if there is, it needs to be fixed to depend on virtual/${TARGET_PREFIX}binutils
During 8.x upgrade there was an attempt to clean it up:
https://git.linaro.org/openembedded/meta-linaro.git/commit/meta-linaro-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb?id=a8ce3dc47f3be9f98abc6ac98a849f918386cf9f
But unfortunately, it got re-added back w/o reasoning:
https://git.linaro.org/openembedded/meta-linaro.git/commit/?id=bb04bc8c67fd032fe04c47b2163ea5fa6b2ffa86
Also, while at it, fix indentation for glibc-mtrace in PROVIDES list.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
These were there from the very beginning and they were used as crutches to
prop up the build by pointing directly to the external toolchain location,
in case early versions of external-arm-toolchain missed staging/packaging
something from there.
First of all, it is unnecessary to adjust CPPFLAGS and LDFLAGS in this way,
as external-arm-toolchain is supposed to stage everything needed from the
toolchain in internal sysroot.
And second, these settings can be harmful and conflict with component's own
CPPFLAGS/LDFLAGS. For example, OpenCV 4.1 fails to link internal libraries
because of incorrect -Wl,-rpath-link passed down the build.
After dropping these, I was able to verify that everything still builds,
including BSP, Wayland/Weston, Qt5, gstreamer, OpenCV, etc for Aarch64 and
Armv7a platforms.
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Reviewed-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Since the Fixed Virtual Platforms simulation tools are not publicly
available, remove them from meta-arm-bsp layer.
Change-Id: Ifece50bfd494241499540030b6ac5968abd8ad1f
Issue-Id: SCM-951
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>