> On Mar 26, 2015, at 4:55 PM, Richard Purdie 
> <[email protected]> wrote:
> 
> In a baremetal build, TARGET_ENDIAN_OPTION isn't set leading to build
> failures. Add in ifdefs to avoid this.
> 

We should define it in 

gcc/config/arm/linux-eabi.h

something like

diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
index 048a062..05f01ca 100644
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
@@ -51,8 +51,12 @@
    config.gcc for big endian configurations.  */
 #undef  TARGET_LINKER_EMULATION
 #if TARGET_BIG_ENDIAN_DEFAULT
+#define TARGET_ENDIAN_DEFAULT    MASK_BIG_END
+#define TARGET_ENDIAN_OPTION     "mbig-endian"
 #define TARGET_LINKER_EMULATION "armelfb_linux_eabi"
 #else
+#define TARGET_ENDIAN_DEFAULT    0
+#define TARGET_ENDIAN_OPTION     "mlittle-endian"
 #define TARGET_LINKER_EMULATION "armelf_linux_eabi"
 #endif

> Signed-off-by: Richard Purdie <[email protected]>
> 
> diff --git 
> a/meta/recipes-devtools/gcc/gcc-4.9/0015-arm-Use-TARGET_ENDIAN_OPTION-for-determining-MULTILI.patch
>  
> b/meta/recipes-devtools/gcc/gcc-4.9/0015-arm-Use-TARGET_ENDIAN_OPTION-for-determining-MULTILI.patch
> index ba0a227..37c46fc 100644
> --- 
> a/meta/recipes-devtools/gcc/gcc-4.9/0015-arm-Use-TARGET_ENDIAN_OPTION-for-determining-MULTILI.patch
> +++ 
> b/meta/recipes-devtools/gcc/gcc-4.9/0015-arm-Use-TARGET_ENDIAN_OPTION-for-determining-MULTILI.patch
> @@ -11,26 +11,34 @@ Upstream-Status: Pending
>  gcc/config/arm/linux-elf.h |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> -Index: gcc-4.9-20140316/gcc/config/arm/coff.h
> +Index: gcc-4.9.2/gcc/config/arm/coff.h
> ===================================================================
> ---- gcc-4.9-20140316.orig/gcc/config/arm/coff.h
> -+++ gcc-4.9-20140316/gcc/config/arm/coff.h
> -@@ -33,7 +33,7 @@
> +--- gcc-4.9.2.orig/gcc/config/arm/coff.h
> ++++ gcc-4.9.2/gcc/config/arm/coff.h
> +@@ -32,8 +32,11 @@
> + #define TARGET_DEFAULT (MASK_APCS_FRAME)
> 
>  #ifndef MULTILIB_DEFAULTS
> ++#ifndef TARGET_ENDIAN_OPTION
> ++#define TARGET_ENDIAN_OPTION "mlittle-endian"
> ++#endif
>  #define MULTILIB_DEFAULTS \
> -  { "marm", "mlittle-endian", "mfloat-abi=soft", "mno-thumb-interwork" }
> +  { "marm", TARGET_ENDIAN_OPTION, "mfloat-abi=soft", "mno-thumb-interwork" }
>  #endif
>  
>  /* This is COFF, but prefer stabs.  */
> -Index: gcc-4.9-20140316/gcc/config/arm/elf.h
> +Index: gcc-4.9.2/gcc/config/arm/elf.h
> ===================================================================
> ---- gcc-4.9-20140316.orig/gcc/config/arm/elf.h
> -+++ gcc-4.9-20140316/gcc/config/arm/elf.h
> -@@ -112,7 +112,7 @@
> +--- gcc-4.9.2.orig/gcc/config/arm/elf.h
> ++++ gcc-4.9.2/gcc/config/arm/elf.h
> +@@ -116,8 +116,11 @@
> + #endif
> 
>  #ifndef MULTILIB_DEFAULTS
> ++#ifndef TARGET_ENDIAN_OPTION
> ++#define TARGET_ENDIAN_OPTION "mlittle-endian"
> ++#endif
>  #define MULTILIB_DEFAULTS \
> -  { "marm", "mlittle-endian", "mfloat-abi=soft", "mno-thumb-interwork", 
> "fno-leading-underscore" }
> +  { "marm", TARGET_ENDIAN_OPTION, "mfloat-abi=soft", "mno-thumb-interwork", 
> "fno-leading-underscore" }
> 
> 

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to