f3597910cf
When building a fip firmware (BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y), the TF-A build recipe starts by building the host program fiptool with the proper build environment variables. Then the main TF-A target firmware build step takes place, with the expectation that the fiptool program will be used under the hood if necessary. In TF-A, the build recipe for the host program fiptool has subtly changed after v2.7, in commit cf2dd17ddda2 ("refactor(security): add OpenSSL 1.x compatibility"). This change has the effect to force re-linking fiptool each time. If we try to build with Buildroot a fip firmware with a TF-A version after v2.7 comprising the aforementioned change, the fiptool program is forcibly re-linked during the main firmware build step. This happens without the proper build environment variables and consequently, if openssl is not installed on the host, the libcrypto shared library will not be found by the linker and the link will fail with the following error: /usr/bin/ld: cannot find -lcrypto: No such file or directory A patch has been integrated into TF-A to avoid re-linking fiptool when not necessary, which should solve the problem starting with version v2.10. Add that patch in Buildroot for versions v2.8 and v2.9, to repair the build in the cases described above. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/4664845767 Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com> Cc: Dick Olsson <hi@senzilla.io> Cc: Sergey Matyukevich <geomatsi@gmail.com> [yann.morin.1998@free.fr: - don't use symlink in v2.9, just copy patch - fix numbering in v2.8 which now has two patches ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> |
||
---|---|---|
.. | ||
afboot-stm32 | ||
arm-trusted-firmware | ||
at91bootstrap | ||
at91bootstrap3 | ||
at91dataflashboot | ||
barebox | ||
beaglev-ddrinit | ||
beaglev-secondboot | ||
binaries-marvell | ||
boot-wrapper-aarch64 | ||
edk2 | ||
grub2 | ||
lpc32xxcdl | ||
mv-ddr-marvell | ||
mxs-bootlets | ||
opensbi | ||
optee-os | ||
s500-bootloader | ||
shim | ||
syslinux | ||
ti-k3-r5-loader | ||
uboot | ||
vexpress-firmware | ||
common.mk | ||
Config.in |