mirror of
https://github.com/openwrt/routing.git
synced 2026-06-17 17:01:55 +04:00
8112737cdc
The Module.symvers with the exported symbols of all other kernel modules in OpenWrt is usually placed in the main source directory of the package. But the actual sources for batman-adv are found in net/batman-adv. OpenWrt must therefore be informed to move it to this subdirectory or otherwise modpost will fail to find the symbols WARNING: "cfg80211_get_station" [.../batman-adv-2018.3/net/batman-adv/batman-adv.ko] undefined! The dependency will then be missing in the .modinfo depends= option and thus it the kernel module loader will not correctly load the cfg80211.ko during bootup. Signed-off-by: Sven Eckelmann <sven@narfation.org>
96 lines
3.1 KiB
Makefile
96 lines
3.1 KiB
Makefile
#
|
|
# Copyright (C) 2010 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=batman-adv
|
|
|
|
PKG_VERSION:=2018.3
|
|
PKG_RELEASE:=0
|
|
PKG_HASH:=33f3f942203732e0568a6bc0226a0fe8eb147c961f0d0c13b2e6b16237d412ff
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=https://downloads.open-mesh.org/batman/releases/batman-adv-$(PKG_VERSION)
|
|
PKG_LICENSE:=GPL-2.0
|
|
PKG_EXTMOD_SUBDIRS=net/batman-adv
|
|
|
|
STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
|
|
|
|
include $(INCLUDE_DIR)/kernel.mk
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define KernelPackage/batman-adv
|
|
URL:=https://www.open-mesh.org/
|
|
MAINTAINER:=Simon Wunderlich <sw@simonwunderlich.de>
|
|
SUBMENU:=Network Support
|
|
DEPENDS:=+KMOD_BATMAN_ADV_BLA:kmod-lib-crc16 +kmod-crypto-crc32c +kmod-lib-crc32c +kmod-cfg80211
|
|
TITLE:=B.A.T.M.A.N. Adv
|
|
FILES:=$(PKG_BUILD_DIR)/net/batman-adv/batman-adv.$(LINUX_KMOD_SUFFIX)
|
|
AUTOLOAD:=$(call AutoProbe,batman-adv)
|
|
endef
|
|
|
|
define KernelPackage/batman-adv/description
|
|
B.A.T.M.A.N. advanced is a kernel module which allows to
|
|
build layer 2 mesh networks. This package builds
|
|
version $(PKG_VERSION) of the kernel module.
|
|
endef
|
|
|
|
define KernelPackage/batman-adv/config
|
|
source "$(SOURCE)/Config.in"
|
|
endef
|
|
|
|
define Package/kmod-batman-adv/conffiles
|
|
/etc/config/batman-adv
|
|
endef
|
|
|
|
PKG_EXTRA_KCONFIG:= \
|
|
CONFIG_BATMAN_ADV=m \
|
|
CONFIG_BATMAN_ADV_DEBUG=$(if $(CONFIG_KMOD_BATMAN_ADV_DEBUG_LOG),y,n) \
|
|
CONFIG_BATMAN_ADV_DEBUGFS=$(if $(CONFIG_KMOD_BATMAN_ADV_DEBUGFS),y,n) \
|
|
CONFIG_BATMAN_ADV_BLA=$(if $(CONFIG_KMOD_BATMAN_ADV_BLA),y,n) \
|
|
CONFIG_BATMAN_ADV_DAT=$(if $(CONFIG_KMOD_BATMAN_ADV_DAT),y,n) \
|
|
CONFIG_BATMAN_ADV_MCAST=$(if $(CONFIG_KMOD_BATMAN_ADV_MCAST),y,n) \
|
|
CONFIG_BATMAN_ADV_NC=$(if $(CONFIG_KMOD_BATMAN_ADV_NC),y,n) \
|
|
CONFIG_BATMAN_ADV_BATMAN_V=$(if $(CONFIG_KMOD_BATMAN_ADV_BATMAN_V),y,n) \
|
|
|
|
PKG_EXTRA_CFLAGS:= \
|
|
$(patsubst CONFIG_%, -DCONFIG_%=1, $(patsubst %=m,%,$(filter %=m,$(PKG_EXTRA_KCONFIG)))) \
|
|
$(patsubst CONFIG_%, -DCONFIG_%=1, $(patsubst %=y,%,$(filter %=y,$(PKG_EXTRA_KCONFIG)))) \
|
|
|
|
NOSTDINC_FLAGS = \
|
|
-I$(PKG_BUILD_DIR)/net/batman-adv \
|
|
-I$(STAGING_DIR)/usr/include/mac80211-backport \
|
|
-I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
|
|
-I$(STAGING_DIR)/usr/include/mac80211 \
|
|
-I$(STAGING_DIR)/usr/include/mac80211/uapi \
|
|
-I$(PKG_BUILD_DIR)/include/ \
|
|
-include backport/backport.h \
|
|
-include $(PKG_BUILD_DIR)/compat-hacks.h
|
|
|
|
COMPAT_SOURCES = \
|
|
$(if $(CONFIG_KMOD_BATMAN_ADV_MCAST),../../compat-sources/net/core/skbuff.o,) \
|
|
$(if $(CONFIG_KMOD_BATMAN_ADV_MCAST),../../compat-sources/net/ipv4/igmp.o,) \
|
|
$(if $(CONFIG_KMOD_BATMAN_ADV_MCAST),../../compat-sources/net/ipv6/mcast_snoop.o,) \
|
|
|
|
define Build/Compile
|
|
+env "batman-adv-y=$(COMPAT_SOURCES)" \
|
|
$(MAKE) $(PKG_JOBS) -C "$(LINUX_DIR)" \
|
|
ARCH="$(LINUX_KARCH)" \
|
|
CROSS_COMPILE="$(TARGET_CROSS)" \
|
|
SUBDIRS="$(PKG_BUILD_DIR)/net/batman-adv" \
|
|
$(PKG_EXTRA_KCONFIG) \
|
|
EXTRA_CFLAGS="$(PKG_EXTRA_CFLAGS)" \
|
|
NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
|
|
modules
|
|
endef
|
|
|
|
define KernelPackage/batman-adv/install
|
|
$(CP) ./files/. $(1)/
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,batman-adv))
|