mirror of
https://github.com/torvalds/linux.git
synced 2024-11-12 07:01:57 +00:00
[MIPS] Workaround for bug in gcc -EB / -EL options.
Certain gcc versions upto gcc 4.1.1 (probably 4.2-subversion as of 2006-10-10 don't properly change the the predefined symbols if -EB / -EL are used, so we kludge that here. A bug has been filed at http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29413. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
ea5742830a
commit
f94054121e
@ -91,8 +91,17 @@ cflags-y += -ffreestanding
|
||||
# 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-.*' && echo -EB -D__MIPSEB__)
|
||||
cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += $(shell $(CC) -dumpmachine |grep -q 'mips.*el-.*' || echo -EL -D__MIPSEL__)
|
||||
# Certain gcc versions upto gcc 4.1.1 (probably 4.2-subversion as of
|
||||
# 2006-10-10 don't properly change the the predefined symbols if -EB / -EL
|
||||
# are used, so we kludge that here. A bug has been filed at
|
||||
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29413.
|
||||
#
|
||||
undef-all += -UMIPSEB -U_MIPSEB -U__MIPSEB -U__MIPSEB__
|
||||
undef-all += -UMIPSEL -U_MIPSEL -U__MIPSEL -U__MIPSEL__
|
||||
predef-be += -DMIPSEB -D_MIPSEB -D__MIPSEB -D__MIPSEB__
|
||||
predef-le += -DMIPSEL -D_MIPSEL -D__MIPSEL -D__MIPSEL__
|
||||
cflags-$(CONFIG_CPU_BIG_ENDIAN) += $(shell $(CC) -dumpmachine |grep -q 'mips.*el-.*' && echo -EB $(undef-all) $(predef-be))
|
||||
cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += $(shell $(CC) -dumpmachine |grep -q 'mips.*el-.*' || echo -EL $(undef-all) $(predef-le))
|
||||
|
||||
cflags-$(CONFIG_SB1XXX_CORELIS) += $(call cc-option,-mno-sched-prolog) \
|
||||
-fno-omit-frame-pointer
|
||||
|
Loading…
Reference in New Issue
Block a user