net-misc/iperf: Sync with Gentoo

It's from Gentoo commit 438ea9dc75590e4bc0bfc602a9bb7f84fd0dbc53.
This commit is contained in:
Krzesimir Nowak 2022-10-19 10:21:30 +02:00
parent 42c42b5699
commit 08ece529ce
8 changed files with 177 additions and 52 deletions

View File

@ -1,3 +1,3 @@
DIST iperf-2.0.13.tar.gz 326148 BLAKE2B 2a40aea9e2d7fdc935b91be5e4e586bf68dd27604375d2570570145e5db1ea5837469a4989f47586986932bef33cba05ed19ed3a9ce40c0a5531581c6d3ba982 SHA512 40fcfb8f4d27887f53a743ac07396511fb2a7ac59f4b300fe36896bd0241e191945fa253705990711772ee776d5e4227ed62760fc92abebdfebcedd11c27c0ea
DIST iperf-3.10.1.tar.gz 636957 BLAKE2B 8390b4fb0d4c6590bf73e46d55fbe100f1c9832b4e7baba23b4bec2808b42582bf76cc4250c529a1eb4a58c7214120f0e3a393a7c2602b838b22d97eb53842b3 SHA512 d1139aed0c7a99e8cfc23c41d606854d48a57db24d45ea31412d81222b09faeee6edccdf4030a00eeb6acbfd540d4b985b4a89f81a4d5b84592339ad5e2e9e41
DIST iperf-3.11.tar.gz 638521 BLAKE2B b2981c170aac947c407b0a5686cd9708012282044be30ec7e5f993a9d61d55c4517003024890a194f6e55d342be0e60f1bcab27460541d2b9631a3bb88e094a5 SHA512 4be3e407f77a083d826bddc5ce2939047c85f5b816a6aeb3293eacabf2ea23bf13df4226e629ade3bf390c2eb08d6a1cb96f8cdb0fefb290a0fa4c8331d11a17
DIST iperf-3.12.tar.gz 648136 BLAKE2B 95753e4fd2b7ca640b17501f6b21b0e63ea0a3df2ba920c672ffcccd991502cacf4bf3641be1ffbbb993c86e6915ceada5745cffe1796bb86b6a6a1dff8811ae SHA512 9b0600a19750311557833b32ca5c4be809ab98643522f125645dd8f83c482017e42fbe5fc9484624731176a59b67203a468eb81eebf1a37b9c1b3eff818857ba

View File

@ -0,0 +1,109 @@
From 85b225cdd00b9a483a603b8b124a829ffbf92b88 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sun, 2 Oct 2022 03:07:40 +0100
Subject: [PATCH] Unbundle cJSON
Signed-off-by: Sam James <sam@gentoo.org>
--- a/configure.ac
+++ b/configure.ac
@@ -62,6 +62,8 @@ AC_ARG_ENABLE([profiling],
AS_HELP_STRING([--enable-profiling], [Enable iperf3 profiling binary]))
AM_CONDITIONAL([ENABLE_PROFILING], [test x$enable_profiling = xyes])
+PKG_CHECK_MODULES([libcjson], [libcjson >= 1.7.15])
+
# Check for the math library (needed by cjson on some platforms)
AC_SEARCH_LIBS(floor, [m], [], [
echo "floor()"
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -10,8 +10,6 @@ include_HEADERS = iperf_api.h # Define
# Specify the source files and flags for the iperf library
libiperf_la_SOURCES = \
- cjson.c \
- cjson.h \
flowlabel.h \
iperf.h \
iperf_api.c \
@@ -44,10 +42,13 @@ libiperf_la_SOURCES = \
units.c \
units.h \
version.h
+libiperf_la_CPPFLAGS = $(CPPFLAGS) @libcjson_CFLAGS@
+libiperf_la_LIBADD = @libcjson_LIBS@
# Specify the sources and various flags for the iperf binary
iperf3_SOURCES = main.c
-iperf3_LDADD = libiperf.la
+iperf3_CPPFLAGS = $(CPPFLAGS) @libcjson_CFLAGS@
+iperf3_LDADD = libiperf.la @libcjson_LIBS@
if ENABLE_PROFILING
# If the iperf-profiled-binary is enabled
--- a/src/iperf.h
+++ b/src/iperf.h
@@ -65,7 +65,7 @@
#include "timer.h"
#include "queue.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "iperf_time.h"
#if defined(HAVE_SSL)
--- a/src/iperf_api.c
+++ b/src/iperf_api.c
@@ -81,7 +81,7 @@
#endif /* HAVE_SCTP_H */
#include "timer.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "units.h"
#include "iperf_util.h"
#include "iperf_locale.h"
--- a/src/iperf_tcp.c
+++ b/src/iperf_tcp.c
@@ -42,7 +42,7 @@
#include "iperf_api.h"
#include "iperf_tcp.h"
#include "net.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#if defined(HAVE_FLOWLABEL)
#include "flowlabel.h"
--- a/src/iperf_udp.c
+++ b/src/iperf_udp.c
@@ -46,7 +46,7 @@
#include "iperf_udp.h"
#include "timer.h"
#include "net.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "portable_endian.h"
#if defined(HAVE_INTTYPES_H)
--- a/src/iperf_util.c
+++ b/src/iperf_util.c
@@ -46,7 +46,7 @@
#include <errno.h>
#include <fcntl.h>
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include "iperf.h"
#include "iperf_api.h"
--- a/src/iperf_util.h
+++ b/src/iperf_util.h
@@ -28,7 +28,7 @@
#define __IPERF_UTIL_H
#include "iperf_config.h"
-#include "cjson.h"
+#include <cjson/cJSON.h>
#include <sys/select.h>
#include <stddef.h>

View File

@ -0,0 +1,43 @@
https://github.com/esnet/iperf/pull/1398
From 3a03f775ca103f2e824abef903130280c57ca8ac Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sun, 2 Oct 2022 02:58:59 +0100
Subject: [PATCH] config/iperf_config_static_bin.m4: fix bashism
configure scripts need to be runnable with a POSIX-compliant /bin/sh.
On many (but not all!) systems, /bin/sh is provided by Bash, so errors
like this aren't spotted. Notably Debian defaults to /bin/sh provided
by dash which doesn't tolerate such bashisms as '=='.
This retains compatibility with bash.
Fixes configure warnings/errors like:
```
./configure: 2670: test: x: unexpected operator
```
Signed-off-by: Sam James <sam@gentoo.org>
--- a/config/iperf_config_static_bin.m4
+++ b/config/iperf_config_static_bin.m4
@@ -7,6 +7,6 @@ AC_ARG_ENABLE([static-bin],
[:])
AM_CONDITIONAL([ENABLE_STATIC_BIN], [test x$enable_static_bin = xno])
-AS_IF([test "x$enable_static_bin" == xyes],
+AS_IF([test "x$enable_static_bin" = xyes],
[LDFLAGS="$LDFLAGS --static"]
[])
--- a/configure
+++ b/configure
@@ -2667,7 +2667,7 @@ else
fi
-if test "x$enable_static_bin" == xyes
+if test "x$enable_static_bin" = xyes
then :
LDFLAGS="$LDFLAGS --static"

View File

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -12,7 +12,7 @@ S="${WORKDIR}/${PN}-2.0.13"
LICENSE="HPND"
SLOT="2"
KEYWORDS="amd64 ~arm ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="amd64 ~arm ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="ipv6 threads debug"
DOCS=( INSTALL README )

View File

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7

View File

@ -12,7 +12,7 @@ S="${WORKDIR}"/${P/_/}
LICENSE="BSD"
SLOT="3"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="dev-libs/openssl:=

View File

@ -1,36 +1,47 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit systemd
inherit autotools systemd
DESCRIPTION="A TCP, UDP, and SCTP network bandwidth measurement tool"
HOMEPAGE="https://github.com/esnet/iperf"
SRC_URI="https://github.com/esnet/iperf/archive/${PV/_/}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P/_/}"
S="${WORKDIR}"/${P/_/}
LICENSE="BSD"
SLOT="3"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="sctp"
DEPEND="
dev-libs/openssl:0=
>=dev-libs/cJSON-1.7.15
dev-libs/openssl:=
sctp? ( net-misc/lksctp-tools )
"
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"
DOCS=( README.md RELNOTES.md )
PATCHES=(
"${FILESDIR}"/${PN}-3.10.1-drop-forced-debugging-symbols.patch
"${FILESDIR}"/${PN}-3.12-fix-bashism.patch
"${FILESDIR}"/${PN}-3.12-Unbundle-cJSON.patch
)
src_prepare() {
default
# Drop bundled cjson
rm src/cjson.{c,h} || die
eautoreconf
}
src_configure() {
econf \
--disable-static \
$(use_with sctp)
econf $(use_with sctp)
}
src_install() {

View File

@ -1,38 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit git-r3
DESCRIPTION="A TCP, UDP, and SCTP network bandwidth measurement tool"
HOMEPAGE="https://github.com/esnet/iperf"
EGIT_REPO_URI="https://github.com/esnet/iperf"
S="${WORKDIR}/${P/_/}"
LICENSE="BSD"
SLOT="3"
IUSE="sctp static-libs"
DEPEND="
dev-libs/openssl:0=
sctp? ( net-misc/lksctp-tools )
"
RDEPEND="${DEPEND}"
DOCS=( README.md RELNOTES.md )
src_configure() {
econf \
$(use_enable static-libs static) \
$(use_with sctp)
}
src_install() {
default
newconfd "${FILESDIR}"/iperf.confd iperf3
newinitd "${FILESDIR}"/iperf3.initd iperf3
find "${ED}" -name '*.la' -delete || die
}