diff options
author | Denys Dmytriyenko <denys@ti.com> | 2014-08-19 01:08:40 +0000 |
---|---|---|
committer | Denys Dmytriyenko <denys@ti.com> | 2014-08-18 18:38:30 -0400 |
commit | 7b8ee4026e0e3b69a8ce5526be24ba70321e88dc (patch) | |
tree | 6cab8b565c8af950e66b9bdf8588a3dc29fd5ad4 | |
parent | 96cf07485bb25df46ec0c8fd9d81cc240e069deb (diff) | |
download | meta-ti-7b8ee4026e0e3b69a8ce5526be24ba70321e88dc.tar.gz |
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 <denys@ti.com>
-rw-r--r-- | 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 51ec9bdd..7731992c 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= | |||
14 | 14 | ||
15 | S = "${WORKDIR}/git" | 15 | S = "${WORKDIR}/git" |
16 | 16 | ||
17 | FLOATABI = "${@base_contains("TUNE_FEATURES", "vfp", base_contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}" | ||
18 | |||
17 | do_compile() { | 19 | do_compile() { |
18 | make CROSS_COMPILE="${TARGET_PREFIX}" | 20 | make CROSS_COMPILE="${TARGET_PREFIX}" CC="${TARGET_PREFIX}gcc ${FLOATABI}" |
19 | } | 21 | } |
20 | 22 | ||
21 | do_install() { | 23 | do_install() { |