Backport #635 from trunk:

Fix the EABI case for ARM.

 /branches/1.1/arch/arm/functions |   17    17     0     0 +++++++++++++++++
 /branches/1.1/arch/arm/config.in |    3     3     0     0 +++
 2 files changed, 20 insertions(+)
This commit is contained in:
Yann E. MORIN" 2008-05-15 21:01:45 +00:00
parent b1fb41d2bd
commit 7eb9c29a52
2 changed files with 20 additions and 0 deletions

View File

@ -7,3 +7,6 @@ config ARCH_ARM_EABI
default n
help
Set up the toolchain so that it generates EABI-compliant binaries.
config ARCH_ABI
default "aapcs" if ARCH_ARM_EABI

View File

@ -11,4 +11,21 @@ CT_DoArchValues() {
uClibc,) CT_TARGET_SYS=uclibc;;
uClibc,y) CT_TARGET_SYS=uclibcgnueabi;;
esac
case "${CT_ARCH_ABI},${CT_ARCH_ARM_EABI}" in
*,) ;;
aapcs,y)
CT_DoLog DEBUG "'--with-abi=aapcs' is in fact '-mabi=aapcs-linux' when used in CFLAGS."
CT_ARCH_ABI_CFLAGS="-mabi=aapcs-linux"
;;
,y)
CT_DoLog WARN "Forcing ABI to 'aapcs-linux' for use with EABI."
CT_ARCH_WITH_ABI="--with-abi=aapcs"
CT_ARCH_ABI_CFLAGS="-mabi=aapcs-linux"
;;
*,y)
CT_DoLog ERROR "ABI='${CT_ARCH_ABI}' not supported for EABI."
CT_Abort "If you know you are right, please edit 'arch/arm/functions' in crosstool-NG sources."
;;
esac
}