# HG changeset patch # User "Yann E. MORIN" # Date 1220613386 0 # Node ID 918cc0a7bd0acbb8040bf4643717cad8900d3c0b # Parent e2fc8411b54b1d8463a166abc0cc41ba61537ab0 Backport #973 from trunk: Don't allow to specify an ABI for ARM EABI builds: the ABI is implied by the fact we're building for EABI. /branches/1.2/arch/arm/functions | 19 3 16 0 +++---------------- /branches/1.2/arch/arm/config.in | 9 6 3 0 ++++++--- 2 files changed, 9 insertions(+), 19 deletions(-) diff -r e2fc8411b54b -r 918cc0a7bd0a arch/arm/config.in --- a/arch/arm/config.in Fri Sep 05 11:15:28 2008 +0000 +++ b/arch/arm/config.in Fri Sep 05 11:16:26 2008 +0000 @@ -4,7 +4,6 @@ select ARCH_SUPPORTS_BOTH_ENDIAN select ARCH_DEFAULT_LE select ARCH_SUPPORT_ARCH - select ARCH_SUPPORT_ABI select ARCH_SUPPORT_CPU select ARCH_SUPPORT_TUNE select ARCH_SUPPORT_FPU @@ -20,5 +19,9 @@ help Set up the toolchain so that it generates EABI-compliant binaries. -config ARCH_ABI - default "aapcs" if ARCH_ARM_EABI +config ARCH_ARM_ABI_OK + bool + default y + depends on ! ARCH_ARM_EABI + select ARCH_SUPPORT_ABI + diff -r e2fc8411b54b -r 918cc0a7bd0a arch/arm/functions --- a/arch/arm/functions Fri Sep 05 11:15:28 2008 +0000 +++ b/arch/arm/functions Fri Sep 05 11:16:26 2008 +0000 @@ -12,20 +12,7 @@ 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 + # In case we're EABI, do *not* specify any ABI! + # which means, either we do not have an ABI specified, or we're not EABI. + CT_TestOrAbort "Internal error: CT_ARCH_ABI should not be set for EABI build." -z "${CT_ARCH_ABI}" -o -z "${CT_ARCH_ARM_EABI}" }