add lvm2 cross compile fix
[packages.git] / net / wing / Makefile
1 #
2 # Copyright (C) 2006-2009 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=wing
11 PKG_VERSION:=20110329
12 PKG_RELEASE:=2
13 PKG_REV:=4ef2a352b29c26ce76d8b3d7c6897d301362a101
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
16 PKG_SOURCE_URL:=git://github.com/rriggio/click.git
17 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
18 PKG_SOURCE_VERSION:=$(PKG_REV)
19 PKG_SOURCE_PROTO:=git
20
21 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
22
23 PKG_BUILD_DEPENDS:=wing/host
24
25 include $(INCLUDE_DIR)/package.mk
26 include $(INCLUDE_DIR)/host-build.mk
27
28 define Package/wing
29         TITLE:=Wireless mesh networking toolkit
30         SECTION:=net
31         CATEGORY:=Network
32         MAINTAINER:=Roberto Riggio <roberto.riggio@create-net.org>
33         DEPENDS:=+kmod-tun +libpcap +libstdcpp
34         URL:=http://www.wing-project.org/
35 endef
36
37 define Package/wing/Description 
38         Wing is a wireless mesh routing software. The routing protocol
39         is derived from Roofnet. It supports multiple radio interfaces 
40         and link quality routing using the ETX, ETT, or WCETT metric.
41 endef 
42
43 EXTRA_CFLAGS=-MD
44
45 CONFIGURE_ARGS += \
46         --enable-tools=host \
47         --enable-userlevel \
48         --enable-wifi \
49         --enable-wing \
50         --enable-diffserv \
51         --disable-linuxmodule \
52         --disable-dynamic-linking \
53
54 HOST_CONFIGURE_ARGS += \
55         --enable-userlevel \
56         --enable-wifi \
57         --enable-diffserv \
58         --enable-wing \
59         --disable-linuxmodule \
60
61 define Host/Compile
62         $(call Host/Install/Default, tools elementmap.xml install)
63 endef
64
65 define Build/Compile
66         (cd $(PKG_BUILD_DIR)/userlevel; \
67                 $(STAGING_DIR_HOST)/bin/click-mkmindriver -p $(PKG_NAME) -C $(STAGING_DIR_HOST) \
68                 -f $(PKG_BUILD_DIR)/conf/wing/sample.click \
69                 -A --all -E Discard -E Print -E PrintWifi -E Null \
70                 -E InfiniteSource -E RatedSource -E EtherEncap -E UDPIPEncap \
71                 -E WINGETTMetric -E WINGETXMetric -E WINGHopCountMetric \
72                 -E ProbeTXRate -E MadwifiRate -E AutoRateFallback -E Minstrel \
73                 -E FairBuffer -E DeAggregator -E DWRRSched -E WFQSched -E WRRSched; \
74         );
75         $(call Build/Install/Default, MINDRIVER=$(PKG_NAME) install)
76 endef
77
78 define Package/wing/install
79         $(INSTALL_DIR) $(1)/usr/bin
80         $(INSTALL_DIR) $(1)/etc/wing
81         $(INSTALL_DIR) $(1)/usr/share/click
82         $(CP) ./files/* $(1)/
83         $(CP) $(PKG_BUILD_DIR)/conf/wing/click_config $(1)/usr/bin/
84         $(CP) $(PKG_BUILD_DIR)/conf/wing/write_handler $(1)/usr/bin/
85         $(CP) $(PKG_BUILD_DIR)/conf/wing/read_handler $(1)/usr/bin/
86         $(CP) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME)click $(1)/usr/bin/click
87         $(CP) $(PKG_INSTALL_DIR)/usr/bin/click-align $(1)/usr/bin/click-align
88         $(CP) $(PKG_BUILD_DIR)/conf/wing/*click $(1)/etc/wing/
89         $(CP) $(PKG_INSTALL_DIR)/usr/share/click/elementmap.xml $(1)/usr/share/click/elementmap.xml
90 endef
91
92 $(eval $(call HostBuild))
93 $(eval $(call BuildPackage,wing))
94