iw: bump to 5.19
[openwrt/staging/stintel.git] / package / network / utils / iw / Makefile
index 1ee8861648a328e5e03d872a4e32f108d4330423..eb3a9ba091d2a2c3674316898f430a50b9c1bf1e 100644 (file)
@@ -8,14 +8,15 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=iw
-PKG_VERSION:=3.10
+PKG_VERSION:=5.19
 PKG_RELEASE:=1
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=@KERNEL/software/network/iw
+PKG_HASH:=f167bbe947dd53bb9ebc0c1dcef5db6ad73ac1d6084f2c6f9376c5c360cc4d4e
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_SOURCE_URL:=https://www.kernel.org/pub/software/network/iw
-PKG_MD5SUM:=0dc736963455937278b10fe8a2157e47
-
-PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
+PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
+PKG_LICENSE:=GPL-2.0
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -24,13 +25,20 @@ define Package/iw
   CATEGORY:=Network
   TITLE:=cfg80211 interface configuration utility
   URL:=http://wireless.kernel.org/en/users/Documentation/iw
-  DEPENDS:= +libnl-tiny @(!TARGET_avr32||BROKEN)
+  DEPENDS:= +libnl-tiny
+  VARIANT:=tiny
+endef
+
+define Package/iw-full
+  $(Package/iw)
+  TITLE += (full version)
+  VARIANT:=full
+  PROVIDES:=iw
 endef
 
 define Build/Configure
        echo "const char iw_version[] = \"$(PKG_VERSION)\";" > $(PKG_BUILD_DIR)/version.c
-       rm -f $(PKG_BUILD_DIR)/version.sh
-       touch $(PKG_BUILD_DIR)/version.sh
+       echo "#!/bin/sh" > $(PKG_BUILD_DIR)/version.sh
        chmod +x $(PKG_BUILD_DIR)/version.sh
 endef
 
@@ -38,11 +46,17 @@ TARGET_CPPFLAGS:= \
        -I$(STAGING_DIR)/usr/include/libnl-tiny \
        $(TARGET_CPPFLAGS) \
        -DCONFIG_LIBNL20 \
-       -D_GNU_SOURCE
+       -D_GNU_SOURCE \
+       -flto
+
+ifeq ($(BUILD_VARIANT),full)
+  TARGET_CPPFLAGS += -DIW_FULL
+  MAKE_FLAGS += IW_FULL=1
+endif
 
 MAKE_FLAGS += \
-       CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
-       LDFLAGS="$(TARGET_LDFLAGS)" \
+       CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -ffunction-sections -fdata-sections" \
+       LDFLAGS="$(TARGET_LDFLAGS) -Wl,--gc-sections -flto" \
        NL1FOUND="" NL2FOUND=Y \
        NLLIBNAME="libnl-tiny" \
        LIBS="-lm -lnl-tiny" \
@@ -53,4 +67,7 @@ define Package/iw/install
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/iw $(1)/usr/sbin/
 endef
 
+Package/iw-full/install=$(Package/iw/install)
+
 $(eval $(call BuildPackage,iw))
+$(eval $(call BuildPackage,iw-full))