From 36e2463bb988b9df930a70392622b68ad2b9f035 Mon Sep 17 00:00:00 2001 From: Zhenhua Luo Date: Fri, 9 Mar 2012 11:22:17 +0000 Subject: netperf: add version 2.4.4 Signed-off-by: Zhenhua Luo Signed-off-by: Khem Raj --- .../recipes-benchmark/netperf/files/cpu_set.patch | 24 ++++++++++ meta-oe/recipes-benchmark/netperf/files/init | 51 ++++++++++++++++++++++ .../recipes-benchmark/netperf/files/vfork.patch | 26 +++++++++++ meta-oe/recipes-benchmark/netperf/netperf_2.4.4.bb | 46 +++++++++++++++++++ 4 files changed, 147 insertions(+) create mode 100644 meta-oe/recipes-benchmark/netperf/files/cpu_set.patch create mode 100644 meta-oe/recipes-benchmark/netperf/files/init create mode 100644 meta-oe/recipes-benchmark/netperf/files/vfork.patch create mode 100644 meta-oe/recipes-benchmark/netperf/netperf_2.4.4.bb diff --git a/meta-oe/recipes-benchmark/netperf/files/cpu_set.patch b/meta-oe/recipes-benchmark/netperf/files/cpu_set.patch new file mode 100644 index 000000000..b2b95c78b --- /dev/null +++ b/meta-oe/recipes-benchmark/netperf/files/cpu_set.patch @@ -0,0 +1,24 @@ +Index: netperf-2.4.4/src/netlib.c +=================================================================== +--- netperf-2.4.4.orig/src/netlib.c 2007-10-17 23:16:02.000000000 +0200 ++++ netperf-2.4.4/src/netlib.c 2008-12-03 17:56:32.000000000 +0100 +@@ -1988,10 +1988,15 @@ + fall-back on what we had before, which is to use just the size of + an unsigned long. raj 2006-09-14 */ + +-#if defined(__CPU_SETSIZE) +-#define NETPERF_CPU_SETSIZE __CPU_SETSIZE +-#define NETPERF_CPU_SET(cpu, cpusetp) __CPU_SET(cpu, cpusetp) +-#define NETPERF_CPU_ZERO(cpusetp) __CPU_ZERO (cpusetp) ++#if defined(CPU_SETSIZE) ++#define NETPERF_CPU_SETSIZE CPU_SETSIZE ++#define NETPERF_CPU_SET(cpu, cpusetp) CPU_SET(cpu, cpusetp) ++#define NETPERF_CPU_ZERO(cpusetp) CPU_ZERO (cpusetp) ++ typedef cpu_set_t netperf_cpu_set_t; ++#elif defined(__CPU_SETSIZE) ++#define NETPERF_CPU_SETSIZE __CPU_SETSIZE ++#define NETPERF_CPU_SET(cpu, cpusetp) __CPU_SET (cpu, cpusetp) ++#define NETPERF_CPU_ZERO(cpusetp) __CPU_ZERO (cpusetp) + typedef cpu_set_t netperf_cpu_set_t; + #else + #define NETPERF_CPU_SETSIZE sizeof(unsigned long) diff --git a/meta-oe/recipes-benchmark/netperf/files/init b/meta-oe/recipes-benchmark/netperf/files/init new file mode 100644 index 000000000..7cc053ad1 --- /dev/null +++ b/meta-oe/recipes-benchmark/netperf/files/init @@ -0,0 +1,51 @@ +#!/bin/sh +# +# +# Written by Miquel van Smoorenburg . +# Modified for Debian GNU/Linux by Ian Murdock . +# Modified for Debian by Christoph Lameter +# Modified for openembedded by Bruno Randolf + +PATH=/bin:/usr/bin:/sbin:/usr/sbin +DAEMON=/usr/sbin/netserver + +test -f $DAEMON || exit 0 + +case "$1" in + start) + echo -n "Starting network benchmark server: netserver" + start-stop-daemon -S -x $DAEMON > /dev/null 2>&1 + echo "." + ;; + stop) + echo -n "Stopping network benchmark server: netserver" + start-stop-daemon -K -x $DAEMON + echo "." + ;; + #reload) + # + # If the daemon can reload its config files on the fly + # for example by sending it SIGHUP, do it here. + # + # If the daemon responds to changes in its config file + # directly anyway, make this a do-nothing entry. + # + # start-stop-daemon --stop --signal 1 --verbose --exec $DAEMON + # ;; + restart|force-reload) + # + # If the "reload" option is implemented, move the "force-reload" + # option to the "reload" entry above. If not, "force-reload" is + # just the same as "restart". + # + start-stop-daemon -K -x $DAEMON + sleep 1 + start-stop-daemon -S -x $DAEMON + ;; + *) + echo "Usage: /etc/init.d/netperf {start|stop|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 diff --git a/meta-oe/recipes-benchmark/netperf/files/vfork.patch b/meta-oe/recipes-benchmark/netperf/files/vfork.patch new file mode 100644 index 000000000..a40c96fca --- /dev/null +++ b/meta-oe/recipes-benchmark/netperf/files/vfork.patch @@ -0,0 +1,26 @@ +--- netperf-2.4.4/src/netserver.c 2007-10-17 17:09:12.000000000 -0400 ++++ netperf-2.4.4.new/src/netserver.c 2011-01-23 12:26:39.000000000 -0500 +@@ -567,7 +567,11 @@ + fflush (stdin); + fflush (stdout); + fflush (stderr); ++#if defined(HAVE_FORK) + switch (fork()) ++#else ++ switch (vfork()) ++#endif + { + case -1: + perror("netperf server error"); +@@ -712,7 +716,11 @@ + #else + signal(SIGCLD, SIG_IGN); + ++#if defined(HAVE_FORK) + switch (fork()) ++#else ++ switch (vfork()) ++#endif + { + case -1: + /* something went wrong */ diff --git a/meta-oe/recipes-benchmark/netperf/netperf_2.4.4.bb b/meta-oe/recipes-benchmark/netperf/netperf_2.4.4.bb new file mode 100644 index 000000000..6a3a81c51 --- /dev/null +++ b/meta-oe/recipes-benchmark/netperf/netperf_2.4.4.bb @@ -0,0 +1,46 @@ +DESCRIPTION="Network performance benchmark including tests for TCP, UDP, sockets, ATM and more." +SECTION = "console/network" +HOMEPAGE = "http://www.netperf.org/" +LICENSE = "GPLv2+" + +LIC_FILES_CHKSUM = "file://COPYING;md5=a0ab17253e7a3f318da85382c7d5d5d6" + +SRC_URI="ftp://ftp.netperf.org/netperf/archive/netperf-${PV}.tar.bz2 \ + file://cpu_set.patch \ + file://vfork.patch \ + file://init" + +SRC_URI[md5sum] = "0e942f22864e601406a994420231075b" +SRC_URI[sha256sum] = "28e76af491ea3696885e4558ae2f5628a4b9ebdbefc2f1d9cf1b35db2813e497" + +inherit update-rc.d autotools + +S = "${WORKDIR}/netperf-${PV}" + +# cpu_set.patch plus _GNU_SOURCE makes src/netlib.c compile with CPU_ macros +CFLAGS_append = " -DDO_UNIX -DDO_IPV6 -D_GNU_SOURCE" + +do_install() { + install -d ${D}${sbindir} ${D}${bindir} ${D}${sysconfdir}/init.d + install -m 4755 src/netperf ${D}${bindir} + install -m 4755 src/netserver ${D}${sbindir} + install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/netperf + + # man + install -d ${D}${mandir}/man1/ + install -m 0644 doc/netserver.man ${D}${mandir}/man1/netserver.1 + install -m 0644 doc/netperf.man ${D}${mandir}/man1/netperf.1 + + # move scripts to examples directory + install -d ${D}${docdir}/netperf/examples + install -m 0644 doc/examples/*_script ${D}${docdir}/netperf/examples/ + + # docs .. + install -m 0644 COPYING ${D}${docdir}/netperf + install -m 0644 Release_Notes ${D}${docdir}/netperf + install -m 0644 README ${D}${docdir}/netperf + install -m 0644 doc/netperf_old.ps ${D}${docdir}/netperf +} + +INITSCRIPT_NAME="netperf" +INITSCRIPT_PARAMS="defaults" -- cgit v1.2.3-54-g00ecf