From c46ae366cfe3ea985c2b866d8b61f87c2a981f85 Mon Sep 17 00:00:00 2001 From: Arien Judge Date: Fri, 13 Oct 2023 20:58:16 +1100 Subject: [PATCH] toolchain: link ldd when using external toolchain When using an external toolchain, ldd is not linked into the rootfs. This causes subsequent upgrades to fail with 'Failed to exec upgraded'. This patch adds the symlink when using an external toolchain and musl. Signed-off-by: Arien Judge --- package/libs/toolchain/Makefile | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/package/libs/toolchain/Makefile b/package/libs/toolchain/Makefile index f44536144df..ea36af5da44 100644 --- a/package/libs/toolchain/Makefile +++ b/package/libs/toolchain/Makefile @@ -655,12 +655,23 @@ else exit 0 endef + define Package/glibc/install + endef + + LD_MUSL_NAME = $(notdir $(firstword $(wildcard $(TOOLCHAIN_ROOT_DIR)/lib/libc.so*))) + + define Package/musl/install + $(INSTALL_DIR) $(1)/usr/bin + $(LN) ../../lib/$(LD_MUSL_NAME) $(1)/usr/bin/ldd + endef + define Package/libc/install for file in $(call qstrip,$(CONFIG_LIBC_FILE_SPEC)); do \ $(INSTALL_DIR) $(1)/lib ; \ $(CP) $(call qstrip,$(CONFIG_LIBC_ROOT_DIR))/$$$$file $(1)/lib/ ; \ done ; \ exit 0 + $(call Package/$(LIBC)/install,$1) endef define Package/libpthread/install -- 2.30.2