summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason A. Donenfeld <zx2c4@gentoo.org>2016-11-04 17:28:22 +0100
committerJason A. Donenfeld <zx2c4@gentoo.org>2016-11-04 17:28:28 +0100
commit8990401a1a125f47986d724ddd42885fe647b130 (patch)
tree1c707ab1fb5abd8e05b5f414ab0cfc00c4b56df8 /net-analyzer/netperf
parentnet-analyzer/flent: bump (diff)
downloadgentoo-8990401a1a125f47986d724ddd42885fe647b130.tar.gz
gentoo-8990401a1a125f47986d724ddd42885fe647b130.tar.bz2
gentoo-8990401a1a125f47986d724ddd42885fe647b130.zip
net-analyzer/netperf: fix build with USE=demo
Package-Manager: portage-2.3.2
Diffstat (limited to 'net-analyzer/netperf')
-rw-r--r--net-analyzer/netperf/files/netperf-2.7.0-inline.patch32
-rw-r--r--net-analyzer/netperf/netperf-2.7.0-r2.ebuild77
2 files changed, 109 insertions, 0 deletions
diff --git a/net-analyzer/netperf/files/netperf-2.7.0-inline.patch b/net-analyzer/netperf/files/netperf-2.7.0-inline.patch
new file mode 100644
index 000000000000..eb8c09b84695
--- /dev/null
+++ b/net-analyzer/netperf/files/netperf-2.7.0-inline.patch
@@ -0,0 +1,32 @@
+# Copyright Seblu 2015
+--- a/src/netlib.c 2015-08-04 20:30:43.449468815 +0200
++++ b/src/netlib.c 2015-08-04 20:31:40.317792002 +0200
+@@ -3997,11 +3997,7 @@
+ }
+ }
+
+-#ifdef WIN32
+-__forceinline void demo_interval_display(double actual_interval)
+-#else
+- inline void demo_interval_display(double actual_interval)
+-#endif
++void demo_interval_display(double actual_interval)
+ {
+ static int count = 0;
+ struct timeval now;
+@@ -4060,15 +4056,7 @@
+ important compilers have supported such a construct so it should
+ not be a big deal. raj 2012-01-23 */
+
+-#ifdef WIN32
+-/* It would seem that the Microsoft compiler will not inline across
+- source files. So there is little point in having an inline
+- directive in that situation. Of course that makes me wonder if an
+- inline directive has to appear in netlib.h... */
+ void demo_interval_tick(uint32_t units)
+-#else
+- inline void demo_interval_tick(uint32_t units)
+-#endif
+ {
+ double actual_interval = 0.0;
+
diff --git a/net-analyzer/netperf/netperf-2.7.0-r2.ebuild b/net-analyzer/netperf/netperf-2.7.0-r2.ebuild
new file mode 100644
index 000000000000..c741503f0d0e
--- /dev/null
+++ b/net-analyzer/netperf/netperf-2.7.0-r2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit eutils flag-o-matic user
+
+DESCRIPTION="Network performance benchmark"
+SRC_URI="ftp://ftp.netperf.org/${PN}/${P}.tar.bz2"
+KEYWORDS="alpha amd64 ~arm64 hppa ~ia64 ~ppc ppc64 ~sparc ~x86"
+
+HOMEPAGE="http://www.netperf.org/"
+LICENSE="netperf"
+SLOT="0"
+IUSE="demo sctp"
+
+DEPEND=">=sys-apps/sed-4"
+
+pkg_setup() {
+ enewuser netperf
+ enewgroup netperf
+}
+
+src_prepare() {
+ eapply \
+ "${FILESDIR}"/${PN}-fix-scripts.patch \
+ "${FILESDIR}"/${PN}-2.6.0-log-dir.patch \
+ "${FILESDIR}"/${PN}-2.7.0-includes.patch \
+ "${FILESDIR}"/${PN}-2.7.0-space.patch \
+ "${FILESDIR}"/${PN}-2.7.0-inline.patch
+
+ # Fixing paths in scripts
+ sed -i \
+ -e 's:^\(NETHOME=\).*:\1"/usr/bin":' \
+ doc/examples/sctp_stream_script \
+ doc/examples/tcp_range_script \
+ doc/examples/tcp_rr_script \
+ doc/examples/tcp_stream_script \
+ doc/examples/udp_rr_script \
+ doc/examples/udp_stream_script \
+ || die
+
+ # netlib.c:2292:5: warning: implicit declaration of function ‘sched_setaffinity’
+ # nettest_omni.c:2943:5: warning: implicit declaration of function ‘splice’
+ append-cppflags -D_GNU_SOURCE
+
+ eapply_user
+}
+
+src_configure() {
+ econf \
+ $(use_enable demo) \
+ $(use_enable sctp)
+}
+
+src_install () {
+ default
+
+ # move netserver into sbin as we had it before 2.4 was released with its
+ # autoconf goodness
+ dodir /usr/sbin
+ mv "${D}"/usr/{bin,sbin}/netserver || die
+
+ # init.d / conf.d
+ newinitd "${FILESDIR}"/${PN}-2.7.0-init netperf
+ newconfd "${FILESDIR}"/${PN}-2.2-conf netperf
+
+ keepdir /var/log/${PN}
+ fowners netperf:netperf /var/log/${PN}
+ fperms 0755 /var/log/${PN}
+
+ # documentation and example scripts
+ dodoc AUTHORS ChangeLog NEWS README Release_Notes
+ dodir /usr/share/doc/${PF}/examples
+ #Scripts no longer get installed by einstall
+ cp doc/examples/*_script "${D}"/usr/share/doc/${PF}/examples || die
+}