641 LINKER_VERSION_STRING=`$LD 2>&1 | $HEAD -n 1 | $TR -d '\r'` |
641 LINKER_VERSION_STRING=`$LD 2>&1 | $HEAD -n 1 | $TR -d '\r'` |
642 # Extract version number |
642 # Extract version number |
643 [ LINKER_VERSION_NUMBER=`$ECHO $LINKER_VERSION_STRING | \ |
643 [ LINKER_VERSION_NUMBER=`$ECHO $LINKER_VERSION_STRING | \ |
644 $SED -e 's/.* \([0-9][0-9]*\(\.[0-9][0-9]*\)*\).*/\1/'` ] |
644 $SED -e 's/.* \([0-9][0-9]*\(\.[0-9][0-9]*\)*\).*/\1/'` ] |
645 elif test "x$TOOLCHAIN_TYPE" = xgcc; then |
645 elif test "x$TOOLCHAIN_TYPE" = xgcc; then |
646 # gcc -Wl,-version output typically looks like |
646 # gcc -Wl,-version output typically looks like: |
647 # GNU ld (GNU Binutils for Ubuntu) 2.26.1 |
647 # GNU ld (GNU Binutils for Ubuntu) 2.26.1 |
648 # Copyright (C) 2015 Free Software Foundation, Inc. |
648 # Copyright (C) 2015 Free Software Foundation, Inc. |
649 # This program is free software; [...] |
649 # This program is free software; [...] |
650 LINKER_VERSION_STRING=`$LD -Wl,-version 2>&1 | $HEAD -n 1` |
650 # If using gold it will look like: |
|
651 # GNU gold (GNU Binutils 2.30) 1.15 |
|
652 LINKER_VERSION_STRING=`$LD -Wl,--version 2> /dev/null | $HEAD -n 1` |
651 # Extract version number |
653 # Extract version number |
652 [ LINKER_VERSION_NUMBER=`$ECHO $LINKER_VERSION_STRING | \ |
654 if [ [[ "$LINKER_VERSION_STRING" == *gold* ]] ]; then |
653 $SED -e 's/.* \([0-9][0-9]*\(\.[0-9][0-9]*\)*\).*/\1/'` ] |
655 [ LINKER_VERSION_NUMBER=`$ECHO $LINKER_VERSION_STRING | \ |
|
656 $SED -e 's/.* \([0-9][0-9]*\(\.[0-9][0-9]*\)*\).*) .*/\1/'` ] |
|
657 else |
|
658 [ LINKER_VERSION_NUMBER=`$ECHO $LINKER_VERSION_STRING | \ |
|
659 $SED -e 's/.* \([0-9][0-9]*\(\.[0-9][0-9]*\)*\).*/\1/'` ] |
|
660 fi |
654 elif test "x$TOOLCHAIN_TYPE" = xclang; then |
661 elif test "x$TOOLCHAIN_TYPE" = xclang; then |
655 # clang -Wl,-v output typically looks like |
662 # clang -Wl,-v output typically looks like |
656 # @(#)PROGRAM:ld PROJECT:ld64-305 |
663 # @(#)PROGRAM:ld PROJECT:ld64-305 |
657 # configured to support archs: armv6 armv7 armv7s arm64 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em (tvOS) |
664 # configured to support archs: armv6 armv7 armv7s arm64 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em (tvOS) |
658 # Library search paths: [...] |
665 # Library search paths: [...] |