From 2bf32a3307b8d184396a02056b454ec98beeda4c Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Mon, 5 Jul 2010 18:59:02 +0200 Subject: [PATCH] external-toolchain: handle libstdc++/libgcc_s for BR toolchains Most toolchains have their libraries either in /lib or /usr/lib relative to their ARCH_SYSROOT_DIR. Buildroot toolchains, however, have basic libraries in /lib, and libstdc++/libgcc_s in /usr//lib(64). Signed-off-by: Thomas Petazzoni Signed-off-by: Peter Korsgaard --- toolchain/external-toolchain/ext-tool.mk | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/toolchain/external-toolchain/ext-tool.mk b/toolchain/external-toolchain/ext-tool.mk index 39961843e9..1c84893f9c 100644 --- a/toolchain/external-toolchain/ext-tool.mk +++ b/toolchain/external-toolchain/ext-tool.mk @@ -42,6 +42,11 @@ # directory to the target directory. Also optionaly strips the # library. # +# Most toolchains have their libraries either in /lib or /usr/lib +# relative to their ARCH_SYSROOT_DIR. Buildroot toolchains, however, +# have basic libraries in /lib, and libstdc++/libgcc_s in +# /usr//lib(64). +# # $1: arch specific sysroot directory # $2: library name # $3: destination directory @@ -52,7 +57,11 @@ copy_toolchain_lib_root = \ LIB="$(strip $2)"; \ STRIP="$(strip $4)"; \ \ - LIBS=`(cd $${ARCH_SYSROOT_DIR}; find . -path "./lib/$${LIB}.*" -o -path "./usr/lib/$${LIB}.*")` ; \ + LIBS=`(cd $${ARCH_SYSROOT_DIR}; \ + find -L . -path "./lib/$${LIB}.*" -o \ + -path "./usr/lib/$${LIB}.*" -o \ + -path "./usr/$(TOOLCHAIN_EXTERNAL_PREFIX)/lib*/$${LIB}.*" \ + )` ; \ for FILE in $${LIBS} ; do \ LIB=`basename $${FILE}`; \ LIBDIR=`dirname $${FILE}` ; \ -- 2.30.2