X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=scripts%2Fext-toolchain.sh;h=09390c5e0d51f5195f776507593a29a48d77c614;hb=ee55a19a618a30182213937c8c96e056d8f9ed41;hp=a34ef0677335cc9e5a3bd52e011444fff9754292;hpb=c21b5cc34ab2b8f28b914ed9318b4f6f046a5b7b;p=openwrt%2Fopenwrt.git diff --git a/scripts/ext-toolchain.sh b/scripts/ext-toolchain.sh index a34ef06773..09390c5e0d 100755 --- a/scripts/ext-toolchain.sh +++ b/scripts/ext-toolchain.sh @@ -3,7 +3,7 @@ # Script for various external toolchain tasks, refer to # the --help output for more information. # -# Copyright (C) 2012 Jo-Philipp Wich +# Copyright (C) 2012 Jo-Philipp Wich # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -91,7 +91,7 @@ test_uclibc() { local sysroot="$("$CC" $CFLAGS -print-sysroot 2>/dev/null)" if [ -d "${sysroot:-$TOOLCHAIN}" ]; then local lib - for lib in "${sysroot:-$TOOLCHAIN}"/{lib,usr/lib,usr/local/lib}/ld-uClibc*.so*; do + for lib in "${sysroot:-$TOOLCHAIN}"/{lib,usr/lib,usr/local/lib}/ld*-uClibc*.so*; do if [ -f "$lib" ] && [ ! -h "$lib" ]; then return 0 fi @@ -221,7 +221,7 @@ wrap_bin_ld() { local bin="$2" echo '#!/bin/sh' > "$out" - echo -n 'exec "'"$bin"'" '"$CFLAGS"' ${STAGING_DIR:+' >> "$out" + echo -n 'exec "'"$bin"'" ${STAGING_DIR:+' >> "$out" echo -n '-L "$STAGING_DIR/usr/lib" ' >> "$out" echo '-rpath-link "$STAGING_DIR/usr/lib"} "$@"' >> "$out" @@ -356,6 +356,10 @@ print_config() { echo "CONFIG_TOOLCHAIN_PREFIX=\"$prefix\"" >> "$config" echo "CONFIG_TARGET_NAME=\"$target\"" >> "$config" + if [ "$LIBC_TYPE" != glibc ]; then + echo "CONFIG_TOOLCHAIN_LIBC=\"$LIBC_TYPE\"" >> "$config" + fi + local lib for lib in C RT PTHREAD GCC STDCPP SSP GFORTRAN; do local file