diff options
-rw-r--r-- | recipes-bsp/imx-atf/imx-atf_2.4.bb | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-atf/imx-atf_2.4.bb index 8360bfa8..ce30822e 100644 --- a/recipes-bsp/imx-atf/imx-atf_2.4.bb +++ b/recipes-bsp/imx-atf/imx-atf_2.4.bb @@ -25,13 +25,30 @@ EXTRA_OEMAKE += " \ PLAT=${ATF_PLATFORM} \ " +# Let the Makefile handle setting up the CFLAGS and LDFLAGS as it is a standalone application +CFLAGS[unexport] = "1" +LDFLAGS[unexport] = "1" +AS[unexport] = "1" +LD[unexport] = "1" + +# Baremetal, just need a compiler +DEPENDS:remove = "virtual/${TARGET_PREFIX}compilerlibs virtual/libc" + BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}" -CFLAGS:remove:mx8mq = "-O2" +# CC and LD introduce arguments which conflict with those otherwise provided by +# this recipe. The heads of these variables excluding those arguments +# are therefore used instead. +def remove_options_tail (in_string): + from itertools import takewhile + return ' '.join(takewhile(lambda x: not x.startswith('-'), in_string.split(' '))) + +EXTRA_OEMAKE += "LD=${@remove_options_tail(d.getVar('LD'))}" + +EXTRA_OEMAKE += "CC=${@remove_options_tail(d.getVar('CC'))}" do_compile() { # Clear LDFLAGS to avoid the option -Wl recognize issue - unset LDFLAGS oe_runmake bl31 if ${BUILD_OPTEE}; then oe_runmake clean BUILD_BASE=build-optee |