Index: gcc/config/arm/linux-eabi.h
===================================================================
--- gcc/config/arm/linux-eabi.h	(revision 167434)
+++ gcc/config/arm/linux-eabi.h	(working copy)
@@ -101,3 +101,8 @@
    is used.  */
 #undef  CLEAR_INSN_CACHE
 #define CLEAR_INSN_CACHE(BEG, END) not_used
+
+#undef SYSROOT_SUFFIX_SPEC
+#define SYSROOT_SUFFIX_SPEC                                     \
+  "%{mbig-endian:/be}"
+
Index: gcc/config/arm/neon.md
===================================================================
Index: gcc/config/arm/t-linux-eabi
===================================================================
--- gcc/config/arm/t-linux-eabi	(revision 167434)
+++ gcc/config/arm/t-linux-eabi	(working copy)
@@ -21,8 +21,12 @@ TARGET_LIBGCC2_CFLAGS = -fPIC
 
 # We do not build a Thumb multilib for Linux because the definition of
 # CLEAR_INSN_CACHE in linux-gas.h does not work in Thumb mode.
-MULTILIB_OPTIONS	=
-MULTILIB_DIRNAMES	=
+MULTILIB_OPTIONS	= mbig-endian
+MULTILIB_DIRNAMES	= be
+MULTILIB_OSDIRNAMES	= mbig-endian=!be
+MULTILIB_MATCHES	=
+MULTILIB_EXCEPTIONS	=
+MULTILIB_ALIASES	=
 
 # Use a version of div0 which raises SIGFPE, and a special __clear_cache.
 LIB1ASMFUNCS := $(filter-out _dvmd_tls,$(LIB1ASMFUNCS)) _dvmd_lnx _clear_cache
Index: gcc/config/arm/t-arm-elf
===================================================================
--- gcc/config/arm/t-arm-elf	(revision 167434)
+++ gcc/config/arm/t-arm-elf	(working copy)
@@ -31,8 +31,8 @@ LIB1ASMFUNCS += _udivsi3 _divsi3 _umodsi
 	_arm_floatdidf _arm_floatdisf _arm_floatundidf _arm_floatundisf \
 	_clzsi2 _clzdi2 
 
-MULTILIB_OPTIONS     = marm/mthumb
-MULTILIB_DIRNAMES    = arm thumb
+MULTILIB_OPTIONS     = marm
+MULTILIB_DIRNAMES    = arm
 MULTILIB_EXCEPTIONS  = 
 MULTILIB_MATCHES     =
 
@@ -57,9 +57,9 @@ MULTILIB_EXCEPTIONS    += *mthumb/*mfloa
 # MULTILIB_DIRNAMES   += ep9312
 # MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312*
 # 	
-# MULTILIB_OPTIONS     += mlittle-endian/mbig-endian
-# MULTILIB_DIRNAMES    += le be
-# MULTILIB_MATCHES     += mbig-endian=mbe mlittle-endian=mle
+MULTILIB_OPTIONS     += mlittle-endian/mbig-endian
+MULTILIB_DIRNAMES    += le be
+MULTILIB_MATCHES     += mbig-endian=mbe mlittle-endian=mle
 # 
 # MULTILIB_OPTIONS    += mhard-float/msoft-float
 # MULTILIB_DIRNAMES   += fpu soft
Index: gcc/config/arm/t-linux
===================================================================
--- gcc/config/arm/t-linux	(revision 167434)
+++ gcc/config/arm/t-linux	(working copy)
@@ -28,6 +28,9 @@ LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3
 # MULTILIB_OPTIONS = mhard-float/msoft-float
 # MULTILIB_DIRNAMES = hard-float soft-float
 
+MULTILIB_OPTIONS += mbig-endian/mlittle-endian
+MULTILIB_DIRNAMES += be le
+
 # EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o
 
 # LIBGCC = stmp-multilib
