From efaaadb49e90b51ba3a6adc6fafc330c23b8f764 Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jo@mein.io>
Date: Fri, 30 Aug 2019 15:45:06 +0200
Subject: [PATCH] sdk: use bundle-libraries.sh to ship kernel objtool tools

Ensure that the kernel objtool utilities are processed by the library
bundler in order to ensure that they're usable on foreign systems with
different libc versions.

Fixes: a9f6fceb42 ("sdk: fix building external modules when CONFIG_STACK_VALIDATION=y")
Acked-by: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
---
 target/sdk/Makefile | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/target/sdk/Makefile b/target/sdk/Makefile
index 2badc31429..6d81834720 100644
--- a/target/sdk/Makefile
+++ b/target/sdk/Makefile
@@ -71,6 +71,7 @@ KERNEL_FILES_BASE := \
 	.config \
 	Makefile \
 	scripts \
+	tools/objtool \
 	include \
 	Module.symvers \
 	modules.builtin \
@@ -95,16 +96,9 @@ $(BIN_DIR)/$(SDK_NAME).tar.xz: clean
 	$(TAR) -cf - -C $(TOPDIR) $(KDIR_BASE)/tools/usb/usbip/ | \
 		$(TAR) -xf - -C $(SDK_BUILD_DIR)
 
-	# Copy objtool executables.  They are required for building external
-	# modules if "Compile-time stack metadata validation" is enabled.
-	if grep -q '^CONFIG_STACK_VALIDATION=y' $(LINUX_DIR)/.config; then \
-		$(TAR) -cf - -C $(TOPDIR) \
-				`cd $(TOPDIR); find $(KDIR_BASE)/tools/objtool -type f -executable` | \
-			$(TAR) -xf - -C $(SDK_BUILD_DIR); \
-	fi
-
 	(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))
 
 	@-( \
-- 
2.30.2