iperf3: update to 3.6
[openwrt/openwrt.git] / package / network / utils / iperf3 / Makefile
index 030c5f62b89193644208e7676fd1316bb0bb2d30..55be8169e3d8a54374828548ee14f45c82db8861 100644 (file)
@@ -8,31 +8,53 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=iperf
-PKG_VERSION:=3.0.11
+PKG_VERSION:=3.6
 PKG_RELEASE:=1
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://downloads.es.net/pub/iperf
-PKG_MD5SUM:=a3b2bed7961ba184566df3c3d47f96a6
+PKG_SOURCE_URL:=https://downloads.es.net/pub/iperf
+PKG_HASH:=de5d51e46dc460cc590fb4d44f95e7cad54b74fea1eba7d6ebd6f8887d75946e
 
-PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
+PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
 PKG_LICENSE:=BSD-3-Clause
 
 PKG_BUILD_PARALLEL:=1
 PKG_INSTALL:=1
 
+PKG_FIXUP:=autoreconf
+
 include $(INCLUDE_DIR)/package.mk
 
-define Package/iperf3
+DISABLE_NLS:=
+
+define Package/iperf3/default
   SECTION:=net
   CATEGORY:=Network
   TITLE:=Internet Protocol bandwidth measuring tool
-  URL:=http://sourceforge.net/projects/iperf/
+  URL:=https://github.com/esnet/iperf
+endef
+
+define Package/iperf3
+$(call Package/iperf3/default)
+  VARIANT:=nossl
+endef
+
+define Package/iperf3-ssl
+$(call Package/iperf3/default)
+  TITLE+= with iperf_auth support
+  VARIANT:=ssl
+  DEPENDS:= +libopenssl
 endef
 
+TARGET_CFLAGS += -D_GNU_SOURCE
 CONFIGURE_ARGS += --disable-shared
 
+ifeq ($(BUILD_VARIANT),ssl)
+       CONFIGURE_ARGS += --with-openssl="$(STAGING_DIR)/usr"
+else
+       CONFIGURE_ARGS += --without-openssl
+endif
+
 MAKE_FLAGS += noinst_PROGRAMS=
 
 define Package/iperf3/description
@@ -41,9 +63,21 @@ define Package/iperf3/description
  characteristics.
 endef
 
+# autoreconf fails if the README file isn't present
+define Build/Prepare
+       $(call Build/Prepare/Default)
+       touch $(PKG_BUILD_DIR)/README
+endef
+
 define Package/iperf3/install
        $(INSTALL_DIR) $(1)/usr/bin
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iperf3 $(1)/usr/bin/
 endef
 
+define Package/iperf3-ssl/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iperf3 $(1)/usr/bin/
+endef
+
 $(eval $(call BuildPackage,iperf3))
+$(eval $(call BuildPackage,iperf3-ssl))