summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuK1337 <priv.luk@gmail.com>2019-07-12 12:55:35 +0200
committerƁukasz Patron <priv.luk@gmail.com>2019-07-19 21:49:04 +0200
commit6047f5a0c5fcb80f5fb8c9a8365c4b122dda0918 (patch)
treea08ee25ccadc6bf6304ceb93afbf77b18834a6fa
parent19c36cd7a69fe5cc880b3986b8c0d1341f5d81cf (diff)
downloadexternal_wget-6047f5a0c5fcb80f5fb8c9a8365c4b122dda0918.tar.gz
external_wget-6047f5a0c5fcb80f5fb8c9a8365c4b122dda0918.tar.bz2
external_wget-6047f5a0c5fcb80f5fb8c9a8365c4b122dda0918.zip
kernel: Consider depmod version when handling kernel modules
* This fixes dirty boot image rebuilding on devices with CONFIG_LOCALVERSION_AUTO=y and any driver set to =m. * Basically appending `cat include/config/kernel.release` to modules path makes sure that our find does not return old modules which would make cp fail with 'cp: will not overwrite just-created' message. Change-Id: Ifb79d33b95d7671d8b2d6633644c8b8290d1f442
-rw-r--r--build/tasks/kernel.mk4
1 files changed, 3 insertions, 1 deletions
diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
index e4779a3e..88573043 100644
--- a/build/tasks/kernel.mk
+++ b/build/tasks/kernel.mk
@@ -66,6 +66,7 @@ SELINUX_DEFCONFIG := $(TARGET_KERNEL_SELINUX_CONFIG)
## Internal variables
KERNEL_OUT := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
KERNEL_CONFIG := $(KERNEL_OUT)/.config
+KERNEL_RELEASE := $(KERNEL_OUT)/include/config/kernel.release
ifeq ($(KERNEL_ARCH),x86_64)
KERNEL_DEFCONFIG_ARCH := x86
@@ -246,7 +247,8 @@ INSTALLED_KERNEL_MODULES: depmod-host
$(hide) if grep -q '=m' $(KERNEL_CONFIG); then \
echo "Installing Kernel Modules"; \
$(call make-kernel-target,INSTALL_MOD_PATH=$(MODULES_INTERMEDIATES) modules_install); \
- modules=$$(find $(MODULES_INTERMEDIATES) -type f -name '*.ko'); \
+ kernel_release=$$(cat $(KERNEL_RELEASE)) \
+ modules=$$(find $(MODULES_INTERMEDIATES)/lib/modules/$$kernel_release -type f -name '*.ko'); \
for f in $$modules; do \
$(KERNEL_TOOLCHAIN_PATH)strip --strip-unneeded $$f; \
done; \