sdk: invoke bundle-libraries.sh w/o buildroot dirs in $PATH
authorJo-Philipp Wich <jo@mein.io>
Tue, 29 Dec 2020 00:06:43 +0000 (01:06 +0100)
committerJo-Philipp Wich <jo@mein.io>
Tue, 29 Dec 2020 00:07:42 +0000 (01:07 +0100)
Invoke bundle-libraries.sh with any buildroot related directory entries
removed from $PATH to avoid picking up cross versions of utilities like
ldd which will not properly work when used against host executables.

This should fix executable bundling for glibc-target SDKs.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
target/sdk/Makefile

index caec7178e9cf89e7bded5d15a33ffb799fbbb25e..d7e10a9bd85bf5e38194ae71751fb3296f060f3d 100644 (file)
@@ -20,6 +20,9 @@ STAGING_SUBDIR_HOST := staging_dir/host
 STAGING_SUBDIR_TARGET := staging_dir/$(TARGET_DIR_NAME)
 STAGING_SUBDIR_TOOLCHAIN := staging_dir/toolchain-$(ARCH)$(ARCH_SUFFIX)_gcc-$(GCCV)_$(LIBC)$(if $(CONFIG_arm),_eabi)
 
+BUNDLER_PATH := $(subst $(space),:,$(filter-out $(TOPDIR)/%,$(subst :,$(space),$(PATH))))
+BUNDLER_COMMAND := PATH=$(BUNDLER_PATH) $(XARGS) $(SCRIPT_DIR)/bundle-libraries.sh $(SDK_BUILD_DIR)/$(STAGING_SUBDIR_HOST)
+
 EXCLUDE_DIRS:= \
        */stamp \
        */stampfiles \
@@ -104,7 +107,7 @@ $(BIN_DIR)/$(SDK_NAME).tar.xz: clean
        (cd $(SDK_BUILD_DIR); find $(STAGING_SUBDIR_HOST)/bin $(STAGING_SUBDIR_HOST)/usr/bin \
                $(STAGING_SUBDIR_TOOLCHAIN)/bin $(STAGING_SUBDIR_TOOLCHAIN)/*/bin $(STAGING_SUBDIR_TOOLCHAIN)/libexec \
                $(KDIR_BASE) \
-               -type f | $(XARGS) $(SCRIPT_DIR)/bundle-libraries.sh $(SDK_BUILD_DIR)/$(STAGING_SUBDIR_HOST))
+               -type f | $(BUNDLER_COMMAND))
 
        @-( \
                find \