build: move symvers files to kernel build dir
authorFelix Fietkau <nbd@nbd.name>
Thu, 9 Apr 2020 07:41:16 +0000 (09:41 +0200)
committerFelix Fietkau <nbd@nbd.name>
Thu, 9 Apr 2020 07:54:02 +0000 (09:54 +0200)
The symvers files of older kernel versions are incompatible with the ones
from 5.4, so changing the kernel version without running make clean was
causing build failures in kernel module packages.
Fix this by moving the directory, ensuring that symvers files get thrown
away with a kernel version change

Signed-off-by: Felix Fietkau <nbd@nbd.name>
include/kernel.mk

index 02d0949a7210f0c0b8b72a1ffdad746b88b893d2..40aa1a5163e9787f370f9d41c45f025b4b2e62b2 100644 (file)
@@ -138,11 +138,13 @@ endif
 
 PKG_EXTMOD_SUBDIRS ?= .
 
+PKG_SYMVERS_DIR = $(KERNEL_BUILD_DIR)/symvers
+
 define populate_module_symvers
-       @mkdir -p $(PKG_INFO_DIR)
-       cat /dev/null > $(PKG_INFO_DIR)/$(PKG_NAME).symvers; \
+       @mkdir -p $(PKG_SYMVERS_DIR)
+       cat /dev/null > $(PKG_SYMVERS_DIR)/$(PKG_NAME).symvers; \
        for subdir in $(PKG_EXTMOD_SUBDIRS); do \
-               cat $(PKG_INFO_DIR)/*.symvers 2>/dev/null > $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers; \
+               cat $(PKG_SYMVERS_DIR)/*.symvers 2>/dev/null > $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers; \
        done
 endef
 
@@ -154,7 +156,7 @@ define collect_module_symvers
                        grep -F $$$$realdir $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers >> $(PKG_BUILD_DIR)/Module.symvers.tmp; \
        done; \
        sort -u $(PKG_BUILD_DIR)/Module.symvers.tmp > $(PKG_BUILD_DIR)/Module.symvers; \
-       mv $(PKG_BUILD_DIR)/Module.symvers $(PKG_INFO_DIR)/$(PKG_NAME).symvers
+       mv $(PKG_BUILD_DIR)/Module.symvers $(PKG_SYMVERS_DIR)/$(PKG_NAME).symvers
 endef
 
 define KernelPackage/hooks