2 # Copyright (C) 2010 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 # $Id: Makefile 5624 2006-11-23 00:29:07Z nbd $
9 include $(TOPDIR
)/rules.mk
14 BATCTL_VERSION
:=2012.0.0
15 PKG_MD5SUM
:=f1de23457a47ca4369ee1f0e0b7fc405
16 BATCTL_MD5SUM
:=27991c2921e18657c7262e917d45106a
18 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
19 PKG_SOURCE_URL
:=http
://downloads.open-mesh.org
/batman
/releases
/batman-adv-
$(PKG_VERSION
)
21 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)/$(PKG_NAME
)-$(PKG_VERSION
)
22 PKG_BATCTL_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)/batctl-
$(BATCTL_VERSION
)
24 include $(INCLUDE_DIR
)/package.mk
25 include $(INCLUDE_DIR
)/kernel.mk
27 define KernelPackage
/batman-adv
28 URL
:=http
://www.open-mesh.org
/
29 MAINTAINER
:=Marek Lindner
<lindner_marek@yahoo.de
>
30 SUBMENU
:=Network Support
31 DEPENDS
:=+kmod-lib-crc16
32 TITLE
:=B.A.T.M.A.N. Adv
33 FILES
:=$(PKG_BUILD_DIR
)/batman-adv.
$(LINUX_KMOD_SUFFIX
)
34 AUTOLOAD
:=$(call AutoLoad
,50,batman-adv
)
37 define KernelPackage
/batman-adv
/description
38 B.A.T.M.A.N. advanced is a kernel module which allows to
39 build layer
2 mesh networks. This package contains the
40 version
$(PKG_VERSION
) of the kernel module plus its user space
41 configuration
& managerment tool batctl.
44 define KernelPackage
/batman-adv
/config
45 source
"$(SOURCE)/Config.in"
48 MAKE_BATMAN_ADV_ARGS
+= \
49 CROSS_COMPILE
="$(TARGET_CROSS)" \
50 ARCH
="$(LINUX_KARCH)" \
51 PATH
="$(TARGET_PATH)" \
52 $(if
$(CONFIG_KMOD_BATMAN_ADV_DEBUG_LOG
),EXTRA_CFLAGS
="-DCONFIG_BATMAN_ADV_DEBUG") \
53 SUBDIRS
="$(PKG_BUILD_DIR)" \
54 LINUX_VERSION
="$(LINUX_VERSION)" \
58 CFLAGS
="$(TARGET_CFLAGS)" \
59 CCFLAGS
="$(TARGET_CFLAGS)" \
60 OFLAGS
="$(TARGET_CFLAGS)" \
65 DESTDIR
="$(PKG_INSTALL_DIR)" \
69 ifneq ($(DEVELOPER
)$(CONFIG_KMOD_BATMAN_ADV_BATCTL
),)
70 define Download
/batctl
71 FILE
:=batctl-
$(BATCTL_VERSION
).
tar.gz
72 URL
:=$(PKG_SOURCE_URL
)
73 MD5SUM
:=$(BATCTL_MD5SUM
)
75 $(eval
$(call Download
,batctl
))
77 BATCTL_EXTRACT
= tar xzf
"$(DL_DIR)/batctl-$(BATCTL_VERSION).tar.gz" -C
"$(BUILD_DIR)/$(PKG_NAME)"
78 BATCTL_PATCH
= $(call Build
/DoPatch
,"$(PKG_BATCTL_BUILD_DIR)","$(PATCH_DIR)","*batctl*")
79 BATCTL_BUILD
= $(MAKE
) -C
$(PKG_BATCTL_BUILD_DIR
) $(MAKE_BATCTL_ARGS
)
80 BATCTL_INSTALL
= $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/local
/sbin
/batctl
$(1)/usr
/sbin
/
85 @if
[ -d
"$(2)" ]; then \
86 if
[ "$$$$(ls $(2) | grep -Ec $(3))" -gt
0 ]; then \
87 $(KPATCH
) "$(1)" "$(2)" "$(3)"; \
93 $(call Build
/DoPatch
,"$(PKG_BUILD_DIR)","$(PATCH_DIR)","*batman*")
99 cp
$(PKG_BUILD_DIR
)/Makefile.kbuild
$(PKG_BUILD_DIR
)/Makefile
100 $(MAKE
) -C
"$(LINUX_DIR)" $(MAKE_BATMAN_ADV_ARGS
)
105 rm -rf
$(BUILD_DIR
)/$(PKG_NAME
)/
108 define KernelPackage
/batman-adv
/install
109 $(INSTALL_DIR
) $(1)/etc
/config
$(1)/etc
/hotplug.d
/net
$(1)/lib
/batman-adv
$(1)/usr
/sbin
110 $(INSTALL_DATA
) .
/files
/etc
/config
/batman-adv
$(1)/etc
/config
111 $(INSTALL_DATA
) .
/files
/lib
/batman-adv
/config.sh
$(1)/lib
/batman-adv
112 $(INSTALL_BIN
) .
/files
/etc
/hotplug.d
/net
/99-batman-adv
$(1)/etc
/hotplug.d
/net
113 $(INSTALL_BIN
) .
/files
/usr
/sbin
/batman-adv
$(1)/usr
/sbin
117 $(eval
$(call KernelPackage
,batman-adv
))