Module: meta-ti
Branch: master
Commit: c739fca5ed4faa56ac1bec9062882df5371d4bd1
URL:    
http://arago-project.org/git/meta-ti.git?a=commit;h=c739fca5ed4faa56ac1bec9062882df5371d4bd1

Author: Denys Dmytriyenko <[email protected]>
Date:   Tue Aug 19 01:08:40 2014 +0000

am33x-cm3: pass float ABI flag to fix gcc-4.9.1 issue with stubs

Since we are re-using the Linux cross-compiler to compile Cortex-M3 firmware
code and not a dedicated bare-metal compiler, we have to match the float ABI
for the compiler to find the correct gnu/stubs.h files. In other words, if we
built a hardfp compiler, it doesn't have the corresponding gnu/stubs-soft.h
header and fails when building anything non-hardfp. Even though float ABI
flag doesn't make any sense for Cortex-M3 build. The error looks like this:

|      CC       src/sys_exec/trace.o
|      CC       src/sys_exec/sys_init.o
| In file included from /OE/sysroots/am335x-evm/usr/include/features.h:402:0,
|                  from /OE/sysroots/am335x-evm/usr/include/stdint.h:25,
|                  from 
/OE/sysroots/x86_64-linux/usr/lib/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.9.1/include/stdint.h:9,
|                  from src/sys_exec/rsc_table.h:13,
|                  from src/sys_exec/sys_init.c:19:
| /OE/sysroots/am335x-evm/usr/include/gnu/stubs.h:7:29: fatal error: 
gnu/stubs-soft.h: No such file or directory
|  # include <gnu/stubs-soft.h>
|                              ^
| compilation terminated.
| Makefile:51: recipe for target 'src/sys_exec/sys_init.o' failed
| make: *** [src/sys_exec/sys_init.o] Error 1

Signed-off-by: Denys Dmytriyenko <[email protected]>

---

 recipes-bsp/am33x-cm3/am33x-cm3_git.bb |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/recipes-bsp/am33x-cm3/am33x-cm3_git.bb 
b/recipes-bsp/am33x-cm3/am33x-cm3_git.bb
index 51ec9bd..7731992 100644
--- a/recipes-bsp/am33x-cm3/am33x-cm3_git.bb
+++ b/recipes-bsp/am33x-cm3/am33x-cm3_git.bb
@@ -14,8 +14,10 @@ SRC_URI = 
"git://git.ti.com/ti-cm3-pm-firmware/amx3-cm3.git;protocol=git;branch=
 
 S = "${WORKDIR}/git"
 
+FLOATABI = "${@base_contains("TUNE_FEATURES", "vfp", 
base_contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " 
-mfloat-abi=softfp", d), "" ,d)}"
+
 do_compile() {
-       make CROSS_COMPILE="${TARGET_PREFIX}"
+       make CROSS_COMPILE="${TARGET_PREFIX}" CC="${TARGET_PREFIX}gcc 
${FLOATABI}"
 }
 
 do_install() {

-- 
_______________________________________________
meta-ti mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/meta-ti

Reply via email to