Patchwork [meta-oe,v3] lmbench: Add version 3.0-a9 (initial recipe)

login
register
mail settings
Submitter Noor Ahsan
Date Aug. 24, 2011, 8:03 a.m.
Message ID <1314173035-11491-1-git-send-email-noor_ahsan@mentor.com>
Download mbox | patch
Permalink /patch/10471/
State Superseded
Headers show

Comments

Noor Ahsan - Aug. 24, 2011, 8:03 a.m.
From: Noor Ahsan <noor_ahsan@mentor.com>

* Imported from OE commit id bac6441118e0b78d55c98afdc108f03b6c655909

Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
---
 .../lmbench/lmbench-3.0-a9/obey-ranlib.patch       |   25 +++
 .../lmbench-3.0-a9/update-results-script.patch     |  155 ++++++++++++++++++++
 .../recipes-benchmark/lmbench/lmbench/lmbench-run  |   23 +++
 .../lmbench/lmbench/rename-line-binary.patch       |   11 ++
 .../recipes-benchmark/lmbench/lmbench_3.0-a9.bb    |   56 +++++++
 5 files changed, 270 insertions(+), 0 deletions(-)
Tom Rini - Aug. 24, 2011, 5:35 p.m.
On Wed, Aug 24, 2011 at 1:03 AM, Noor, Ahsan <noor_ahsan@mentor.com> wrote:
> From: Noor Ahsan <noor_ahsan@mentor.com>
>
> * Imported from OE commit id bac6441118e0b78d55c98afdc108f03b6c655909
>
> Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>

NAK, All of the patches are missing the patch header described in
http://wiki.openembedded.org/index.php/Commit_Patch_Message_Guidelines
and I gave you some of the infos you need for the patches before :)
Koen Kooi - Aug. 24, 2011, 6:25 p.m.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Op 24-08-11 19:35, Tom Rini schreef:
> On Wed, Aug 24, 2011 at 1:03 AM, Noor, Ahsan <noor_ahsan@mentor.com> wrote:
>> From: Noor Ahsan <noor_ahsan@mentor.com>
>> 
>> * Imported from OE commit id bac6441118e0b78d55c98afdc108f03b6c655909
>> 
>> Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
> 
> NAK, All of the patches are missing the patch header described in http://wiki.openembedded.org/index.php/Commit_Patch_Message_Guidelines and I gave you some of the infos you need for the patches before :)

And after fixing the patch headers, could you please combine the patches into a single pull request?

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFOVUH9MkyGM64RGpERApupAKCcLKGGZ1EN36urxIbWfCRqnYSCRACfUFSq
Zegxb6tc43YDJ5M8kP3rpQ8=
=nbYz
-----END PGP SIGNATURE-----
Noor Ahsan - Aug. 25, 2011, 7:40 a.m.
> -----Original Message-----
> From: openembedded-devel-bounces@lists.openembedded.org
> [mailto:openembedded-devel-bounces@lists.openembedded.org] On Behalf
Of
> Koen Kooi
> Sent: Wednesday, August 24, 2011 11:25 PM
> To: openembedded-devel@lists.openembedded.org
> Subject: Re: [oe] [meta-oe][PATCH v3] lmbench: Add version 3.0-a9
> (initial recipe)
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Op 24-08-11 19:35, Tom Rini schreef:
> > On Wed, Aug 24, 2011 at 1:03 AM, Noor, Ahsan <noor_ahsan@mentor.com>
> wrote:
> >> From: Noor Ahsan <noor_ahsan@mentor.com>
> >>
> >> * Imported from OE commit id
> bac6441118e0b78d55c98afdc108f03b6c655909
> >>
> >> Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
> >
> > NAK, All of the patches are missing the patch header described in
> http://wiki.openembedded.org/index.php/Commit_Patch_Message_Guidelines
> and I gave you some of the infos you need for the patches before :)
> 
> And after fixing the patch headers, could you please combine the
> patches into a single pull request?

You mean to say I should send lmbench, iperf and dbench patch in single
patch?
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.5 (Darwin)
> 
> iD8DBQFOVUH9MkyGM64RGpERApupAKCcLKGGZ1EN36urxIbWfCRqnYSCRACfUFSq
> Zegxb6tc43YDJ5M8kP3rpQ8=
> =nbYz
> -----END PGP SIGNATURE-----
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
Martin Jansa - Aug. 25, 2011, 7:46 a.m.
On Thu, Aug 25, 2011 at 09:40:22AM +0200, Ahsan, Noor wrote:
> > -----Original Message-----
> > From: openembedded-devel-bounces@lists.openembedded.org
> > [mailto:openembedded-devel-bounces@lists.openembedded.org] On Behalf
> Of
> > Koen Kooi
> > Sent: Wednesday, August 24, 2011 11:25 PM
> > To: openembedded-devel@lists.openembedded.org
> > Subject: Re: [oe] [meta-oe][PATCH v3] lmbench: Add version 3.0-a9
> > (initial recipe)
> > 
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> > 
> > Op 24-08-11 19:35, Tom Rini schreef:
> > > On Wed, Aug 24, 2011 at 1:03 AM, Noor, Ahsan <noor_ahsan@mentor.com>
> > wrote:
> > >> From: Noor Ahsan <noor_ahsan@mentor.com>
> > >>
> > >> * Imported from OE commit id
> > bac6441118e0b78d55c98afdc108f03b6c655909
> > >>
> > >> Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
> > >
> > > NAK, All of the patches are missing the patch header described in
> > http://wiki.openembedded.org/index.php/Commit_Patch_Message_Guidelines
> > and I gave you some of the infos you need for the patches before :)
> > 
> > And after fixing the patch headers, could you please combine the
> > patches into a single pull request?
> 
> You mean to say I should send lmbench, iperf and dbench patch in single
> patch?

pull request != patch

You just push all needed patches to some repository ie
meta-openembedded-contrib branch noor-benchmarks and generate pull
request with openembedded-core/scripts/create-pull-request

Regards,

Patch

diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/obey-ranlib.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/obey-ranlib.patch
new file mode 100644
index 0000000..5ce6e15
--- /dev/null
+++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/obey-ranlib.patch
@@ -0,0 +1,25 @@ 
+---
+ src/Makefile |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: lmbench-3.0-a9/src/Makefile
+===================================================================
+--- lmbench-3.0-a9.orig/src/Makefile
++++ lmbench-3.0-a9/src/Makefile
+@@ -38,6 +38,7 @@ CC=`../scripts/compiler`
+ MAKE=`../scripts/make`
+ AR=ar
+ ARCREATE=cr
++RANLIB=ranlib
+ 
+ # base of installation location
+ BASE=/usr/local
+@@ -217,7 +218,7 @@ $O/lmbench : ../scripts/lmbench version.
+ $O/lmbench.a: $(LIBOBJS)
+ 	/bin/rm -f $O/lmbench.a
+ 	$(AR) $(ARCREATE) $O/lmbench.a $(LIBOBJS)
+-	-ranlib $O/lmbench.a
++	-$(RANLIB) $O/lmbench.a
+ 
+ $O/lib_timing.o : lib_timing.c $(INCS)
+ 	$(COMPILE) -c lib_timing.c -o $O/lib_timing.o
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-results-script.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-results-script.patch
new file mode 100644
index 0000000..9b3edf9
--- /dev/null
+++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-results-script.patch
@@ -0,0 +1,155 @@ 
+Now that we have our binaries in /usr/bin rather than the normal
+lmbench hierarchy we need to update the scripts as well to behave well here.
+Index: lmbench-3.0-a9/scripts/results
+===================================================================
+--- lmbench-3.0-a9.orig/scripts/results
++++ lmbench-3.0-a9/scripts/results
+@@ -8,11 +8,11 @@ RESULTS=results/$OS
+ BASE=../$RESULTS/`uname -n`
+ EXT=0
+ 
+-if [ ! -f "../bin/$OS/$CONFIG" ]
++if [ ! -f "$CONFIG" ]
+ then	echo "No config file?"
+ 	exit 1
+ fi
+-. ../bin/$OS/$CONFIG
++. $CONFIG
+ 
+ if [ ! -d ../$RESULTS ]
+ then	mkdir -p ../$RESULTS
+@@ -23,11 +23,9 @@ do      EXT=`expr $EXT + 1`
+ 	RESULTS=$BASE.$EXT
+ done
+ 
+-cd ../bin/$OS 
+-PATH=.:${PATH}; export PATH
+ export SYNC_MAX
+ export OUTPUT
+-lmbench $CONFIG 2>../${RESULTS}
++lmbench $CONFIG 2>${RESULTS}
+ 
+ if [ X$MAIL = Xyes ]
+ then	echo Mailing results
+Index: lmbench-3.0-a9/scripts/config-run
+===================================================================
+--- lmbench-3.0-a9.orig/scripts/config-run
++++ lmbench-3.0-a9/scripts/config-run
+@@ -132,20 +132,20 @@ export LMBENCH_SCHED
+ ############################################################################
+ echo $L; echo "";
+ echo "Hang on, we are calculating your timing granularity."
+-../bin/$OS/msleep 250
+-ENOUGH=`../bin/$OS/enough`
++msleep 250
++ENOUGH=`enough`
+ export ENOUGH 
+ echo "OK, it looks like you can time stuff down to $ENOUGH usec resolution."
+ echo ""
+ echo "Hang on, we are calculating your timing overhead."
+-../bin/$OS/msleep 250
+-TIMING_O=`../bin/$OS/timing_o`
++msleep 250
++TIMING_O=`timing_o`
+ export TIMING_O
+ echo "OK, it looks like your gettimeofday() costs $TIMING_O usecs."
+ echo ""
+ echo "Hang on, we are calculating your loop overhead."
+-../bin/$OS/msleep 250
+-LOOP_O=`../bin/$OS/loop_o`
++msleep 250
++LOOP_O=`loop_o`
+ export LOOP_O
+ echo "OK, it looks like your benchmark loop costs $LOOP_O usecs."
+ echo ""
+@@ -177,7 +177,7 @@ then
+ fi
+ if [ X$MB = X ]
+ then	$ECHON "Probing system for available memory: $ECHOC"
+-	MB=`../bin/$OS/memsize 4096`
++	MB=`memsize 4096`
+ fi
+ TOTAL_MEM=$MB
+ MB=`echo \( $MB \* 7 \) / 10 | bc 2>/dev/null`
+@@ -205,9 +205,9 @@ fi
+ # Certain machines tend to barf when you try and bcopy 8MB.
+ # Figure out how much we can use.
+ echo "Checking to see if you have $MB MB; please wait for a moment..."
+-MB=`../bin/$OS/memsize $MB`
+-MB=`../bin/$OS/memsize $MB`
+-MB=`../bin/$OS/memsize $MB`
++MB=`memsize $MB`
++MB=`memsize $MB`
++MB=`memsize $MB`
+ if [ `expr $SYNC_MAX \* $MB` -gt `expr $TOTAL_MEM` ]
+ then
+ 	MB=`expr $TOTAL_MEM / $SYNC_MAX`
+@@ -223,8 +223,8 @@ then	echo Warning: you have only ${MB}MB
+ fi
+ 
+ echo "Hang on, we are calculating your cache line size."
+-../bin/$OS/msleep 250
+-LINE_SIZE=`../bin/$OS/lm_line -M ${MB}M`
++msleep 250
++LINE_SIZE=`lm_line -M ${MB}M`
+ export LINE_SIZE
+ echo "OK, it looks like your cache line is $LINE_SIZE bytes."
+ echo ""
+@@ -479,7 +479,7 @@ EOF
+ 	then	
+ 		for i in $disks
+ 		do	if [ -r $i ]
+-			then	../bin/$OS/flushdisk $i
++			then	flushdisk $i
+ 				if [ $? -eq 1 ]
+ 				then	echo "Must be root to run disk benchmarks."
+ 					echo "Root is needed to flush the buffer cache"
+@@ -584,7 +584,7 @@ fi
+ echo $L
+ echo ""
+ echo "Calculating mhz, please wait for a moment..."
+-MHZ=`../bin/$OS/mhz`
++MHZ=`mhz`
+ cat<<EOF
+ I think your CPU mhz is 
+ 
+@@ -689,9 +689,9 @@ esac
+ 
+ INFO=`../scripts/info`
+ if [ $MAIL = yes ]
+-then	if [ ! -f ../bin/$OS/$INFO ]
+-	then	cp ../scripts/info-template ../bin/$OS/$INFO
+-		chmod +w ../bin/$OS/$INFO
++then	if [ ! -f $INFO ]
++	then	cp ../scripts/info-template $INFO
++		chmod +w $INFO
+ 		REUSE=no
+ 	else	
+ 		REUSE=view
+@@ -705,7 +705,7 @@ then	if [ ! -f ../bin/$OS/$INFO ]
+ 				;;
+ 			[Vv]*)	REUSE=view
+ 				echo $L
+-				more ../bin/$OS/$INFO
++				more $INFO
+ 				echo $L
+ 				;;
+ 	    		*)	REUSE=yes
+@@ -733,7 +733,7 @@ EOF
+ 		then	EDITOR=$TMP
+ 		fi
+ 		if [ X$EDITOR != "none" ]
+-		then	$EDITOR ../bin/$OS/`../scripts/info`
++		then	$EDITOR `../scripts/info`
+ 		fi
+ 	fi
+ fi
+@@ -750,7 +750,7 @@ EOF
+ 
+ VERSION=`../scripts/version`
+ 
+-C=../bin/$OS/`../scripts/config`
++C=`../scripts/config`
+ echo DISKS=\"$DISKS\" > $C
+ echo DISK_DESC=\"$DISK_DESC\" >> $C
+ echo OUTPUT=$OUTPUT >> $C
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/lmbench-run b/meta-oe/recipes-benchmark/lmbench/lmbench/lmbench-run
new file mode 100644
index 0000000..e904c75
--- /dev/null
+++ b/meta-oe/recipes-benchmark/lmbench/lmbench/lmbench-run
@@ -0,0 +1,23 @@ 
+#!/bin/sh
+# Wrapper script for lmbench written for the 
+# Debian GNU/Linux distribution by 
+# Javier Fernandez-Sanguino.
+# Distributed under the GPL
+SHAREDIR=/usr/share/lmbench/
+BINDIR=/usr/lib/lmbench/
+SCRIPTSDIR=$SHAREDIR/scripts
+RESULTSDIR=$SHAREDIR/results
+CONFIG=/var/lib/lmbench/config/`$SCRIPTSDIR/config`
+runuid=`id -u`
+
+[ $runuid -gt 0 ] && {
+	echo "You must run this as the root user"
+	exit 0
+}
+cd $SCRIPTSDIR 
+[ ! -f $CONFIG ] && ./config-run
+./results
+
+echo "Benchmark run finished...."
+echo "Remember you can find the results of the benchmark "
+echo "under $RESULTSDIR"
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench/rename-line-binary.patch b/meta-oe/recipes-benchmark/lmbench/lmbench/rename-line-binary.patch
new file mode 100644
index 0000000..997143b
--- /dev/null
+++ b/meta-oe/recipes-benchmark/lmbench/lmbench/rename-line-binary.patch
@@ -0,0 +1,11 @@ 
+--- patches/scripts/config-run	2006-11-26 15:11:04.000000000 -0500
++++ patches/scripts/config-run	2011-04-01 09:35:50.000000000 -0400
+@@ -224,7 +224,7 @@ fi
+ 
+ echo "Hang on, we are calculating your cache line size."
+ ../bin/$OS/msleep 250
+-LINE_SIZE=`../bin/$OS/line -M ${MB}M`
++LINE_SIZE=`../bin/$OS/lm_line -M ${MB}M`
+ export LINE_SIZE
+ echo "OK, it looks like your cache line is $LINE_SIZE bytes."
+ echo ""
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
new file mode 100644
index 0000000..cc04792
--- /dev/null
+++ b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
@@ -0,0 +1,56 @@ 
+DESCRIPTION = "Tools for performance analysis."
+HOMEPAGE = "http://lmbench.sourceforge.net/"
+SECTION = "console/utils"
+LICENSE = "GPL"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \
+                    file://COPYING-2;md5=8e9aee2ccc75d61d107e43794a25cdf9"
+RDEPENDS_${PN} = "debianutils"
+
+PR = "r0"
+
+inherit autotools
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/lmbench/lmbench-${PV}.tgz \
+	   file://lmbench-run \
+	   file://rename-line-binary.patch \
+	   file://update-results-script.patch \
+	   file://obey-ranlib.patch \
+	   "
+SRC_URI[md5sum] = "b3351a3294db66a72e2864a199d37cbf"
+SRC_URI[sha256sum] = "cbd5777d15f44eab7666dcac418054c3c09df99826961a397d9acf43d8a2a551"
+
+EXTRA_OEMAKE = 'CC="${CC}" AR="${AR}" RANLIB="${RANLIB}" CFLAGS="${CFLAGS}" \
+		LDFLAGS="${LDFLAGS}" LD="${LD}" OS="${TARGET_SYS}" \
+		TARGET="${TARGET_OS}" BASE="${prefix}"'
+
+do_configure() {
+	:
+}
+
+do_compile () {
+	. ${CONFIG_SITE}
+	if [ X"$ac_cv_uint" = X"yes" ]; then
+		CFLAGS="${CFLAGS} -DHAVE_uint"
+	fi
+	install -d ${S}/bin/${TARGET_SYS}
+	oe_runmake -C src
+}
+
+do_install () {
+	install -d ${D}${localstatedir}/run/lmbench \
+		   ${D}${bindir} ${D}${mandir} ${D}${libdir}/lmbench \
+		   ${D}${datadir}/lmbench/scripts
+	oe_runmake 'BASE=${D}${prefix}' \
+		    -C src install
+	mv ${D}${bindir}/line ${D}${bindir}/lm_line
+	mv ${D}${prefix}/man/* ${D}${mandir}/
+	install -m 0755 ${WORKDIR}/lmbench-run ${D}${bindir}/
+	sed -i -e 's,^SHAREDIR=.*$,SHAREDIR=${datadir}/${PN},;' \
+	       -e 's,^BINDIR=.*$,BINDIR=${libdir}/${PN},;' \
+	       -e 's,^CONFIG=.*$,CONFIG=$SHAREDIR/`$SCRIPTSDIR/config`,;' \
+	       ${D}${bindir}/lmbench-run
+	install -m 0755 ${S}/scripts/lmbench ${D}${bindir}
+	install -m 0755 ${S}/scripts/* ${D}${datadir}/lmbench/scripts
+}
+
+FILES_${PN} += "${datadir}/lmbench"