arch/arm/functions
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed May 21 22:00:52 2008 +0000 (2008-05-21)
changeset 527 4ac12179ef23
parent 387 2fa4b675a9a3
child 787 0725d7f8ab22
child 841 918cc0a7bd0a
permissions -rw-r--r--
Introduce target-specific LDFLAGS, the same way we have CFLAGS for the target.
It seems to be helping gcc somewhat into telling the correct endianness to ld that sticks with little endian even when the target is big (eg armeb-unknown-linux-uclibcgnueabi).
There's still work to do, especially finish the gcc part that is not in this commit.

/trunk/scripts/functions | 9 7 2 0 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
     1 # Compute ARM-specific values
     2 
     3 CT_DoArchValues() {
     4     # The architecture part of the tuple:
     5     CT_TARGET_ARCH="${CT_ARCH}${target_endian_eb}"
     6 
     7     # The system part of the tuple:
     8     case "${CT_LIBC},${CT_ARCH_ARM_EABI}" in
     9         glibc,)     CT_TARGET_SYS=gnu;;
    10         glibc,y)    CT_TARGET_SYS=gnueabi;;
    11         uClibc,)    CT_TARGET_SYS=uclibc;;
    12         uClibc,y)   CT_TARGET_SYS=uclibcgnueabi;;
    13     esac
    14 
    15     case "${CT_ARCH_ABI},${CT_ARCH_ARM_EABI}" in
    16         *,) ;;
    17         aapcs,y)
    18             CT_DoLog DEBUG "'--with-abi=aapcs' is in fact '-mabi=aapcs-linux' when used in CFLAGS."
    19             CT_ARCH_ABI_CFLAGS="-mabi=aapcs-linux"
    20             ;;
    21         ,y)
    22             CT_DoLog WARN "Forcing ABI to 'aapcs-linux' for use with EABI."
    23             CT_ARCH_WITH_ABI="--with-abi=aapcs"
    24             CT_ARCH_ABI_CFLAGS="-mabi=aapcs-linux"
    25             ;;
    26         *,y)
    27             CT_DoLog ERROR "ABI='${CT_ARCH_ABI}' not supported for EABI."
    28             CT_Abort "If you know you are right, please edit 'arch/arm/functions' in crosstool-NG sources."
    29             ;;
    30     esac
    31 }