mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-08 20:10:37 +00:00
build: pass KBUILD_EXTRA_SYMBOLS with symvers files for kernel module packages
This replaces the previous (deprecated) method of collecting symvers data in $(PKG_BUILD_DIR)/Module.symvers, which does not work on newer kernels Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: maurerr <mariusd84@gmail.com>
This commit is contained in:
parent
8e639290b2
commit
9f59976355
@ -136,6 +136,7 @@ define BuildKernel
|
|||||||
$(LINUX_DIR)/.modules: export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
|
$(LINUX_DIR)/.modules: export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
|
||||||
$(LINUX_DIR)/.modules: $(STAMP_CONFIGURED) $(LINUX_DIR)/.config FORCE
|
$(LINUX_DIR)/.modules: $(STAMP_CONFIGURED) $(LINUX_DIR)/.config FORCE
|
||||||
$(Kernel/CompileModules)
|
$(Kernel/CompileModules)
|
||||||
|
mkdir -p $(PKG_SYMVERS_DIR)
|
||||||
touch $$@
|
touch $$@
|
||||||
|
|
||||||
$(LINUX_DIR)/.image: export STAGING_PREFIX=$$(STAGING_DIR_HOST)
|
$(LINUX_DIR)/.image: export STAGING_PREFIX=$$(STAGING_DIR_HOST)
|
||||||
|
@ -118,7 +118,8 @@ KERNEL_MAKE_FLAGS = \
|
|||||||
CONFIG_SHELL="$(BASH)" \
|
CONFIG_SHELL="$(BASH)" \
|
||||||
$(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
|
$(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
|
||||||
$(if $(PKG_BUILD_ID),LDFLAGS_MODULE=--build-id=0x$(PKG_BUILD_ID)) \
|
$(if $(PKG_BUILD_ID),LDFLAGS_MODULE=--build-id=0x$(PKG_BUILD_ID)) \
|
||||||
cmd_syscalls=
|
cmd_syscalls= \
|
||||||
|
$(if $(__package_mk),KBUILD_EXTRA_SYMBOLS="$(wildcard $(PKG_SYMVERS_DIR)/*.symvers)")
|
||||||
|
|
||||||
ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
|
ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
|
||||||
KERNEL_MAKE_FLAGS += \
|
KERNEL_MAKE_FLAGS += \
|
||||||
@ -140,14 +141,6 @@ PKG_EXTMOD_SUBDIRS ?= .
|
|||||||
|
|
||||||
PKG_SYMVERS_DIR = $(KERNEL_BUILD_DIR)/symvers
|
PKG_SYMVERS_DIR = $(KERNEL_BUILD_DIR)/symvers
|
||||||
|
|
||||||
define populate_module_symvers
|
|
||||||
@mkdir -p $(PKG_SYMVERS_DIR)
|
|
||||||
cat /dev/null > $(PKG_SYMVERS_DIR)/$(PKG_NAME).symvers; \
|
|
||||||
for subdir in $(PKG_EXTMOD_SUBDIRS); do \
|
|
||||||
cat $(PKG_SYMVERS_DIR)/*.symvers 2>/dev/null > $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers; \
|
|
||||||
done
|
|
||||||
endef
|
|
||||||
|
|
||||||
define collect_module_symvers
|
define collect_module_symvers
|
||||||
for subdir in $(PKG_EXTMOD_SUBDIRS); do \
|
for subdir in $(PKG_EXTMOD_SUBDIRS); do \
|
||||||
realdir=$$$$(readlink -f $(PKG_BUILD_DIR)); \
|
realdir=$$$$(readlink -f $(PKG_BUILD_DIR)); \
|
||||||
@ -161,7 +154,6 @@ endef
|
|||||||
|
|
||||||
define KernelPackage/hooks
|
define KernelPackage/hooks
|
||||||
ifneq ($(PKG_NAME),kernel)
|
ifneq ($(PKG_NAME),kernel)
|
||||||
Hooks/Compile/Pre += populate_module_symvers
|
|
||||||
Hooks/Compile/Post += collect_module_symvers
|
Hooks/Compile/Post += collect_module_symvers
|
||||||
endif
|
endif
|
||||||
define KernelPackage/hooks
|
define KernelPackage/hooks
|
||||||
|
Loading…
x
Reference in New Issue
Block a user