iw: add iw-full package without size reduction hacks
[openwrt/staging/wigyori.git] / package / network / utils / iw / Makefile
1 #
2 # Copyright (C) 2007-2011 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:=iw
11 PKG_VERSION:=4.14
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@KERNEL/software/network/iw
16 PKG_HASH:=f01671c0074bfdec082a884057edba1b9efd35c89eda554638496f03b769ad89
17
18 PKG_BUILD_DIR:=$(BUILD_DIR)/iw-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
19 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
20 PKG_LICENSE:=GPL-2.0
21
22 include $(INCLUDE_DIR)/package.mk
23
24 define Package/iw
25 SECTION:=net
26 CATEGORY:=Network
27 TITLE:=cfg80211 interface configuration utility
28 URL:=http://wireless.kernel.org/en/users/Documentation/iw
29 DEPENDS:= +libnl-tiny
30 VARIANT:=tiny
31 endef
32
33 define Package/iw-full
34 $(Package/iw)
35 TITLE += (full version)
36 VARIANT:=full
37 PROVIDES:=iw
38 endef
39
40 define Build/Configure
41 echo "const char iw_version[] = \"$(PKG_VERSION)\";" > $(PKG_BUILD_DIR)/version.c
42 echo "#!/bin/sh" > $(PKG_BUILD_DIR)/version.sh
43 chmod +x $(PKG_BUILD_DIR)/version.sh
44 endef
45
46 TARGET_CPPFLAGS:= \
47 -I$(STAGING_DIR)/usr/include/libnl-tiny \
48 $(TARGET_CPPFLAGS) \
49 -DCONFIG_LIBNL20 \
50 -D_GNU_SOURCE \
51 -flto
52
53 ifeq ($(BUILD_VARIANT),full)
54 TARGET_CPPFLAGS += -DIW_FULL
55 MAKE_FLAGS += IW_FULL=1
56 endif
57
58 MAKE_FLAGS += \
59 CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -ffunction-sections -fdata-sections" \
60 LDFLAGS="$(TARGET_LDFLAGS) -Wl,--gc-sections -flto" \
61 NL1FOUND="" NL2FOUND=Y \
62 NLLIBNAME="libnl-tiny" \
63 LIBS="-lm -lnl-tiny" \
64 V=1
65
66 define Package/iw/install
67 $(INSTALL_DIR) $(1)/usr/sbin
68 $(INSTALL_BIN) $(PKG_BUILD_DIR)/iw $(1)/usr/sbin/
69 endef
70
71 Package/iw-full/install=$(Package/iw/install)
72
73 $(eval $(call BuildPackage,iw))
74 $(eval $(call BuildPackage,iw-full))