aboutsummaryrefslogtreecommitdiffstats
path: root/include/kernel.mk
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2012-01-08 15:23:11 +0000
committerJo-Philipp Wich <jow@openwrt.org>2012-01-08 15:23:11 +0000
commit63b45c1a5d8d59c5f4a6c26542fa51d1b89a7fd0 (patch)
tree283cc106e88a9c1f4adde1d7f45c847b09a98c67 /include/kernel.mk
parent50d5d3d521d4818215814dbf4e9a24e26f1ce221 (diff)
downloadmaster-187ad058-63b45c1a5d8d59c5f4a6c26542fa51d1b89a7fd0.tar.gz
master-187ad058-63b45c1a5d8d59c5f4a6c26542fa51d1b89a7fd0.tar.bz2
master-187ad058-63b45c1a5d8d59c5f4a6c26542fa51d1b89a7fd0.zip
include: calculate md5sum over sorted kernel config symbol list and incorperate it into the kernel metapackage version, make kmods depend on this specific version.
The aim of this change is to invalidate kmods which are built against a different kernel config on the opkg metadata level. Manual copying and insmod of custom *.ko files, e.g. for development purpose, is still possible. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29686 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'include/kernel.mk')
-rw-r--r--include/kernel.mk6
1 files changed, 5 insertions, 1 deletions
diff --git a/include/kernel.mk b/include/kernel.mk
index 1af072d6bb..c0d8ef8a23 100644
--- a/include/kernel.mk
+++ b/include/kernel.mk
@@ -13,6 +13,7 @@ ifeq ($(DUMP),1)
KERNEL?=<KERNEL>
BOARD?=<BOARD>
LINUX_VERSION?=<LINUX_VERSION>
+ LINUX_VERMAGIC?=<LINUX_VERMAGIC>
else
ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
export GCC_HONOUR_COPTS=s
@@ -35,6 +36,9 @@ else
KERNEL_BUILD_DIR ?= $(BUILD_DIR_BASE)/linux-$(BOARD)$(if $(SUBTARGET),_$(SUBTARGET))$(if $(BUILD_SUFFIX),_$(BUILD_SUFFIX))
LINUX_DIR ?= $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)
+ LINUX_VERMAGIC:=$(strip $(shell cat $(LINUX_DIR)/.vermagic 2>/dev/null))
+ LINUX_VERMAGIC:=$(if $(LINUX_VERMAGIC),$(LINUX_VERMAGIC),unknown)
+
LINUX_UNAME_VERSION:=$(if $(word 3,$(subst ., ,$(KERNEL_BASE))),$(KERNEL_BASE),$(KERNEL_BASE).0)
ifneq ($(findstring -rc,$(LINUX_VERSION)),)
LINUX_UNAME_VERSION:=$(LINUX_UNAME_VERSION)-$(strip $(lastword $(subst -, ,$(LINUX_VERSION))))
@@ -130,7 +134,7 @@ define KernelPackage
SECTION:=kernel
CATEGORY:=Kernel modules
DESCRIPTION:=$(DESCRIPTION)
- EXTRA_DEPENDS:=kernel (=$(LINUX_VERSION)-$(LINUX_RELEASE))
+ EXTRA_DEPENDS:=kernel (=$(LINUX_VERSION)-$(LINUX_RELEASE)-$(LINUX_VERMAGIC))
VERSION:=$(LINUX_VERSION)$(if $(PKG_VERSION),+$(PKG_VERSION))-$(if $(PKG_RELEASE),$(PKG_RELEASE),$(LINUX_RELEASE))
$(call KernelPackage/$(1))
$(call KernelPackage/$(1)/$(BOARD))