include $(TOPDIR)/rules.mk
PKG_NAME:=wing
-
-ifneq ($(CONFIG_WING_STABLE),)
- PKG_VERSION:=20100805
- PKG_RELEASE:=1
- PKG_REV:=21aae2ae5bea85426aded47b055b4fe62c2cea2e
-else
- PKG_VERSION:=$(shell date +%Y%m%d)
- PKG_RELEASE:=1
- PKG_REV:=HEAD
-endif
+PKG_VERSION:=20101023
+PKG_RELEASE:=1
+PKG_REV:=daffb8d7642c4a343951d67159504ff4f4da49ed
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://github.com/create-net/click-wing.git
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_BUILD_DEPENDS:=wing/host
+
include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/host-build.mk
define Package/wing
- TITLE:=Wireless mesh networking toolkit
- SECTION:=net
- CATEGORY:=Network
- MAINTAINER:=Roberto Riggio <roberto.riggio@create-net.org>
- DEPENDS:=+kmod-tun
- URL:=http://www.wing-project.org/
+ TITLE:=Wireless mesh networking toolkit
+ SECTION:=net
+ CATEGORY:=Network
+ MAINTAINER:=Roberto Riggio <roberto.riggio@create-net.org>
+ DEPENDS:=+kmod-tun +libpcap +libstdcpp
+ URL:=http://www.wing-project.org/
endef
define Package/wing/Description
Wing is a wireless mesh routing software. The routing protocol
- is derived from Roofnet. It supports multiple radio interfaces and
- link quality routing using the ETX, ETT, and WCETT metrics.
+ is derived from Roofnet. It supports multiple radio interfaces
+ and link quality routing using the ETX, ETT, or WCETT metric.
endef
-define Package/wing/config
- source "$(SOURCE)/Config.in"
+EXTRA_CFLAGS=-MD
+
+CONFIGURE_ARGS += \
+ --enable-tools=host \
+ --enable-userlevel \
+ --enable-wifi \
+ --enable-wing \
+ --disable-linuxmodule \
+ --disable-dynamic-linking \
+
+HOST_CONFIGURE_ARGS += \
+ --enable-userlevel \
+ --enable-wifi \
+ --enable-wing \
+ --disable-linuxmodule \
+
+define Host/Compile
+ $(call Host/Install/Default, tools elementmap.xml install)
endef
-define Build/Configure
- (cd $(PKG_BUILD_DIR); \
- rm -rf config.{cache,status}; \
- ./configure \
- --prefix=/usr \
- --enable-userlevel \
- --enable-wifi \
- --enable-wing \
- --disable-linuxmodule \
- );
- $(MAKE) -C $(PKG_BUILD_DIR) tools elementmap.xml
+define Build/Compile
(cd $(PKG_BUILD_DIR)/userlevel; \
- ../tools/click-mkmindriver/click-mkmindriver -p $(PKG_NAME) -C .. \
+ $(STAGING_DIR_HOST)/bin/click-mkmindriver -p $(PKG_NAME) -C $(STAGING_DIR_HOST) \
-f $(PKG_BUILD_DIR)/conf/wing/sample.click \
-A --all -E Discard -E Print -E Null \
-E InfiniteSource -E RatedSource -E EtherEncap -E UDPIPEncap \
- -E AthdescEncap -E AthdescDecap -E RadiotapDecap -E RadiotapEncap \
- -E ProbeTXRate -E MadwifiRate -E AutoRateFallback \
+ -E RadiotapDecap -E RadiotapEncap \
+ -E ProbeTXRate -E MadwifiRate -E AutoRateFallback -E Minstrel \
-E RoundRobinSched -E DRRSched; \
- )
- (cd $(PKG_BUILD_DIR); \
- rm -rf config.{cache,status} ; \
- $(TARGET_CONFIGURE_OPTS) \
- CXXFLAGS="-static -O2 -MD" CFLAGS="-static -MD" \
- CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
- LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
- ./configure \
- --prefix=/usr \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --enable-tools=mixed \
- --enable-userlevel \
- --enable-wifi \
- --enable-wing \
- --disable-linuxmodule \
);
-endef
-
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR) \
- MINDRIVER=$(PKG_NAME) \
- DESTDIR="$(PKG_INSTALL_DIR)" \
- all install
+ $(call Build/Install/Default, MINDRIVER=$(PKG_NAME) install)
endef
define Package/wing/install
$(CP) $(PKG_INSTALL_DIR)/usr/share/click/elementmap.xml $(1)/usr/share/click/elementmap.xml
endef
+$(eval $(call HostBuild))
$(eval $(call BuildPackage,wing))