scripts/build/arch/mips.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Aug 31 11:00:35 2011 +0200 (2011-08-31)
changeset 2669 0e00e4fda2ea
parent 2118 034de6dca38f
child 2774 32dabc0285d6
permissions -rw-r--r--
libc/uClibc: add patch to fix fork in threads with ARM EABI

uClibc-0.9.32 requires libgcc_eh.a (for ARM EABI), but only when libubacktrace
is enabled. As this is not the default, provide a workaround to disable linking
with libgcc_eh.a if libubacktrace is not selected.

This will however still break if uClibc is configured to enable libubacktrace,
but it requires a fix in gcc, and we can take care of that later.

Reported-by: Grant Edwards <grant.b.edwards@gmail.com>
Reported-by: Tor Krill <tor@codeknot.com>
Tested-by: Tor Krill <tor@codeknot.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 # Compute MIPS-specific values
     2 
     3 CT_DoArchTupleValues() {
     4     # The architecture part of the tuple, override only for 64-bit
     5     if [ "${CT_ARCH_64}" = "y" ]; then
     6         CT_TARGET_ARCH="mips64${target_endian_el}"
     7     else
     8         # The architecture part of the tuple:
     9         CT_TARGET_ARCH="${CT_ARCH}${target_endian_el}"
    10     fi
    11 
    12     # Override CFLAGS for endianness:
    13     case "${CT_ARCH_BE},${CT_ARCH_LE}" in
    14         y,) CT_ARCH_ENDIAN_CFLAG="-EB";;
    15         ,y) CT_ARCH_ENDIAN_CFLAG="-EL";;
    16     esac
    17 
    18     # Override ABI flags
    19     CT_ARCH_ABI_CFLAG="-mabi=${CT_ARCH_mips_ABI}"
    20     CT_ARCH_WITH_ABI="--with-abi=${CT_ARCH_mips_ABI}"
    21 }