public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/iperf/files/, net-misc/iperf/
Date: Sun,  2 Oct 2022 02:26:28 +0000 (UTC)	[thread overview]
Message-ID: <1664677573.9b4d145731f60425ae36ab82f7de237b633c9ef2.sam@gentoo> (raw)

commit:     9b4d145731f60425ae36ab82f7de237b633c9ef2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Oct  2 02:25:58 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Oct  2 02:26:13 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b4d1457

net-misc/iperf: add 3.12

Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-misc/iperf/Manifest                            |   1 +
 .../iperf/files/iperf-3.12-Unbundle-cJSON.patch    | 109 +++++++++++++++++++++
 net-misc/iperf/files/iperf-3.12-fix-bashism.patch  |  43 ++++++++
 net-misc/iperf/iperf-3.12.ebuild                   |  55 +++++++++++
 4 files changed, 208 insertions(+)

diff --git a/net-misc/iperf/Manifest b/net-misc/iperf/Manifest
index 964c281db1c0..7c2daa431c11 100644
--- a/net-misc/iperf/Manifest
+++ b/net-misc/iperf/Manifest
@@ -1,2 +1,3 @@
 DIST iperf-2.0.13.tar.gz 326148 BLAKE2B 2a40aea9e2d7fdc935b91be5e4e586bf68dd27604375d2570570145e5db1ea5837469a4989f47586986932bef33cba05ed19ed3a9ce40c0a5531581c6d3ba982 SHA512 40fcfb8f4d27887f53a743ac07396511fb2a7ac59f4b300fe36896bd0241e191945fa253705990711772ee776d5e4227ed62760fc92abebdfebcedd11c27c0ea
 DIST iperf-3.11.tar.gz 638521 BLAKE2B b2981c170aac947c407b0a5686cd9708012282044be30ec7e5f993a9d61d55c4517003024890a194f6e55d342be0e60f1bcab27460541d2b9631a3bb88e094a5 SHA512 4be3e407f77a083d826bddc5ce2939047c85f5b816a6aeb3293eacabf2ea23bf13df4226e629ade3bf390c2eb08d6a1cb96f8cdb0fefb290a0fa4c8331d11a17
+DIST iperf-3.12.tar.gz 648136 BLAKE2B 95753e4fd2b7ca640b17501f6b21b0e63ea0a3df2ba920c672ffcccd991502cacf4bf3641be1ffbbb993c86e6915ceada5745cffe1796bb86b6a6a1dff8811ae SHA512 9b0600a19750311557833b32ca5c4be809ab98643522f125645dd8f83c482017e42fbe5fc9484624731176a59b67203a468eb81eebf1a37b9c1b3eff818857ba

diff --git a/net-misc/iperf/files/iperf-3.12-Unbundle-cJSON.patch b/net-misc/iperf/files/iperf-3.12-Unbundle-cJSON.patch
new file mode 100644
index 000000000000..c5b1b49ec1a7
--- /dev/null
+++ b/net-misc/iperf/files/iperf-3.12-Unbundle-cJSON.patch
@@ -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>
+ 

diff --git a/net-misc/iperf/files/iperf-3.12-fix-bashism.patch b/net-misc/iperf/files/iperf-3.12-fix-bashism.patch
new file mode 100644
index 000000000000..1f3a321f42c9
--- /dev/null
+++ b/net-misc/iperf/files/iperf-3.12-fix-bashism.patch
@@ -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"
+ 
+

diff --git a/net-misc/iperf/iperf-3.12.ebuild b/net-misc/iperf/iperf-3.12.ebuild
new file mode 100644
index 000000000000..6ee24b228358
--- /dev/null
+++ b/net-misc/iperf/iperf-3.12.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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/_/}
+
+LICENSE="BSD"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~mips ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="sctp"
+
+DEPEND="
+	>=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 $(use_with sctp)
+}
+
+src_install() {
+	default
+
+	newconfd "${FILESDIR}"/iperf.confd iperf3
+	newinitd "${FILESDIR}"/iperf3.initd iperf3
+	systemd_dounit contrib/iperf3.service
+
+	find "${ED}" -name '*.la' -delete || die
+}


             reply	other threads:[~2022-10-02  2:26 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-02  2:26 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-01-07  1:24 [gentoo-commits] repo/gentoo:master commit in: net-misc/iperf/files/, net-misc/iperf/ Sam James
2019-04-29  9:30 Jeroen Roovers
2018-09-01 12:32 Jeroen Roovers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1664677573.9b4d145731f60425ae36ab82f7de237b633c9ef2.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox