iperf3-mt: new package
This adds a multithreaded variant of iperf3 as a package. This variant is still experimental, developed in the mt branch of the iperf repository and expected to be merged when it is considered stable. Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
This commit is contained in:
parent
a84d90ea34
commit
f369a2aaa9
1 changed files with 104 additions and 0 deletions
104
net/iperf3-mt/Makefile
Normal file
104
net/iperf3-mt/Makefile
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
#
|
||||||
|
# Copyright (C) 2023 Jonas Jelonek
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=iperf
|
||||||
|
PKG_VERSION:=3.15-mt-beta1
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
|
PKG_SOURCE_URL:=https://codeload.github.com/esnet/iperf/tar.gz/$(PKG_NAME)-$(PKG_VERSION)?
|
||||||
|
PKG_HASH:=4d5ad5bef9321adb832581a495c3cb1b5dec9d9678296f90bfc87166bbb7a43b
|
||||||
|
|
||||||
|
PKG_MAINTAINER:=Jonas Jelonek <jelonek.jonas@gmail.com>
|
||||||
|
PKG_LICENSE:=BSD-3-Clause
|
||||||
|
PKG_CPE_ID:=cpe:/a:es:iperf3
|
||||||
|
|
||||||
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
|
PKG_INSTALL:=1
|
||||||
|
|
||||||
|
PKG_FIXUP:=autoreconf
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
DISABLE_NLS:=
|
||||||
|
|
||||||
|
define Package/iperf3-mt/default
|
||||||
|
SECTION:=net
|
||||||
|
CATEGORY:=Network
|
||||||
|
TITLE:=iperf3 with multithreading
|
||||||
|
URL:=https://github.com/esnet/iperf
|
||||||
|
CONFLICTS:=iperf3 iperf3-ssl
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/iperf3-mt
|
||||||
|
$(call Package/iperf3-mt/default)
|
||||||
|
VARIANT:=nossl
|
||||||
|
DEPENDS:=+libiperf3-mt
|
||||||
|
CONFLICTS+=iperf3-mt-ssl
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/iperf3-mt-ssl
|
||||||
|
$(call Package/iperf3-mt/default)
|
||||||
|
TITLE+= and iperf_auth support
|
||||||
|
VARIANT:=ssl
|
||||||
|
DEPENDS:=+libopenssl +libatomic
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/libiperf3-mt
|
||||||
|
SECTION:=libs
|
||||||
|
CATEGORY:=Libraries
|
||||||
|
TITLE:=libiperf3 with multithreading
|
||||||
|
URL:=https://github.com/esnet/iperf
|
||||||
|
CONFLICTS:=libiperf3
|
||||||
|
DEPENDS+=+libatomic
|
||||||
|
endef
|
||||||
|
|
||||||
|
TARGET_CFLAGS += -D_GNU_SOURCE
|
||||||
|
TARGET_LDFLAGS += -latomic
|
||||||
|
|
||||||
|
ifeq ($(BUILD_VARIANT),ssl)
|
||||||
|
CONFIGURE_ARGS += --with-openssl="$(STAGING_DIR)/usr" --disable-shared
|
||||||
|
else
|
||||||
|
CONFIGURE_ARGS += --without-openssl
|
||||||
|
endif
|
||||||
|
|
||||||
|
MAKE_FLAGS += noinst_PROGRAMS=
|
||||||
|
|
||||||
|
define Package/iperf3-mt/description
|
||||||
|
iPerf3 is a modern alternative for measuring TCP and UDP bandwidth
|
||||||
|
performance, allowing the tuning of various parameters and
|
||||||
|
characteristics.
|
||||||
|
iperf3-mt has experimental multithreading support.
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/libiperf3-mt/description
|
||||||
|
Libiperf is a library providing an API for iperf3 functionality.
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Build/InstallDev
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libiperf.* $(1)/usr/lib/
|
||||||
|
$(INSTALL_DIR) $(1)/usr/include
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/iperf3-mt/install/Default
|
||||||
|
$(INSTALL_DIR) $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iperf3 $(1)/usr/bin/
|
||||||
|
endef
|
||||||
|
|
||||||
|
Package/iperf3-mt/install = $(Package/iperf3-mt/install/Default)
|
||||||
|
Package/iperf3-mt-ssl/install = $(Package/iperf3-mt/install/Default)
|
||||||
|
|
||||||
|
define Package/libiperf3-mt/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libiperf.so.* $(1)/usr/lib
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,iperf3-mt))
|
||||||
|
$(eval $(call BuildPackage,iperf3-mt-ssl))
|
||||||
|
$(eval $(call BuildPackage,libiperf3-mt))
|
Loading…
Reference in a new issue