summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorThiemo Seufer <ths@networkno.de>2005-07-07 11:19:31 +0200
committerRalf Baechle <ralf@linux-mips.org>2005-10-29 20:31:37 +0200
commitf425a6dce50475f08547d08763f707589478b027 (patch)
tree32cec3782d55943c69b439c1aa64b39a33a70d13 /arch
parentRename CONFIG_CPU_MIPS{32,64} to CONFIG_CPU_MIPS{32|64}_R1. (diff)
downloadlinux-f425a6dce50475f08547d08763f707589478b027.tar.xz
linux-f425a6dce50475f08547d08763f707589478b027.zip
Hack to make compiles for the other endianness easier.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Thiemo Seufer <ths@networkno.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/Makefile9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index 56e1d42a5796..056aae597123 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -97,6 +97,15 @@ cflags-y += $(call cc-option, -finline-limit=100000)
LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
MODFLAGS += -mlong-calls
+#
+# We explicitly add the endianness specifier if needed, this allows
+# to compile kernels with a toolchain for the other endianness. We
+# carefully avoid to add it redundantly because gcc 3.3/3.4 complains
+# when fed the toolchain default!
+#
+cflags-$(CONFIG_CPU_BIG_ENDIAN) += $(shell $(CC) -dumpmachine |grep -q 'mips*el-linux*' && echo -EB)
+cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += $(shell $(CC) -dumpmachine |grep -q 'mips*el-linux*' || echo -EL)
+
cflags-$(CONFIG_SB1XXX_CORELIS) += -mno-sched-prolog -fno-omit-frame-pointer
#