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/<target-name>/lib(64). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
086e4b7475
commit
2bf32a3307
@ -42,6 +42,11 @@
|
|||||||
# directory to the target directory. Also optionaly strips the
|
# directory to the target directory. Also optionaly strips the
|
||||||
# library.
|
# 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
|
# $1: arch specific sysroot directory
|
||||||
# $2: library name
|
# $2: library name
|
||||||
# $3: destination directory
|
# $3: destination directory
|
||||||
@ -52,7 +57,11 @@ copy_toolchain_lib_root = \
|
|||||||
LIB="$(strip $2)"; \
|
LIB="$(strip $2)"; \
|
||||||
STRIP="$(strip $4)"; \
|
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 \
|
for FILE in $${LIBS} ; do \
|
||||||
LIB=`basename $${FILE}`; \
|
LIB=`basename $${FILE}`; \
|
||||||
LIBDIR=`dirname $${FILE}` ; \
|
LIBDIR=`dirname $${FILE}` ; \
|
||||||
|
Loading…
Reference in New Issue
Block a user