commit:     8990401a1a125f47986d724ddd42885fe647b130
Author:     Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  4 16:28:22 2016 +0000
Commit:     Jason Donenfeld <zx2c4 <AT> gentoo <DOT> org>
CommitDate: Fri Nov  4 16:28:28 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8990401a

net-analyzer/netperf: fix build with USE=demo

Package-Manager: portage-2.3.2

 .../netperf/files/netperf-2.7.0-inline.patch       | 32 +++++++++
 net-analyzer/netperf/netperf-2.7.0-r2.ebuild       | 77 ++++++++++++++++++++++
 2 files changed, 109 insertions(+)

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 00000000..eb8c09b
--- /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 00000000..c741503
--- /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
+}

Reply via email to