feat(build): put fiptool in the build directoryFor some reason, tools are not built in the build directory, but ratherin the source directory, regardless of what BUILD_BASE might say. Thisis espe
feat(build): put fiptool in the build directoryFor some reason, tools are not built in the build directory, but ratherin the source directory, regardless of what BUILD_BASE might say. Thisis especially annoying when trying to have a few builds going at thesame time (like in a CI). For example, run A may check if a file Xexists. Seeing that it does not, it will start building the file. At thesame time, run B may also check if file X exists but before A haswritten it, starting a build again. Then it is possible for A to use thefile it believes to have built right at the moment B begins writing toit (and truncating it beforehand). This results in gcc failing to read afail and a failed build. The more parallel runs there are, the morelikely this is to happen, and this is virtually guaranteed to happenwith just a handful onwards.So move fiptool and all of its build artefacts to the build directory.Since there are platform differences between the various fiptoolincarnations, this goes in the plat build rather than a more top-levellocation.This patch adds the build macro MAKE_TOOL to do this generically for anykind of tool since the other tools suffer from the same shortfall. Thismacro takes care to use unique names for every type of argument thatbuilding a tool might need. The fiptool makefile and platform add-onsare updated accordingly.This should have never been allowed in the first place, but downstreamscripts almost certainly depend on this behaviour now. So add a symlinkin the place of the old fiptool so these continue working. With anyluck, this will be removed in the future.Change-Id: I3d4d87dab0f53deab5b43fbc6652146f0e4e7e81Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
show more ...
refactor(juno): move plat_def_uuid_config to fiptoolThe same was done for other platforms: stm32mp1, tc before incommit 034a2e3ef8a9e8e58f7cb7fab6db4ee60b2f9c29 ('refactor(fiptool):move plat_fipt
refactor(juno): move plat_def_uuid_config to fiptoolThe same was done for other platforms: stm32mp1, tc before incommit 034a2e3ef8a9e8e58f7cb7fab6db4ee60b2f9c29 ('refactor(fiptool):move plat_fiptool.mk to tools')Additionally this will make ignore generated files: Untracked files: plat/arm/board/juno/fip/plat_def_uuid_config.d plat/arm/board/juno/fip/plat_def_uuid_config.oSigned-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>Change-Id: Ia5f1082fcd6d9dfc0be012759493e61ddb869956
refactor(ethos-n): move build flags to ethosn_npu.mkThe build flags to enable the Arm(R) Ethos(TM)-N NPU driver are in armplatform specific make files i.e. plat/arm/common/arm_common.mk. Thesefla
refactor(ethos-n): move build flags to ethosn_npu.mkThe build flags to enable the Arm(R) Ethos(TM)-N NPU driver are in armplatform specific make files i.e. plat/arm/common/arm_common.mk. Theseflags are renamed and moved to ethosn_npu.mk. Other source and makefiles are changed to reflect the changes in these flags.Signed-off-by: Rajasekaran Kalidoss <rajasekaran.kalidoss@arm.com>Change-Id: I6fd20225343c574cb5ac1f0f32ff2fc28ef37ea6
fix(fiptool): move juno plat_fiptool.mkplat_fiptool.mk files now need to be in tools/fiptool/plat_fiptool/, sothis file has been moved to the new location so that it is picked upcorrectly by the
fix(fiptool): move juno plat_fiptool.mkplat_fiptool.mk files now need to be in tools/fiptool/plat_fiptool/, sothis file has been moved to the new location so that it is picked upcorrectly by the build system.Change-Id: Id3596b08bc856362e300f3dfefcaab5d75b4c400Signed-off-by: Rob Hughes <robert.hughes@arm.com>