[Buildroot] [PATCH 09/10] external-toolchain: handle libstdc++/libgcc_s for BR toolchains
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Mon Jun 14 11:54:20 UTC 2010
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/<target-name>/lib(64).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
---
toolchain/external-toolchain/ext-tool.mk | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/toolchain/external-toolchain/ext-tool.mk b/toolchain/external-toolchain/ext-tool.mk
index 3996184..1c84893 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/<target-name>/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}` ; \
--
1.7.0.4
More information about the buildroot
mailing list