[Buildroot] [PATCH v2 1/1] toolchain: handle toolchains with multiple ld*.so.* files
Jonah Petri
jonah at petri.us
Tue Aug 24 20:38:41 UTC 2021
Some 3rd party vendor toolchains have multiple files which match
these glob patterns. In this case, the shell script failed.
Switching to use find and xargs solves the issue.
Signed-off-by: Jonah Petri <jonah at petri.us>
---
Changes v1->v2:
Add SOB
toolchain/helpers.mk | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk
index dfb2581ed5..5ed149d57d 100644
--- a/toolchain/helpers.mk
+++ b/toolchain/helpers.mk
@@ -135,10 +135,8 @@ copy_toolchain_sysroot = \
$(call simplify_symlink,$$i,$(STAGING_DIR)) ; \
done ; \
fi ; \
- if [ ! -e $(STAGING_DIR)/lib/ld*.so.* ]; then \
- if [ -e $${ARCH_SYSROOT_DIR}/lib/ld*.so.* ]; then \
- cp -a $${ARCH_SYSROOT_DIR}/lib/ld*.so.* $(STAGING_DIR)/lib/ ; \
- fi ; \
+ if ! find -wholename $(STAGING_DIR)'/lib/ld*.so.*' > /dev/null; then \
+ find -wholename $${ARCH_SYSROOT_DIR}'/lib/ld*.so.*' -print0 | xargs -0 -I % cp % $(STAGING_DIR)/lib/; \
fi ; \
if [ `readlink -f $${SYSROOT_DIR}` != `readlink -f $${ARCH_SYSROOT_DIR}` ] ; then \
if [ ! -d $${ARCH_SYSROOT_DIR}/usr/include ] ; then \
--
2.30.2
More information about the buildroot
mailing list