[OE-core] [PATCH] u-boot: fix extern inline build errors for gcc 5

Kevin Hao kexin.hao at windriver.com
Fri Jul 31 05:21:25 UTC 2015


The gcc 5 change its default standard from gnu89 to gnu11. These two
standards do have different semantics for inline functions. And the
gcc 5 will emit the following errors on the "extern inline" functions:
    arch/powerpc/cpu/mpc8xxx/fsl_lbc.o: In function `ld_le16':
    ./arch/powerpc/include/asm/byteorder.h:12: multiple definition of `ld_le16'
    arch/powerpc/cpu/mpc8xxx/fdt.o:./arch/powerpc/include/asm/byteorder.h:12: first defined here

Fix these build errors by using "-fgnu89-inline" to enforce the gnu89
inline semantics as suggested in [1].

[1] https://gcc.gnu.org/gcc-5/porting_to.html

Signed-off-by: Kevin Hao <kexin.hao at windriver.com>
---
 meta/recipes-bsp/u-boot/u-boot_2015.07.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-bsp/u-boot/u-boot_2015.07.bb b/meta/recipes-bsp/u-boot/u-boot_2015.07.bb
index 3ba2f44eaa20..4746c33ec25e 100644
--- a/meta/recipes-bsp/u-boot/u-boot_2015.07.bb
+++ b/meta/recipes-bsp/u-boot/u-boot_2015.07.bb
@@ -10,3 +10,5 @@ SRCREV = "33711bdd4a4dce942fb5ae85a68899a8357bdd94"
 SRC_URI += "file://0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch"
 
 PV = "v2015.07+git${SRCPV}"
+
+EXTRA_OEMAKE_append = " KCFLAGS=-fgnu89-inline"
-- 
2.1.0




More information about the Openembedded-core mailing list