kernel: lantiq: fix Module.symvers handling

If an external module uses exported symbols from another external
module, Kbuild needs to have full knowledge of all symbols to
avoid spitting out warnings about undefined symbols.

Use PKG_EXTMOD_SUBDIRS to point to the build directory which contains
the Module.symvers.

Pass KERNEL_MAKE_FLAGS to the external module build, to inject
KBUILD_EXTRA_SYMBOLS. KBUILD_EXTRA_SYMBOLS holds a space separated list
of Module.symvers, which list all exported symbols.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: maurerr <mariusd84@gmail.com>
This commit is contained in:
Mathias Kresin 2020-12-27 21:59:28 +01:00 committed by maurerr
parent 0902fedb34
commit 3aed0df6e4
8 changed files with 16 additions and 2 deletions
package/kernel/lantiq
ltq-adsl
ltq-atm
ltq-ifxos
ltq-ptm
ltq-tapi
ltq-vdsl-mei
ltq-vdsl
ltq-vmmc

@ -46,6 +46,9 @@ IFX_DSL_MAX_DEVICE=1
IFX_DSL_LINES_PER_DEVICE=1
IFX_DSL_CHANNELS_PER_LINE=1
MAKE_FLAGS += \
$(KERNEL_MAKE_FLAGS)
CONFIGURE_ARGS += --enable-kernel-include="$(LINUX_DIR)/include" \
--with-max-device="$(IFX_DSL_MAX_DEVICE)" \
--with-lines-per-device="$(IFX_DSL_LINES_PER_DEVICE)" \

@ -36,7 +36,7 @@ endef
define Build/Compile
cd $(LINUX_DIR); \
ARCH=mips CROSS_COMPILE="$(KERNEL_CROSS)" \
$(MAKE) BUILD_VARIANT=$(BUILD_VARIANT) M=$(PKG_BUILD_DIR) V=1 modules
$(MAKE) $(KERNEL_MAKE_FLAGS) BUILD_VARIANT=$(BUILD_VARIANT) M=$(PKG_BUILD_DIR) V=1 modules
endef
$(eval $(call KernelPackage,ltq-atm-danube))

@ -16,6 +16,7 @@ PKG_HASH:=ed7fe39311d7a4a13d23ed0ae2445c0d825b472b5a98da9b72bcaabcf5ed2d5f
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_LICENSE:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE
PKG_EXTMOD_SUBDIRS:=src
PKG_FIXUP:=autoreconf

@ -45,7 +45,7 @@ endef
define Build/Compile
cd $(LINUX_DIR); \
ARCH=mips CROSS_COMPILE="$(KERNEL_CROSS)" \
$(MAKE) BUILD_VARIANT=$(BUILD_VARIANT) M=$(PKG_BUILD_DIR) V=1 modules
$(MAKE) $(KERNEL_MAKE_FLAGS) BUILD_VARIANT=$(BUILD_VARIANT) M=$(PKG_BUILD_DIR) V=1 modules
endef
$(eval $(call KernelPackage,ltq-ptm-danube))

@ -19,6 +19,7 @@ PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_CHECK_FORMAT_SECURITY:=0
PKG_FIXUP:=autoreconf
PKG_EXTMOD_SUBDIRS:=src
include $(INCLUDE_DIR)/package.mk
@ -39,6 +40,9 @@ define KernelPackage/ltq-tapi/config
source "$(SOURCE)/Config.in"
endef
MAKE_FLAGS += \
$(KERNEL_MAKE_FLAGS)
CONFIGURE_ARGS += \
ARCH=$(LINUX_KARCH) \
--enable-linux-26 \

@ -21,6 +21,7 @@ PKG_FLAGS:=nonshared
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
PKG_LICENSE:=GPL-2.0 BSD-2-Clause
PKG_LICENSE_FILES:=LICENSE
PKG_EXTMOD_SUBDIRS:=src
include $(INCLUDE_DIR)/package.mk
@ -52,6 +53,7 @@ define Package/ltq-vdsl-mei-test/description
endef
MAKE_FLAGS += \
$(KERNEL_MAKE_FLAGS) \
SHELL="$(BASH)"
CONFIGURE_ARGS += \

@ -42,6 +42,7 @@ define Package/ltq-vdsl-vr9/description
endef
MAKE_FLAGS += \
$(KERNEL_MAKE_FLAGS) \
SHELL="$(BASH)"
CONFIGURE_ARGS += --enable-kernel-include="$(LINUX_DIR)/include" \

@ -39,6 +39,9 @@ define KernelPackage/ltq-vmmc/config
source "$(SOURCE)/Config.in"
endef
MAKE_FLAGS += \
$(KERNEL_MAKE_FLAGS)
CONFIGURE_ARGS += \
ARCH=$(LINUX_KARCH) \
--enable-linux-26 \