From 12e3cef04f44d12a32132df448445939bd93de0a Mon Sep 17 00:00:00 2001 From: "Bruce A. Mah" Date: Tue, 21 Jan 2014 04:56:03 +0000 Subject: [PATCH] New port: benchmarks/iperf3 iperf is a tool for measuring the maximum TCP and UDP bandwidth along a path between two hosts. It allows the tuning of various parameters and UDP characteristics, and reports bandwidth, delay jitter, datagram loss. iperf was originally developed by NLANR/DAST. iperf3 is a new implementation from scratch, with the goal of a smaller, simpler code base, and a library version of the functionality that can be used in other programs. iperf3 also a number of features found in other tools such as nuttcp and netperf, but were missing from iperf 2.x. iperf3 is not backwards compatible with iperf 2.x. WWW: https://code.google.com/p/iperf/ Approved by: mat (mentor) --- benchmarks/Makefile | 1 + benchmarks/iperf3/Makefile | 44 +++++++++++++++++++++++++++++++++++++ benchmarks/iperf3/distinfo | 2 ++ benchmarks/iperf3/pkg-descr | 12 ++++++++++ 4 files changed, 59 insertions(+) create mode 100644 benchmarks/iperf3/Makefile create mode 100644 benchmarks/iperf3/distinfo create mode 100644 benchmarks/iperf3/pkg-descr diff --git a/benchmarks/Makefile b/benchmarks/Makefile index 71c8b668ad5b..0338458e645b 100644 --- a/benchmarks/Makefile +++ b/benchmarks/Makefile @@ -30,6 +30,7 @@ SUBDIR += iozone SUBDIR += iozone21 SUBDIR += iperf + SUBDIR += iperf3 SUBDIR += libmicro SUBDIR += lmbench SUBDIR += mdtest diff --git a/benchmarks/iperf3/Makefile b/benchmarks/iperf3/Makefile new file mode 100644 index 000000000000..8173475ed5a9 --- /dev/null +++ b/benchmarks/iperf3/Makefile @@ -0,0 +1,44 @@ +# Created by: Bruce A. Mah +# $FreeBSD$ + +PORTNAME= iperf +PORTVERSION= 3.0.1 +CATEGORIES= benchmarks ipv6 +MASTER_SITES= http://stats.es.net/software/ +PKGNAMESUFFIX= 3 + +MAINTAINER= bmah@FreeBSD.org +COMMENT= Improved tool to measure TCP and UDP bandwidth + +LICENSE= BSD3CLAUSE + +GNU_CONFIGURE= yes + +# Set ${DOCSDIR} to avoid conflict with benchmarks/iperf ${DOCSDIR} +DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX} + +PLIST_FILES= bin/iperf3 \ + include/iperf_api.h \ + lib/libiperf.a \ + man/man1/iperf3.1.gz \ + man/man3/libiperf.3.gz +PORTDOCS= * + +post-patch: +# automake generates a buggy Makefile.in that tries to do ${RANLIB} on +# libiperf3.a after installing with mode 444; this breaks staging. +# Since ${RANLIB} was already run on the library, this broken +# invocation was redundant, and can be eliminated. The fix below is +# based on the solution for a similar situation for an unrelated port +# in r339298. + @${REINPLACE_CMD} -e '/echo.*RANLIB/,+1d' ${WRKSRC}/src/Makefile.in +# Don't build stuff that we're not going to install. Among other +# things this means we're not going to try to build profiled objects +# and/or executables. + @${REINPLACE_CMD} -e '/^PROGRAMS /s/\$$(noinst_PROGRAMS)//' ${WRKSRC}/src/Makefile.in + +post-install: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + (cd ${WRKSRC} && ${INSTALL_DATA} AUTHORS README RELEASE_NOTES TODO ${STAGEDIR}${DOCSDIR}) + +.include diff --git a/benchmarks/iperf3/distinfo b/benchmarks/iperf3/distinfo new file mode 100644 index 000000000000..e492202e7b99 --- /dev/null +++ b/benchmarks/iperf3/distinfo @@ -0,0 +1,2 @@ +SHA256 (iperf-3.0.1.tar.gz) = 32b419ef634dd7670328c3cecc158babf7d706bd4b3d248cf95965528a20e614 +SIZE (iperf-3.0.1.tar.gz) = 338151 diff --git a/benchmarks/iperf3/pkg-descr b/benchmarks/iperf3/pkg-descr new file mode 100644 index 000000000000..86153702829f --- /dev/null +++ b/benchmarks/iperf3/pkg-descr @@ -0,0 +1,12 @@ +iperf is a tool for measuring the maximum TCP and UDP bandwidth along +a path between two hosts. It allows the tuning of various +parameters and UDP characteristics, and reports bandwidth, delay +jitter, datagram loss. iperf was originally developed by NLANR/DAST. + +iperf3 is a new implementation from scratch, with the goal of a +smaller, simpler code base, and a library version of the functionality +that can be used in other programs. iperf3 also a number of features +found in other tools such as nuttcp and netperf, but were missing from +iperf 2.x. iperf3 is not backwards compatible with iperf 2.x. + +WWW: https://code.google.com/p/iperf/