batman-adv: upgrade to 0.2.x maintenance branch
[openwrt/svn-archive/archive.git] / net / batman-advanced / Makefile
1 #
2 # Copyright (C) 2008 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id: Makefile 5624 2006-11-23 00:29:07Z nbd $
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=batman-adv
12 PKG_REV:=1545
13 PKG_VERSION:=r$(PKG_REV)
14 PKG_RELEASE:=1
15
16 PKG_KMOD_VERSION=caf7148e887b57abf37ef89a1b5aedf314893c94
17 PKG_KMOD_FNAME=batman-adv-maint-$(PKG_KMOD_VERSION)
18 PKG_KMOD_BUILD_DIR:=$(BUILD_DIR)/batman-adv
19
20 PKG_SOURCE_PROTO:=svn
21 PKG_SOURCE_VERSION:=$(PKG_REV)
22 PKG_SOURCE_SUBDIR:=batctl-0.2.x-$(PKG_VERSION)
23 PKG_SOURCE_URL:=http://downloads.open-mesh.net/svn/batman/branches/batctl-0.2.x/
24 PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
25 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
26
27 PKG_TOOL_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-batctl-install
28 PKG_TOOL_BUILD_DIR:=$(PKG_BUILD_DIR)
29
30 include $(INCLUDE_DIR)/package.mk
31 include $(INCLUDE_DIR)/kernel.mk
32
33 define Package/batman-adv/Default
34 URL:=http://www.open-mesh.net/
35 MAINTAINER:=Marek Lindner <lindner_marek@yahoo.de>
36 endef
37
38 define KernelPackage/batman-adv-kernelland
39 $(call Package/batman-adv/Default)
40 SUBMENU:=Network Support
41 DEPENDS:=@LINUX_2_6
42 TITLE:=B.A.T.M.A.N. layer 2
43 FILES:=$(PKG_KMOD_BUILD_DIR)/batman-adv.$(LINUX_KMOD_SUFFIX)
44 AUTOLOAD:=$(call AutoLoad,50,batman-adv)
45 endef
46
47 define KernelPackage/batman-adv-kernelland/config
48 source "$(SOURCE)/Config.in"
49 endef
50
51 define KernelPackage/batman-adv-kernelland/description
52 B.A.T.M.A.N. layer 2
53 endef
54
55 define Download/batman-adv-maint
56 FILE:=$(PKG_KMOD_FNAME)
57 URL:=http://git.open-mesh.org/snapshot
58 endef
59 $(eval $(call Download,batman-adv-maint))
60
61 MAKE_BATADV_KERNELLAND_ARGS += \
62 CROSS_COMPILE="$(TARGET_CROSS)" \
63 ARCH="$(LINUX_KARCH)" \
64 PATH="$(TARGET_PATH)" \
65 $(if $(CONFIG_KMOD_BATMAN_ADV_DEBUG_LOG),EXTRA_FLAGS="-DCONFIG_BATMAN_ADV_DEBUG") \
66 SUBDIRS="$(PKG_KMOD_BUILD_DIR)" \
67 LINUX_VERSION="$(LINUX_VERSION)" \
68 REVISION="$(PKG_REV)" modules
69
70 MAKE_BATCTL_ARGS += \
71 CFLAGS="$(TARGET_CFLAGS)" \
72 CCFLAGS="$(TARGET_CFLAGS)" \
73 OFLAGS="$(TARGET_CFLAGS)" \
74 REVISION="$(PKG_REV)" \
75 CC="$(TARGET_CC)" \
76 NODEBUG=1 \
77 UNAME="Linux" \
78 INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
79 STRIP="/bin/true" \
80 batctl install
81
82 define Build/Configure
83 endef
84
85 ifneq ($(DEVELOPER)$(CONFIG_PACKAGE_kmod-batman-adv-kernelland),)
86 BUILD_KMOD_ADV = $(MAKE) -C "$(LINUX_DIR)" $(MAKE_BATADV_KERNELLAND_ARGS)
87 endif
88
89 ifneq ($(DEVELOPER)$(CONFIG_PACKAGE_kmod-batman-adv-kernelland),)
90 BUILD_BATCTL = $(MAKE) -C $(PKG_TOOL_BUILD_DIR) $(MAKE_BATCTL_ARGS)
91 endif
92
93 define Build/Compile
94 tar xzf "$(DL_DIR)/$(PKG_KMOD_FNAME)" -C "$(BUILD_DIR)"
95 cp $(PKG_KMOD_BUILD_DIR)/Makefile.kbuild $(PKG_KMOD_BUILD_DIR)/Makefile
96 $(BUILD_KMOD_ADV)
97 $(BUILD_BATCTL)
98 endef
99
100 define Build/Clean
101 rm -rf $(PKG_KMOD_BUILD_DIR)
102 endef
103
104 define KernelPackage/batman-adv-kernelland/install
105 $(INSTALL_DIR) $(1)/etc/config $(1)/etc/init.d $(1)/usr/sbin
106 $(INSTALL_BIN) ./files/etc/init.d/batman-adv-kernelland $(1)/etc/init.d
107 $(INSTALL_DATA) ./files/etc/config/batman-adv-kernelland $(1)/etc/config
108 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/batctl $(1)/usr/sbin/
109 endef
110
111 $(eval $(call KernelPackage,batman-adv-kernelland))