| #!/bin/bash |
| |
| HOST_OS=`uname -s | tr '[:upper:]' '[:lower:]'` |
| if [ "$HOST_OS" != "linux" ] ; then |
| echo "ERROR: The gcc this script points to can only run on linux" |
| exit 1 |
| fi |
| |
| PROGNAME=`basename $0` |
| |
| #PREFIX32=../../gcc/linux-x86/host/i686-linux-glibc2.7-4.4.3/bin/i686-linux # previous version |
| PREFIX32=../../gcc/linux-x86/host/i686-linux-glibc2.7-4.6/bin/i686-linux |
| PREFIX64=../../gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6/bin/x86_64-linux |
| |
| options=" ${@} " # sentinel prefix/suffix space to simplify pattern match below |
| |
| suffix_m32=${options##* -m32 } # suffix after the last -m32 |
| suffix_m64=${options##* -m64 } # suffix after the last -m64 |
| |
| len_m32=${#suffix_m32} # length of suffix after the last -m32 |
| len_m64=${#suffix_m64} # length of suffix after the last -m64 |
| |
| if [ $len_m32 -ge $len_m64 ] ; then |
| # Choose 64-bit if -m64 only, -m64 appears after -m32, or neither exist (-eq) |
| MY_TOOL=`dirname $0`/${PREFIX64}-${PROGNAME} |
| # Make sure host is running 64-bit OS. |
| # Note that "uname -m" only show host CPU is capable of. Use the following technique |
| # from ndk/build/core/ndk-common.sh instead |
| file -L "$SHELL" | grep -q "x86[_-]64" |
| if [ $? != 0 ]; then |
| # $SHELL is not a 64-bit executable, so assume our userland is too. |
| echo "ERROR: $MY_TOOL only run on 64-bit linux" |
| exit 1 |
| fi |
| else |
| # Otherwise, choose 32-bit |
| MY_TOOL=`dirname $0`/${PREFIX32}-${PROGNAME} |
| fi |
| |
| $MY_TOOL "$@" |