Browse Source

build: move symvers files to kernel build dir

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 <[email protected]>
Felix Fietkau 5 years ago
parent
commit
4627b5df69
1 changed files with 6 additions and 4 deletions
  1. 6 4
      include/kernel.mk

+ 6 - 4
include/kernel.mk

@@ -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