diff options
author | Tudor Florea <tudor.florea@enea.com> | 2015-10-08 22:51:41 +0200 |
---|---|---|
committer | Tudor Florea <tudor.florea@enea.com> | 2015-10-08 22:51:41 +0200 |
commit | 1219bf8a90a7bf8cd3a5363551ef635d51e8fc8e (patch) | |
tree | a21a5fc103bb3bd65ecd85ed22be5228fc54e447 /meta-oe/recipes-benchmark | |
download | meta-openembedded-1219bf8a90a7bf8cd3a5363551ef635d51e8fc8e.tar.gz |
initial commit for Enea Linux 5.0 arm
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta-oe/recipes-benchmark')
44 files changed, 1981 insertions, 0 deletions
diff --git a/meta-oe/recipes-benchmark/bonnie/bonnie++_1.03e.bb b/meta-oe/recipes-benchmark/bonnie/bonnie++_1.03e.bb new file mode 100644 index 000000000..2c1217e34 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++_1.03e.bb | |||
@@ -0,0 +1,32 @@ | |||
1 | SUMMARY = "Tests large file IO and creation/deletion of small files" | ||
2 | HOMEPAGE = "http://www.coker.com.au/bonnie++/" | ||
3 | SECTION = "benchmark/tests" | ||
4 | LICENSE = "GPLv2" | ||
5 | LIC_FILES_CHKSUM = "file://copyright.txt;md5=cd4dde95a6b9d122f0a9150ae9cc3ee0" | ||
6 | |||
7 | SRC_URI = "http://www.coker.com.au/bonnie++/${BPN}-${PV}.tgz \ | ||
8 | file://gcc-4.3-fixes.patch \ | ||
9 | " | ||
10 | SRC_URI[md5sum] = "750aa5b5051263a99c6c195888c74968" | ||
11 | SRC_URI[sha256sum] = "cb3866116634bf65760b6806be4afa7e24a1cad6f145c876df8721f01ba2e2cb" | ||
12 | |||
13 | inherit autotools-brokensep | ||
14 | |||
15 | SCRIPTS = "bon_csv2html bon_csv2txt" | ||
16 | EXES = "bonnie++ zcav" | ||
17 | |||
18 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
19 | |||
20 | do_install () { | ||
21 | install -d ${D}/${bindir} | ||
22 | install -d ${D}/${sbindir} | ||
23 | install -m 0755 ${EXES} ${D}/${sbindir} | ||
24 | install -m 0755 ${SCRIPTS} ${D}/${bindir} | ||
25 | } | ||
26 | |||
27 | PACKAGES =+ "bonnie-scripts" | ||
28 | |||
29 | FILES_${PN} = "${sbindir}" | ||
30 | FILES_bonnie-scripts = "${bindir}" | ||
31 | |||
32 | RDEPENDS_bonnie-scripts += "perl" | ||
diff --git a/meta-oe/recipes-benchmark/bonnie/files/gcc-4.3-fixes.patch b/meta-oe/recipes-benchmark/bonnie/files/gcc-4.3-fixes.patch new file mode 100644 index 000000000..67f1b7494 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/files/gcc-4.3-fixes.patch | |||
@@ -0,0 +1,19 @@ | |||
1 | Includes string.h to one of the source file. | ||
2 | |||
3 | Upstream-Status: Inappropriate [not author.] | ||
4 | --- | ||
5 | zcav.cpp | 1 + | ||
6 | 1 file changed, 1 insertion(+) | ||
7 | |||
8 | Index: bonnie++-1.03a/zcav.cpp | ||
9 | =================================================================== | ||
10 | --- bonnie++-1.03a.orig/zcav.cpp | ||
11 | +++ bonnie++-1.03a/zcav.cpp | ||
12 | @@ -15,6 +15,7 @@ using namespace std; | ||
13 | #else | ||
14 | #include <vector.h> | ||
15 | #endif | ||
16 | +#include <string.h> | ||
17 | |||
18 | // Read the specified number of megabytes of data from the fd and return the | ||
19 | // amount of time elapsed in seconds. | ||
diff --git a/meta-oe/recipes-benchmark/cpuburn/cpuburn-neon_20140626.bb b/meta-oe/recipes-benchmark/cpuburn/cpuburn-neon_20140626.bb new file mode 100644 index 000000000..14e3fc4f3 --- /dev/null +++ b/meta-oe/recipes-benchmark/cpuburn/cpuburn-neon_20140626.bb | |||
@@ -0,0 +1,30 @@ | |||
1 | SUMMARY = "CPU burn app that loads the NEON coprocessor fully" | ||
2 | LICENSE = "MIT" | ||
3 | LIC_FILES_CHKSUM = "file://burn.S;md5=823abc72c2cd448e87df9bc5355a4456" | ||
4 | |||
5 | DL_DIR_append = "/${PN}-${PV}" | ||
6 | |||
7 | # Ensure to make this available for machine which has neon | ||
8 | COMPATIBLE_MACHINE = "(${@bb.utils.contains("TUNE_FEATURES", "neon", "${MACHINE}", "Invalid!", d)})" | ||
9 | |||
10 | SRC_URI = "http://hardwarebug.org/files/burn.S;name=mru \ | ||
11 | https://raw.githubusercontent.com/ssvb/cpuburn-arm/dd5c5ba58d2b0b23cfab4a286f9d3f5510000f20/cpuburn-a8.S;name=ssvb" | ||
12 | |||
13 | SRC_URI[mru.md5sum] = "823abc72c2cd448e87df9bc5355a4456" | ||
14 | SRC_URI[mru.sha256sum] = "01d9fc04f83740c513c25401dcc89c11b2a5a6013e70bfca42b7b02129f88cd2" | ||
15 | SRC_URI[ssvb.md5sum] = "ba0ef2939a3b3b487523448c67544e94" | ||
16 | SRC_URI[ssvb.sha256sum] = "ce42ebdc71c876a33d9f7534355ef76cefa0d00ddb19ad69cf05a266c861d08d" | ||
17 | |||
18 | S = "${WORKDIR}" | ||
19 | |||
20 | do_compile() { | ||
21 | ${CC} ${CFLAGS} ${LDFLAGS} burn.S -o burn | ||
22 | ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a8.S -o burn-neona8 | ||
23 | } | ||
24 | |||
25 | do_install() { | ||
26 | install -d ${D}${bindir} | ||
27 | install -m 0755 ${S}/burn ${D}${bindir}/burn-neon | ||
28 | install -m 0755 ${S}/burn-neona8 ${D}${bindir}/ | ||
29 | } | ||
30 | |||
diff --git a/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb b/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb new file mode 100644 index 000000000..1915e4c2e --- /dev/null +++ b/meta-oe/recipes-benchmark/dbench/dbench_4.0.bb | |||
@@ -0,0 +1,25 @@ | |||
1 | SUMMARY = "The dbench (disk) and tbench (TCP) benchmarks" | ||
2 | SUMMARY_dbench = "Filesystem load benchmark" | ||
3 | SUMMARY_tbench = "TCP load benchmark" | ||
4 | HOMEPAGE = "http://samba.org/ftp/tridge/dbench/" | ||
5 | LICENSE = "GPLv3" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
7 | |||
8 | DEPENDS = "popt" | ||
9 | |||
10 | SRC_URI = "\ | ||
11 | http://samba.org/ftp/tridge/dbench/dbench-${PV}.tar.gz \ | ||
12 | file://destdir.patch \ | ||
13 | file://makefile.patch" | ||
14 | |||
15 | inherit autotools | ||
16 | |||
17 | PACKAGES =+ "tbench tbench-dbg" | ||
18 | |||
19 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
20 | |||
21 | FILES_tbench = "${bindir}/tbench* ${prefix}/share/client.txt" | ||
22 | FILES_tbench-dbg += "${bindir}/.debug/tbench*" | ||
23 | |||
24 | SRC_URI[md5sum] = "1fe56ff71b9a416f8889d7150ac54da4" | ||
25 | SRC_URI[sha256sum] = "6001893f34e68a3cfeb5d424e1f2bfef005df96a22d86f35dc770c5bccf3aa8a" | ||
diff --git a/meta-oe/recipes-benchmark/dbench/files/destdir.patch b/meta-oe/recipes-benchmark/dbench/files/destdir.patch new file mode 100644 index 000000000..4cd2a35f5 --- /dev/null +++ b/meta-oe/recipes-benchmark/dbench/files/destdir.patch | |||
@@ -0,0 +1,28 @@ | |||
1 | Append $(DESTDIR) to all $(bindir), $(datadir) and $(mandir). Got | ||
2 | this patch from OE commit id 709c4d66e0b107ca606941b988bad717c0b45d9b | ||
3 | |||
4 | Upstream-Status: Inappropriate [not author] | ||
5 | |||
6 | Index: dbench-3.04/Makefile.in | ||
7 | =================================================================== | ||
8 | --- dbench-3.04.orig/Makefile.in 2006-09-17 20:21:07.000000000 +0200 | ||
9 | +++ dbench-3.04/Makefile.in 2006-09-17 20:21:36.000000000 +0200 | ||
10 | @@ -32,12 +32,12 @@ | ||
11 | |||
12 | # Careful here: don't install client.txt over itself. | ||
13 | install: all | ||
14 | - ${INSTALLCMD} -d $(bindir) $(datadir) $(mandir) | ||
15 | - ${INSTALLCMD} dbench tbench tbench_srv $(bindir) | ||
16 | - ${INSTALLCMD} client.txt $(datadir) | ||
17 | - ${INSTALLCMD} -m644 dbench.1 $(mandir) | ||
18 | - ln -sf dbench.1 $(mandir)/tbench.1 | ||
19 | - ln -sf dbench.1 $(mandir)/tbench_srv.1 | ||
20 | + ${INSTALLCMD} -d $(DESTDIR)$(bindir) $(DESTDIR)$(datadir) $(DESTDIR)$(mandir) | ||
21 | + ${INSTALLCMD} dbench tbench tbench_srv $(DESTDIR)$(bindir) | ||
22 | + ${INSTALLCMD} @top_srcdir@/client.txt $(DESTDIR)$(datadir) | ||
23 | + ${INSTALLCMD} -m644 @top_srcdir@/dbench.1 $(DESTDIR)$(mandir) | ||
24 | + ln -sf dbench.1 $(DESTDIR)$(mandir)/tbench.1 | ||
25 | + ln -sf dbench.1 $(DESTDIR)$(mandir)/tbench_srv.1 | ||
26 | |||
27 | clean: | ||
28 | rm -f *.o *~ dbench tbench tbench_srv | ||
diff --git a/meta-oe/recipes-benchmark/dbench/files/makefile.patch b/meta-oe/recipes-benchmark/dbench/files/makefile.patch new file mode 100644 index 000000000..11fb4ffbd --- /dev/null +++ b/meta-oe/recipes-benchmark/dbench/files/makefile.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | Add space between install -m option and its argument. Got this patch from | ||
2 | OE 709c4d66e0b107ca606941b988bad717c0b45d9b | ||
3 | |||
4 | Upstream-Status: Inappropriate [not author] | ||
5 | |||
6 | Index: dbench-4.0/Makefile.in | ||
7 | =================================================================== | ||
8 | --- dbench-4.0.orig/Makefile.in | ||
9 | +++ dbench-4.0/Makefile.in | ||
10 | @@ -35,7 +35,7 @@ install: all | ||
11 | ${INSTALLCMD} -d $(DESTDIR)$(bindir) $(DESTDIR)$(datadir) $(DESTDIR)$(mandir) | ||
12 | ${INSTALLCMD} dbench tbench tbench_srv $(DESTDIR)$(bindir) | ||
13 | ${INSTALLCMD} @top_srcdir@/client.txt $(DESTDIR)$(datadir) | ||
14 | - ${INSTALLCMD} -m644 @top_srcdir@/dbench.1 $(DESTDIR)$(mandir) | ||
15 | + ${INSTALLCMD} -m 644 @top_srcdir@/dbench.1 $(DESTDIR)$(mandir) | ||
16 | ln -sf dbench.1 $(DESTDIR)$(mandir)/tbench.1 | ||
17 | ln -sf dbench.1 $(DESTDIR)$(mandir)/tbench_srv.1 | ||
18 | |||
diff --git a/meta-oe/recipes-benchmark/fio/fio/0001-ARM-Use-generic-assembly-nop-and-barrier-code-for-ar.patch b/meta-oe/recipes-benchmark/fio/fio/0001-ARM-Use-generic-assembly-nop-and-barrier-code-for-ar.patch new file mode 100644 index 000000000..db97244bc --- /dev/null +++ b/meta-oe/recipes-benchmark/fio/fio/0001-ARM-Use-generic-assembly-nop-and-barrier-code-for-ar.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | From 152b969cd4ff5b4b7e1c65eca1f9ab243b8a30c8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Otavio Salvador <otavio@ossystems.com.br> | ||
3 | Date: Sun, 14 Apr 2013 13:53:35 -0300 | ||
4 | Subject: [PATCH] ARM: Use generic assembly nop and barrier code for armv6 | ||
5 | |||
6 | Upstream-Status: Submitted | ||
7 | |||
8 | Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> | ||
9 | --- | ||
10 | arch/arch-arm.h | 4 +++- | ||
11 | 1 files changed, 3 insertions(+), 1 deletions(-) | ||
12 | |||
13 | diff --git a/arch/arch-arm.h b/arch/arch-arm.h | ||
14 | index 658b688..7cd9502 100644 | ||
15 | --- a/arch/arch-arm.h | ||
16 | +++ b/arch/arch-arm.h | ||
17 | @@ -18,7 +18,9 @@ | ||
18 | #define __NR_sys_vmsplice 343 | ||
19 | #endif | ||
20 | |||
21 | -#if defined (__ARM_ARCH_4__) || defined (__ARM_ARCH_4T__) || defined (__ARM_ARCH_5__) || defined (__ARM_ARCH_5T__) || defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5TEJ__) | ||
22 | +#if defined (__ARM_ARCH_4__) || defined (__ARM_ARCH_4T__) \ | ||
23 | + || defined (__ARM_ARCH_5__) || defined (__ARM_ARCH_5T__) || defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5TEJ__) \ | ||
24 | + || defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) | ||
25 | #define nop __asm__ __volatile__("mov\tr0,r0\t@ nop\n\t") | ||
26 | #define read_barrier() __asm__ __volatile__ ("" : : : "memory") | ||
27 | #define write_barrier() __asm__ __volatile__ ("" : : : "memory") | ||
28 | -- | ||
29 | 1.7.2.5 | ||
30 | |||
diff --git a/meta-oe/recipes-benchmark/fio/fio_2.0.5.bb b/meta-oe/recipes-benchmark/fio/fio_2.0.5.bb new file mode 100644 index 000000000..8dcf63796 --- /dev/null +++ b/meta-oe/recipes-benchmark/fio/fio_2.0.5.bb | |||
@@ -0,0 +1,28 @@ | |||
1 | SUMMARY = "Filesystem and hardware benchmark and stress tool" | ||
2 | DESCRIPTION = "fio is an I/O tool meant to be used both for benchmark and \ | ||
3 | stress/hardware verification. It has support for a number of I/O engines, \ | ||
4 | I/O priorities (for newer Linux kernels), rate I/O, forked or threaded jobs, \ | ||
5 | and much more. It can work on block devices as well as files. fio accepts \ | ||
6 | job descriptions in a simple-to-understand text format. Several example job \ | ||
7 | files are included. fio displays all sorts of I/O performance information." | ||
8 | HOMEPAGE = "http://freecode.com/projects/fio" | ||
9 | SECTION = "console/tests" | ||
10 | LICENSE = "GPLv2" | ||
11 | LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833" | ||
12 | |||
13 | DEPENDS = "libaio" | ||
14 | |||
15 | # rev for v2.0.5 | ||
16 | SRCREV = "02efadeb8b05144bcf2fc7796e1da2e7db211d00" | ||
17 | SRC_URI = "git://git.kernel.dk/fio.git \ | ||
18 | file://0001-ARM-Use-generic-assembly-nop-and-barrier-code-for-ar.patch" | ||
19 | |||
20 | S = "${WORKDIR}/git" | ||
21 | |||
22 | EXTRA_OEMAKE = "CC='${CC}' CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}'" | ||
23 | |||
24 | do_install() { | ||
25 | oe_runmake install DESTDIR=${D} bindir=${bindir} mandir=${mandir} | ||
26 | install -d ${D}/${docdir}/${PN} | ||
27 | cp -a ${S}/examples ${D}/${docdir}/${PN}/ | ||
28 | } | ||
diff --git a/meta-oe/recipes-benchmark/glmark2/glmark2_2014.03.bb b/meta-oe/recipes-benchmark/glmark2/glmark2_2014.03.bb new file mode 100644 index 000000000..708b6d2ea --- /dev/null +++ b/meta-oe/recipes-benchmark/glmark2/glmark2_2014.03.bb | |||
@@ -0,0 +1,37 @@ | |||
1 | SUMMARY = "OpenGL (ES) 2.0 benchmark" | ||
2 | DESCRIPTION = "glmark2 is a benchmark for OpenGL (ES) 2.0. \ | ||
3 | It uses only the subset of the OpenGL 2.0 API that is compatible with OpenGL ES 2.0." | ||
4 | HOMEPAGE = "https://launchpad.net/glmark2" | ||
5 | BUGTRACKER = "https://bugs.launchpad.net/glmark2" | ||
6 | |||
7 | LICENSE = "GPLv3+ & SGIv1" | ||
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | ||
9 | file://COPYING.SGI;beginline=5;md5=269cdab4af6748677acce51d9aa13552" | ||
10 | |||
11 | DEPENDS = "libpng12 jpeg virtual/libx11" | ||
12 | |||
13 | # depends on virtual/libx11 | ||
14 | REQUIRED_DISTRO_FEATURES = "x11" | ||
15 | |||
16 | SRC_URI = "https://launchpad.net/${BPN}/trunk/${PV}/+download/${BP}.tar.gz" | ||
17 | |||
18 | SRC_URI[md5sum] = "739859cf57d4c8a23452c43e84f66e56" | ||
19 | SRC_URI[sha256sum] = "bded41aaf918ce062d9b81e42cc5be943e6a80bc4ff9d046983b96102c3df6b5" | ||
20 | |||
21 | inherit waf pkgconfig distro_features_check | ||
22 | |||
23 | PACKAGECONFIG ?= "gl gles2" | ||
24 | |||
25 | PACKAGECONFIG[gl] = ",,virtual/libgl" | ||
26 | PACKAGECONFIG[gles2] = ",,virtual/libgles2" | ||
27 | |||
28 | python __anonymous() { | ||
29 | packageconfig = (d.getVar("PACKAGECONFIG", True) or "").split() | ||
30 | flavors = [] | ||
31 | if "gles2" in packageconfig: | ||
32 | flavors.append("x11-glesv2") | ||
33 | if "gl" in packageconfig: | ||
34 | flavors.append("x11-gl") | ||
35 | if flavors: | ||
36 | d.appendVar("EXTRA_OECONF", " --with-flavors=%s" % ",".join(flavors)) | ||
37 | } | ||
diff --git a/meta-oe/recipes-benchmark/iozone3/iozone3/copyright.txt b/meta-oe/recipes-benchmark/iozone3/iozone3/copyright.txt new file mode 100644 index 000000000..3468fa929 --- /dev/null +++ b/meta-oe/recipes-benchmark/iozone3/iozone3/copyright.txt | |||
@@ -0,0 +1,62 @@ | |||
1 | LICENSE: | ||
2 | |||
3 | Copyright 1991, 1992, 1994, 1998, 1999, 2002 William D. Norcott | ||
4 | |||
5 | License to freely use and distribute this software is hereby granted | ||
6 | by the author, subject to the condition that this copyright notice | ||
7 | remains intact. The author retains the exclusive right to publish | ||
8 | derivative works based on this work, including, but not limited to | ||
9 | revised versions of this work. | ||
10 | |||
11 | |||
12 | |||
13 | Below is author reply to question about distributing iozone3 in | ||
14 | OpenEmbedded: | ||
15 | |||
16 | ======================================================================== | ||
17 | |||
18 | Marcin, | ||
19 | |||
20 | Re-distribution is permitted as long as the copyright is | ||
21 | maintained and the source code is not changed. I do not | ||
22 | see a problem with your mods to enable fileop for Linux-arm, | ||
23 | as these mods have been returned to the Iozone folks, | ||
24 | and they have been accepted for inclusion in the next | ||
25 | release :-) | ||
26 | |||
27 | Thank you for your contribution, | ||
28 | Don Capps | ||
29 | |||
30 | ----- Original Message ----- | ||
31 | From: "Marcin Juszkiewicz" <firma@hrw.one.pl> | ||
32 | To: "Don Capps" <don.capps2@verizon.net>; "William D. Norcott" | ||
33 | <wnorcott@us.oracle.com> | ||
34 | Sent: Sunday, October 29, 2006 4:55 PM | ||
35 | Subject: iozone3 263 patch for arm and License question | ||
36 | |||
37 | |||
38 | > Morning | ||
39 | > | ||
40 | > I want to include iozone3 in OpenEmbedded [1] metadata to give it for | ||
41 | > other developers. Currently OE is used to build few distributions for | ||
42 | > misc platforms: ARM, SH3, SH4, x86, PowerPC and different types of | ||
43 | > machines (PDA, settopbox, devboards, desktops, thin clients, routers). | ||
44 | > | ||
45 | > According to your distribution of derivations is forbidden. Packaging | ||
46 | > iozone3 in OpenEmbedded will not involve any source code changes. But | ||
47 | > when I was building it for ARM I discovered that fileop binary was not | ||
48 | > built - so I created patch for it (attached). Not yet tested it on target | ||
49 | > device. | ||
50 | > | ||
51 | > Thus, I seek your written permission via e-mail to distribute a package of | ||
52 | > the unmodified source code and also a package of the pre-compiled binary. | ||
53 | > Your copyright statement will be included in the package. | ||
54 | > | ||
55 | > | ||
56 | > 1. http://www.openembedded.org/ | ||
57 | > | ||
58 | > Regards | ||
59 | > -- | ||
60 | > JID: hrw-jabber.org | ||
61 | > OpenEmbedded developer/consultant | ||
62 | |||
diff --git a/meta-oe/recipes-benchmark/iozone3/iozone3_414.bb b/meta-oe/recipes-benchmark/iozone3/iozone3_414.bb new file mode 100644 index 000000000..14373b9e0 --- /dev/null +++ b/meta-oe/recipes-benchmark/iozone3/iozone3_414.bb | |||
@@ -0,0 +1,114 @@ | |||
1 | SUMMARY = "Filesystem and Disk Benchmarking Tool" | ||
2 | HOMEPAGE = "http://www.iozone.org/" | ||
3 | AUTHOR = "Don Capps <don.capps2@verizon.net>, William D. Norcott <wnorcott@us.oracle.com>" | ||
4 | SECTION = "console/tests" | ||
5 | LICENSE = "iozone3" | ||
6 | LIC_FILES_CHKSUM = "file://iozone.c;beginline=266;endline=270;md5=ab42a6185fd0443978871f11a007ac0b" | ||
7 | |||
8 | SRC_URI = "http://www.iozone.org/src/current/${BPN}_${PV}.tar \ | ||
9 | file://copyright.txt \ | ||
10 | " | ||
11 | SRC_URI[md5sum] = "a40dcda593f5841d0aaffe9f21172020" | ||
12 | SRC_URI[sha256sum] = "9f60e854d7bc5bc3de15355cf5621e15098bd744a26845d11730b3060f4a5fff" | ||
13 | |||
14 | S = "${WORKDIR}/${BPN}_${PV}/src/current/" | ||
15 | |||
16 | # | ||
17 | # All other arches can use the default OEMAKE except those | ||
18 | # explicitly listed below. Another, the iozone3 Makefile | ||
19 | # needs to be told about the cross-compiler explicitly here. | ||
20 | # | ||
21 | EXTRA_OEMAKE_powerpc = "linux-powerpc CC='${CC}' GCC='${CC}'" | ||
22 | EXTRA_OEMAKE_powerpc64 = "linux-powerpc64 CC='${CC}' GCC='${CC}'" | ||
23 | EXTRA_OEMAKE_arm = "linux-arm CC='${CC}' GCC='${CC}'" | ||
24 | EXTRA_OEMAKE = "linux CC='${CC}' GCC='${CC}'" | ||
25 | |||
26 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
27 | |||
28 | do_install() { | ||
29 | install -d ${D}${bindir} \ | ||
30 | ${D}${mandir}/man1 \ | ||
31 | ${D}${datadir}/doc/${BPN}/examples | ||
32 | |||
33 | install -m 0755 ${S}/iozone ${D}${bindir} | ||
34 | install -m 0755 ${S}/fileop ${D}${bindir} | ||
35 | install -m 0644 ${WORKDIR}/${BPN}_${PV}/docs/iozone.1 ${D}${mandir}/man1/ | ||
36 | install -m 0644 ${WORKDIR}/copyright.txt ${D}${datadir}/doc/${BPN}/ | ||
37 | |||
38 | install -m 0644 ${S}/*.dem ${D}${datadir}/doc/${BPN}/examples | ||
39 | install -m 0644 ${S}/client_list ${D}${datadir}/doc/${BPN}/examples | ||
40 | install -m 0644 ${S}/Gnuplot.txt ${D}${datadir}/doc/${BPN}/examples | ||
41 | |||
42 | install -m 0755 ${S}/Generate_Graphs ${D}${datadir}/doc/${BPN}/examples | ||
43 | install -m 0755 ${S}/gengnuplot.sh ${D}${datadir}/doc/${BPN}/examples | ||
44 | install -m 0755 ${S}/report.pl ${D}${datadir}/doc/${BPN}/examples | ||
45 | |||
46 | install -m 0644 ${WORKDIR}/${BPN}_${PV}/docs/Iozone_ps.gz ${D}${datadir}/doc/${BPN}/ | ||
47 | install -m 0644 ${WORKDIR}/${BPN}_${PV}/docs/IOzone_msword_98.pdf ${D}${datadir}/doc/${BPN}/ | ||
48 | install -m 0644 ${WORKDIR}/${BPN}_${PV}/docs/Run_rules.doc ${D}${datadir}/doc/${BPN}/ | ||
49 | } | ||
50 | |||
51 | FILES_${PN} += "${datadir}/doc/${PN}/copyright.txt" | ||
52 | |||
53 | # LICENSE: | ||
54 | # | ||
55 | # Copyright 1991, 1992, 1994, 1998, 1999, 2002 William D. Norcott | ||
56 | # | ||
57 | # License to freely use and distribute this software is hereby granted | ||
58 | # by the author, subject to the condition that this copyright notice | ||
59 | # remains intact. The author retains the exclusive right to publish | ||
60 | # derivative works based on this work, including, but not limited to | ||
61 | # revised versions of this work. | ||
62 | # | ||
63 | |||
64 | # | ||
65 | # Below is author reply to question about distributing iozone3 in | ||
66 | # OpenEmbedded: | ||
67 | # | ||
68 | # ======================================================================== | ||
69 | # | ||
70 | # Marcin, | ||
71 | # | ||
72 | # Re-distribution is permitted as long as the copyright is | ||
73 | # maintained and the source code is not changed. I do not | ||
74 | # see a problem with your mods to enable fileop for Linux-arm, | ||
75 | # as these mods have been returned to the Iozone folks, | ||
76 | # and they have been accepted for inclusion in the next | ||
77 | # release :-) | ||
78 | # | ||
79 | # Thank you for your contribution, | ||
80 | # Don Capps | ||
81 | # | ||
82 | # ----- Original Message ----- | ||
83 | # From: "Marcin Juszkiewicz" <firma@hrw.one.pl> | ||
84 | # To: "Don Capps" <don.capps2@verizon.net>; "William D. Norcott" | ||
85 | # <wnorcott@us.oracle.com> | ||
86 | # Sent: Sunday, October 29, 2006 4:55 PM | ||
87 | # Subject: iozone3 263 patch for arm and License question | ||
88 | # | ||
89 | # | ||
90 | # > Morning | ||
91 | # > | ||
92 | # > I want to include iozone3 in OpenEmbedded [1] metadata to give it for | ||
93 | # > other developers. Currently OE is used to build few distributions for | ||
94 | # > misc platforms: ARM, SH3, SH4, x86, PowerPC and different types of | ||
95 | # > machines (PDA, settopbox, devboards, desktops, thin clients, routers). | ||
96 | # > | ||
97 | # > According to your distribution of derivations is forbidden. Packaging | ||
98 | # > iozone3 in OpenEmbedded will not involve any source code changes. But | ||
99 | # > when I was building it for ARM I discovered that fileop binary was not | ||
100 | # > built - so I created patch for it (attached). Not yet tested it on target | ||
101 | # > device. | ||
102 | # > | ||
103 | # > Thus, I seek your written permission via e-mail to distribute a package of | ||
104 | # > the unmodified source code and also a package of the pre-compiled binary. | ||
105 | # > Your copyright statement will be included in the package. | ||
106 | # > | ||
107 | # > | ||
108 | # > 1. http://www.openembedded.org/ | ||
109 | # > | ||
110 | # > Regards | ||
111 | # > -- | ||
112 | # > JID: hrw-jabber.org | ||
113 | # > OpenEmbedded developer/consultant | ||
114 | |||
diff --git a/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch b/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch new file mode 100644 index 000000000..e8a029790 --- /dev/null +++ b/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch | |||
@@ -0,0 +1,52 @@ | |||
1 | iperf: fix out of tree configuration | ||
2 | |||
3 | The configure step uses a package header to check for support of types/declares, | ||
4 | this package header encapsulates all the required system header for providing | ||
5 | the needed resources. When configured from an out of tree directory the package | ||
6 | header is not found due to the hard path. | ||
7 | We now make the path for package header relative to our 'srcdir' so it is | ||
8 | found appropriately. | ||
9 | |||
10 | Signed-off-by: Awais Belal <awais_belal@mentor.com> | ||
11 | --- | ||
12 | diff --git a/configure.ac b/configure.ac | ||
13 | index 2b3fd20..d420f9e 100644 | ||
14 | --- a/configure.ac | ||
15 | +++ b/configure.ac | ||
16 | @@ -176,8 +176,8 @@ dnl Check for system services | ||
17 | |||
18 | dnl check for multicast | ||
19 | if test "$ac_cv_multicast" != no; then | ||
20 | - AC_CHECK_TYPES(struct ip_mreq,,,[#include "compat/headers_slim.h"]) | ||
21 | - AC_CHECK_DECLS(IP_ADD_MEMBERSHIP,,,[#include "compat/headers_slim.h"]) | ||
22 | + AC_CHECK_TYPES(struct ip_mreq,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
23 | + AC_CHECK_DECLS(IP_ADD_MEMBERSHIP,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
24 | AC_MSG_CHECKING(for multicast support) | ||
25 | ac_cv_multicast=no | ||
26 | if test "$ac_cv_have_decl_IP_ADD_MEMBERSHIP" = yes; then | ||
27 | @@ -193,9 +193,9 @@ fi | ||
28 | |||
29 | dnl check for IPv6 | ||
30 | if test "$ac_cv_have_ipv6" != no; then | ||
31 | - AC_CHECK_TYPES(struct sockaddr_storage,,,[#include "compat/headers_slim.h"]) | ||
32 | - AC_CHECK_TYPES(struct sockaddr_in6,,,[#include "compat/headers_slim.h"]) | ||
33 | - AC_CHECK_DECLS(AF_INET6,,,[#include "compat/headers_slim.h"]) | ||
34 | + AC_CHECK_TYPES(struct sockaddr_storage,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
35 | + AC_CHECK_TYPES(struct sockaddr_in6,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
36 | + AC_CHECK_DECLS(AF_INET6,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
37 | AC_MSG_CHECKING(for IPv6 headers and structures) | ||
38 | ac_cv_have_ipv6=no | ||
39 | if test "$ac_cv_type_struct_sockaddr_storage" = yes; then | ||
40 | @@ -211,9 +211,9 @@ fi | ||
41 | |||
42 | if test "$ac_cv_have_ipv6" = yes; then | ||
43 | if test "$ac_cv_multicast" = yes; then | ||
44 | - AC_CHECK_TYPES(struct ipv6_mreq,,,[#include "compat/headers_slim.h"]) | ||
45 | - AC_CHECK_DECLS(IPV6_ADD_MEMBERSHIP,,,[#include "compat/headers_slim.h"]) | ||
46 | - AC_CHECK_DECLS(IPV6_MULTICAST_HOPS,,,[#include "compat/headers_slim.h"]) | ||
47 | + AC_CHECK_TYPES(struct ipv6_mreq,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
48 | + AC_CHECK_DECLS(IPV6_ADD_MEMBERSHIP,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
49 | + AC_CHECK_DECLS(IPV6_MULTICAST_HOPS,,,[#include "${srcdir}/compat/headers_slim.h"]) | ||
50 | AC_MSG_CHECKING(for IPv6 multicast support) | ||
51 | ac_cv_have_ipv6_multicast=no | ||
52 | if test "$ac_cv_type_struct_ipv6_mreq" = yes; then | ||
diff --git a/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch b/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch new file mode 100755 index 000000000..12e8f4631 --- /dev/null +++ b/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch | |||
@@ -0,0 +1,8 @@ | |||
1 | diff --git iperf-2.0.5/man/Makefile.am iperf-2.0.5/man/Makefile.am | ||
2 | index ed97bc6..728873f 100644 | ||
3 | --- iperf-2.0.5/man/Makefile.am | ||
4 | +++ iperf-2.0.5/man/Makefile.am | ||
5 | @@ -1,2 +1 @@ | ||
6 | -man_MANS = iperf.1 | ||
7 | -dist_man_MANS = $(man_MANS) | ||
8 | +dist_man_MANS = iperf.1 | ||
diff --git a/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb b/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb new file mode 100644 index 000000000..20adc0db9 --- /dev/null +++ b/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb | |||
@@ -0,0 +1,19 @@ | |||
1 | DESCRIPTION = "Iperf is a tool to measure maximum TCP bandwidth, allowing the tuning of various parameters and UDP characteristics" | ||
2 | HOMEPAGE = "http://dast.nlanr.net/Projects/Iperf/" | ||
3 | SECTION = "console/network" | ||
4 | LICENSE = "BSD-2-Clause" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=e8478eae9f479e39bc34975193360298" | ||
6 | |||
7 | SRC_URI = " ${SOURCEFORGE_MIRROR}/iperf/${BP}.tar.gz \ | ||
8 | file://iperf-2.0.5_ManPage.patch \ | ||
9 | file://0001-fix-out-of-tree-config.patch \ | ||
10 | " | ||
11 | |||
12 | SRC_URI[md5sum] = "44b5536b67719f4250faed632a3cd016" | ||
13 | SRC_URI[sha256sum] = "636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b" | ||
14 | |||
15 | S = "${WORKDIR}/${PN}-${PV}" | ||
16 | |||
17 | inherit autotools pkgconfig | ||
18 | |||
19 | EXTRA_OECONF = "--exec-prefix=${STAGING_DIR_HOST}${layout_exec_prefix}" | ||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Extend-arm32-support-to-include-BE-variants.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Extend-arm32-support-to-include-BE-variants.patch new file mode 100644 index 000000000..f6147cbf3 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Extend-arm32-support-to-include-BE-variants.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | From 5af6dec8764375ca4f13bd9fed96af090228351a Mon Sep 17 00:00:00 2001 | ||
2 | From: "Gary S. Robertson" <gary.robertson@linaro.org> | ||
3 | Date: Mon, 11 Aug 2014 11:06:04 -0500 | ||
4 | Subject: [libhugetlbfs][PATCH] Extend arm32 support to include BE variants | ||
5 | |||
6 | This patch applies the same technique used by Koen Kool in the following patch | ||
7 | which was accepted by the libhugetlbfs project: | ||
8 | |||
9 | [0a4f6] Add aarch64_be_support 2014-03-31 10:52:37 | ||
10 | |||
11 | It modifies the libhugetlbfs Makefile to mark all 32-bit arm architectures | ||
12 | as supported by the libhugetlbfs build. Builds and successful functional | ||
13 | tests have been performed for armv7a LE and BE runtime platforms. | ||
14 | |||
15 | This patch replaces and renders obsolete the following patch: | ||
16 | arm32-support.patch submitted by: Chunrong Guo <B40290@freescale.com> | ||
17 | |||
18 | Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org> | ||
19 | --- | ||
20 | Makefile | 2 +- | ||
21 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
22 | |||
23 | diff --git a/Makefile b/Makefile | ||
24 | index 91502e1..ba79607 100644 | ||
25 | --- a/Makefile | ||
26 | +++ b/Makefile | ||
27 | @@ -59,7 +59,7 @@ ELF32 = elf32ppclinux | ||
28 | TMPLIB32 = lib | ||
29 | CPPFLAGS += -DPPC_NO_SEGMENTS | ||
30 | else | ||
31 | -ifeq ($(ARCH),armv7l) | ||
32 | +ifneq (,$(findstring arm,$(ARCH))) | ||
33 | CC32 = $(CC) | ||
34 | TMPLIB32 = lib | ||
35 | ELF32 += armelf_linux_eabi | ||
36 | -- | ||
37 | 1.7.9.5 | ||
38 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Makefile-Recognize-all-ix86-arches.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Makefile-Recognize-all-ix86-arches.patch new file mode 100644 index 000000000..271827511 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-Makefile-Recognize-all-ix86-arches.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | From a0166583ba5f7b6a6d2de434f633126fb12c9d29 Mon Sep 17 00:00:00 2001 | ||
2 | From: "Gary S. Robertson" <gary.robertson@linaro.org> | ||
3 | Date: Wed, 24 Sep 2014 15:27:31 -0500 | ||
4 | Subject: [PATCH] Makefile: Recognize all ix86 arches | ||
5 | |||
6 | In a non-native build scenario, the makefile | ||
7 | only recognized i386 or x86_64 arches. Added support | ||
8 | to recognize i486, i586, i686. | ||
9 | |||
10 | Upstream Status: Accepted by libhugetlbfs project | ||
11 | |||
12 | Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org> | ||
13 | --- | ||
14 | Makefile | 2 +- | ||
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
16 | |||
17 | diff --git a/Makefile b/Makefile | ||
18 | index 91502e1..0bfaee8 100644 | ||
19 | --- a/Makefile | ||
20 | +++ b/Makefile | ||
21 | @@ -71,7 +71,7 @@ ELF64 = aarch64elf | ||
22 | TMPLIB64 = lib64 | ||
23 | CUSTOM_LDSCRIPTS = no | ||
24 | else | ||
25 | -ifeq ($(ARCH),i386) | ||
26 | +ifneq (,$(filter i386 i486 i586 i686,$(ARCH))) | ||
27 | CC32 = $(CC) | ||
28 | ELF32 = elf_i386 | ||
29 | TMPLIB32 = lib | ||
30 | -- | ||
31 | 1.7.9.5 | ||
32 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-cross-compilation.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-cross-compilation.patch new file mode 100644 index 000000000..215ae728d --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-cross-compilation.patch | |||
@@ -0,0 +1,34 @@ | |||
1 | Subject: [PATCH] aarch64: fix cross compilation | ||
2 | |||
3 | This patch allow to override CC and use it for aarch64 case like | ||
4 | the other architectures. | ||
5 | |||
6 | Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> | ||
7 | |||
8 | Upstream-Status: Submitted | ||
9 | --- | ||
10 | Makefile | 4 ++-- | ||
11 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
12 | |||
13 | diff --git a/Makefile b/Makefile | ||
14 | index 91502e1..5aa1e12 100644 | ||
15 | --- a/Makefile | ||
16 | +++ b/Makefile | ||
17 | @@ -33,7 +33,7 @@ CFLAGS += -Wall -fPIC | ||
18 | CPPFLAGS += -D__LIBHUGETLBFS__ | ||
19 | |||
20 | ARCH = $(shell uname -m | sed -e s/i.86/i386/) | ||
21 | -CC = gcc | ||
22 | +CC ?= gcc | ||
23 | |||
24 | CUSTOM_LDSCRIPTS = yes | ||
25 | |||
26 | @@ -66,7 +66,7 @@ ELF32 += armelf_linux_eabi | ||
27 | CUSTOM_LDSCRIPTS = no | ||
28 | else | ||
29 | ifneq (,$(findstring aarch64,$(ARCH))) | ||
30 | -CC64 = gcc | ||
31 | +CC64 = $(CC) | ||
32 | ELF64 = aarch64elf | ||
33 | TMPLIB64 = lib64 | ||
34 | CUSTOM_LDSCRIPTS = no | ||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch new file mode 100644 index 000000000..0b8d0e4d5 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | Upstream-Status: Inappropriate [oe-core specific] | ||
2 | |||
3 | libhugetlbfs depends on perl, and perl installs a directory 'perl' | ||
4 | and make a symlink 'perl5' to it. So just install perl libs in | ||
5 | libhugetlbfs to directory 'perl' instead of 'perl5'. This can avoid | ||
6 | the following error: | ||
7 | | CalledProcessError: Command 'tar -cf - -C .../perl/5.14.3-r1/sysroot-destdir | ||
8 | | -ps . | tar -xf - -C .../tmp/sysroots/t4240qds' | ||
9 | | returned non-zero exit status 2 with output | ||
10 | | tar: ./usr/lib/perl5: Cannot create symlink to `perl': File exists | ||
11 | | tar: Exiting with failure status due to previous errors | ||
12 | |||
13 | |||
14 | Signed-off-by: Ting Liu <b28495@freescale.com> | ||
15 | |||
16 | --- a/Makefileold 2013-10-11 23:07:31.759421318 -0500 | ||
17 | +++ b/Makefile 2013-10-11 23:08:01.935571122 -0500 | ||
18 | @@ -173,17 +173,17 @@ | ||
19 | DOCDIR = $(PREFIX)/share/doc/libhugetlbfs | ||
20 | |||
21 | ifdef CC32 | ||
22 | -PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
23 | +PMDIR = $(PREFIX)/lib/perl/TLBC | ||
24 | endif | ||
25 | |||
26 | ifdef CC64 | ||
27 | ifeq ($(ARCH),x86_64) | ||
28 | -PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
29 | +PMDIR = $(PREFIX)/lib/perl/TLBC | ||
30 | else | ||
31 | ifeq ($(ARCH),aarch64) | ||
32 | -PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
33 | +PMDIR = $(PREFIX)/lib/perl/TLBC | ||
34 | else | ||
35 | -PMDIR = $(PREFIX)/lib64/perl5/TLBC | ||
36 | +PMDIR = $(PREFIX)/lib64/perl/TLBC | ||
37 | endif | ||
38 | endif | ||
39 | endif | ||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch new file mode 100644 index 000000000..4e5b7bbbb --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch | |||
@@ -0,0 +1,57 @@ | |||
1 | From 1ab6f7f9b34fc745451140fc21db6763dffc5785 Mon Sep 17 00:00:00 2001 | ||
2 | From: "Gary S. Robertson" <gary.robertson@linaro.org> | ||
3 | Date: Thu, 25 Sep 2014 14:57:06 -0500 | ||
4 | Subject: [PATCH] ld.hugetlbfs: arm arches - fix page size and text offset | ||
5 | setup | ||
6 | |||
7 | There's 3 issues fixed: | ||
8 | * typo on MB variable (MB -> $MB) | ||
9 | * some linker variants are missing (linux and big endian) | ||
10 | - armelfb_linux_eabi | ||
11 | - aarch64elfb | ||
12 | - aarch64linux | ||
13 | - aarch64linuxb | ||
14 | * text segment offset was not specified for armv7 BE | ||
15 | |||
16 | NOTE: This patch replaces and makes obsolete the following previously | ||
17 | submitted patch: | ||
18 | |||
19 | aarch64: fix page size not properly computed | ||
20 | by: Fathi Boudra <fathi.boudra@linaro.org> | ||
21 | |||
22 | Upstream Status: Accepted at libhugetlbfs project | ||
23 | |||
24 | Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org> | ||
25 | --- | ||
26 | ld.hugetlbfs | 8 ++++---- | ||
27 | 1 file changed, 4 insertions(+), 4 deletions(-) | ||
28 | |||
29 | diff --git a/ld.hugetlbfs b/ld.hugetlbfs | ||
30 | index df446dd..4417442 100755 | ||
31 | --- a/ld.hugetlbfs | ||
32 | +++ b/ld.hugetlbfs | ||
33 | @@ -87,7 +87,7 @@ elf32ppclinux|elf64ppc) HPAGE_SIZE=$((16*$MB)) SLICE_SIZE=$((256*$MB)) ;; | ||
34 | elf64lppc) HPAGE_SIZE=$((16*$MB)) SLICE_SIZE=$((256*$MB)) ;; | ||
35 | elf_i386|elf_x86_64) HPAGE_SIZE=$((4*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; | ||
36 | elf_s390|elf64_s390) HPAGE_SIZE=$((1*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; | ||
37 | -armelf_linux_eabi|aarch64elf) HPAGE_SIZE=$((2*MB)) SLICE_SIZE=$HPAGE_SIZE ;; | ||
38 | +armelf*_linux_eabi|aarch64elf*|aarch64linux*) HPAGE_SIZE=$((2*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; | ||
39 | esac | ||
40 | |||
41 | if [ "$HTLB_ALIGN" == "slice" ]; then | ||
42 | @@ -96,9 +96,9 @@ if [ "$HTLB_ALIGN" == "slice" ]; then | ||
43 | |||
44 | # targeting the ARM platform one needs to explicitly set the text segment offset | ||
45 | # otherwise it will be NULL. | ||
46 | - if [ "$EMU" == "armelf_linux_eabi" ]; then | ||
47 | - HTLBOPTS="$HTLBOPTS -Ttext-segment=$SLICE_SIZE" | ||
48 | - fi | ||
49 | + case "$EMU" in | ||
50 | + armelf*_linux_eabi) HTLBOPTS="$HTLBOPTS -Ttext-segment=$SLICE_SIZE" ;; | ||
51 | + esac | ||
52 | fi | ||
53 | |||
54 | ${LD} "${args[@]}" ${HTLBOPTS} | ||
55 | -- | ||
56 | 1.7.9.5 | ||
57 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-replace-lib-lib64-hardcoded-values-by-LIBDIR32-LIBDI.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-replace-lib-lib64-hardcoded-values-by-LIBDIR32-LIBDI.patch new file mode 100644 index 000000000..9e2a5e58d --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-replace-lib-lib64-hardcoded-values-by-LIBDIR32-LIBDI.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | Subject: [PATCH 1/1] Replace lib/lib64 hardcoded values by LIBDIR32/LIBDIR64 | ||
2 | variables | ||
3 | |||
4 | Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> | ||
5 | |||
6 | Upstream-Status: Submitted | ||
7 | --- | ||
8 | Makefile | 4 ++-- | ||
9 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
10 | |||
11 | diff --git a/Makefile b/Makefile | ||
12 | index 91502e1..682c0db 100644 | ||
13 | --- a/Makefile | ||
14 | +++ b/Makefile | ||
15 | @@ -181,9 +181,9 @@ BINDIR = $(PREFIX)/share/libhugetlbfs | ||
16 | EXEDIR = $(PREFIX)/bin | ||
17 | DOCDIR = $(PREFIX)/share/doc/libhugetlbfs | ||
18 | ifdef CC32 | ||
19 | -PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
20 | +PMDIR = $(LIBDIR32)/perl5/TLBC | ||
21 | else | ||
22 | -PMDIR = $(PREFIX)/lib64/perl5/TLBC | ||
23 | +PMDIR = $(LIBDIR64)/perl5/TLBC | ||
24 | endif | ||
25 | MANDIR1 = $(PREFIX)/share/man/man1 | ||
26 | MANDIR3 = $(PREFIX)/share/man/man3 | ||
27 | -- | ||
28 | 1.9.2 | ||
29 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch new file mode 100644 index 000000000..3082d7ef5 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch | |||
@@ -0,0 +1,43 @@ | |||
1 | From a85fc43243f8bfad12d306a4a0e230fb8b3e828a Mon Sep 17 00:00:00 2001 | ||
2 | From: Ting Liu <b28495@freescale.com> | ||
3 | Date: Wed, 21 Aug 2013 15:44:57 +0800 | ||
4 | Subject: [PATCH] run_test.py: not use hard coded path ../obj/hugeadm | ||
5 | |||
6 | Hard coded path makes the script impossible to run out of source tree. | ||
7 | After 'make install', we can use hugeadm utility under DESTDIR. | ||
8 | |||
9 | Upstream-Status: Submitted | ||
10 | |||
11 | Signed-off-by: Ting Liu <b28495@freescale.com> | ||
12 | --- | ||
13 | tests/run_tests.py | 12 +++++++++++- | ||
14 | 1 files changed, 11 insertions(+), 1 deletions(-) | ||
15 | |||
16 | diff --git a/tests/run_tests.py b/tests/run_tests.py | ||
17 | index d9a6b35..a9bab8f 100755 | ||
18 | --- a/tests/run_tests.py | ||
19 | +++ b/tests/run_tests.py | ||
20 | @@ -232,9 +232,19 @@ def get_pagesizes(): | ||
21 | Use libhugetlbfs' hugeadm utility to get a list of page sizes that have | ||
22 | active mount points and at least one huge page allocated to the pool. | ||
23 | """ | ||
24 | + local_env = os.environ.copy() | ||
25 | + local_env["PATH"] = "../obj:%s" % local_env.get("PATH", "") | ||
26 | sizes = set() | ||
27 | out = "" | ||
28 | - (rc, out) = bash("../obj/hugeadm --page-sizes") | ||
29 | + try: | ||
30 | + p = subprocess.Popen("hugeadm --page-sizes", shell=True, env=local_env, stdout=subprocess.PIPE) | ||
31 | + rc = p.wait() | ||
32 | + except KeyboardInterrupt: | ||
33 | + return sizes | ||
34 | + except OSError: | ||
35 | + return sizes | ||
36 | + out = p.stdout.read().strip() | ||
37 | + | ||
38 | if rc != 0 or out == "": return sizes | ||
39 | |||
40 | for size in out.split("\n"): sizes.add(int(size)) | ||
41 | -- | ||
42 | 1.7.3.4 | ||
43 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/fix-lib64-can-not-be-shiped-in-64bit-target.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/fix-lib64-can-not-be-shiped-in-64bit-target.patch new file mode 100644 index 000000000..676fa8a7a --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/fix-lib64-can-not-be-shiped-in-64bit-target.patch | |||
@@ -0,0 +1,75 @@ | |||
1 | Upstream-Status: Inappropriate [oe-core specific] | ||
2 | |||
3 | |||
4 | fix the below error: | ||
5 | ERROR: QA Issue: libhugetlbfs: Files/directories were installed but not shipped | ||
6 | /usr/lib64 | ||
7 | /usr/lib64/libhugetlbfs.so | ||
8 | /usr/lib64/libhugetlbfs.a | ||
9 | /usr/lib64/libhugetlbfs_privutils.so | ||
10 | /usr/lib64/perl5 | ||
11 | /usr/lib64/perl5/TLBC | ||
12 | /usr/lib64/perl5/TLBC/PerfCollect.pm | ||
13 | /usr/lib64/perl5/TLBC/Report.pm | ||
14 | /usr/lib64/perl5/TLBC/DataCollect.pm | ||
15 | /usr/lib64/perl5/TLBC/OpCollect.pm | ||
16 | $<50>ERROR: QA run found fatal errors. Please consider fixing them. | ||
17 | |||
18 | |||
19 | Signed-off-by: Guo Chunrong <B40290@freescale.com> | ||
20 | |||
21 | --- a/Makefile 2013-09-23 02:28:57.340566998 -0500 | ||
22 | +++ b/Makefile 2013-09-23 02:31:05.344569896 -0500 | ||
23 | @@ -33,7 +33,6 @@ | ||
24 | CPPFLAGS += -D__LIBHUGETLBFS__ -DPPC_NO_SEGMENTS | ||
25 | |||
26 | ARCH = $(shell uname -m | sed -e s/i.86/i386/) | ||
27 | -CC = gcc | ||
28 | |||
29 | CUSTOM_LDSCRIPTS = yes | ||
30 | |||
31 | @@ -59,9 +58,9 @@ | ||
32 | CUSTOM_LDSCRIPTS = no | ||
33 | else | ||
34 | ifeq ($(ARCH),aarch64) | ||
35 | -CC64 = gcc | ||
36 | +CC64 = $(CC) | ||
37 | ELF64 = aarch64elf | ||
38 | -TMPLIB64 = lib64 | ||
39 | +TMPLIB64 = lib | ||
40 | CUSTOM_LDSCRIPTS = no | ||
41 | else | ||
42 | ifeq ($(ARCH),i386) | ||
43 | @@ -72,7 +71,7 @@ | ||
44 | ifeq ($(ARCH),x86_64) | ||
45 | CC64 = $(CC) -m64 | ||
46 | ELF64 = elf_x86_64 | ||
47 | -TMPLIB64 = lib64 | ||
48 | +TMPLIB64 = lib | ||
49 | TMPLIB32 = lib | ||
50 | ifneq ($(BUILDTYPE),NATIVEONLY) | ||
51 | CC32 = $(CC) -m32 | ||
52 | @@ -172,11 +171,23 @@ | ||
53 | BINDIR = $(PREFIX)/share/libhugetlbfs | ||
54 | EXEDIR = $(PREFIX)/bin | ||
55 | DOCDIR = $(PREFIX)/share/doc/libhugetlbfs | ||
56 | + | ||
57 | ifdef CC32 | ||
58 | PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
59 | +endif | ||
60 | + | ||
61 | +ifdef CC64 | ||
62 | +ifeq ($(ARCH),x86_64) | ||
63 | +PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
64 | +else | ||
65 | +ifeq ($(ARCH),aarch64) | ||
66 | +PMDIR = $(PREFIX)/lib/perl5/TLBC | ||
67 | else | ||
68 | PMDIR = $(PREFIX)/lib64/perl5/TLBC | ||
69 | endif | ||
70 | +endif | ||
71 | +endif | ||
72 | + | ||
73 | MANDIR1 = $(PREFIX)/share/man/man1 | ||
74 | MANDIR3 = $(PREFIX)/share/man/man3 | ||
75 | MANDIR7 = $(PREFIX)/share/man/man7 | ||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-search-host-library-path-for-cros.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-search-host-library-path-for-cros.patch new file mode 100644 index 000000000..b3fd84312 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-search-host-library-path-for-cros.patch | |||
@@ -0,0 +1,99 @@ | |||
1 | From 0a2877400a086e9d6ddd32a80462b7a931921dc2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Chunrong Guo <B40290@freescale.com> | ||
3 | Date: Sun, 8 Sep 2013 23:21:49 -0500 | ||
4 | Subject: [PATCH] libhugetlbfs: avoid search host library path for cross | ||
5 | compilation | ||
6 | |||
7 | Upstream-Status: Inappropriate [oe-core specific] | ||
8 | |||
9 | Signed-off-by: Chunrong Guo <B40290@freescale.com> | ||
10 | --- | ||
11 | ldscripts/elf32ppclinux.xB | 2 +- | ||
12 | ldscripts/elf32ppclinux.xBDT | 2 +- | ||
13 | ldscripts/elf64ppc.xB | 2 +- | ||
14 | ldscripts/elf64ppc.xBDT | 2 +- | ||
15 | ldscripts/elf_x86_64.xB | 2 +- | ||
16 | ldscripts/elf_x86_64.xBDT | 2 +- | ||
17 | 6 files changed, 6 insertions(+), 6 deletions(-) | ||
18 | |||
19 | diff --git a/ldscripts/elf32ppclinux.xB b/ldscripts/elf32ppclinux.xB | ||
20 | index 28ad88d..33d482d 100644 | ||
21 | --- a/ldscripts/elf32ppclinux.xB | ||
22 | +++ b/ldscripts/elf32ppclinux.xB | ||
23 | @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc", | ||
24 | "elf32-powerpc") | ||
25 | OUTPUT_ARCH(powerpc:common) | ||
26 | ENTRY(_start) | ||
27 | -SEARCH_DIR("/usr/powerpc-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); | ||
28 | +/*SEARCH_DIR("/usr/powerpc-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");*/ | ||
29 | INPUT(-lhugetlbfs); | ||
30 | PHDRS | ||
31 | { | ||
32 | diff --git a/ldscripts/elf32ppclinux.xBDT b/ldscripts/elf32ppclinux.xBDT | ||
33 | index 497882b..823475e 100644 | ||
34 | --- a/ldscripts/elf32ppclinux.xBDT | ||
35 | +++ b/ldscripts/elf32ppclinux.xBDT | ||
36 | @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc", | ||
37 | "elf32-powerpc") | ||
38 | OUTPUT_ARCH(powerpc:common) | ||
39 | ENTRY(_start) | ||
40 | -SEARCH_DIR("/usr/powerpc-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); | ||
41 | +/*SEARCH_DIR("/usr/powerpc-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");*/ | ||
42 | INPUT(-lhugetlbfs); | ||
43 | PHDRS | ||
44 | { | ||
45 | diff --git a/ldscripts/elf64ppc.xB b/ldscripts/elf64ppc.xB | ||
46 | index 1a9c1ab..8cc557d 100644 | ||
47 | --- a/ldscripts/elf64ppc.xB | ||
48 | +++ b/ldscripts/elf64ppc.xB | ||
49 | @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf64-powerpc", "elf64-powerpc", | ||
50 | "elf64-powerpc") | ||
51 | OUTPUT_ARCH(powerpc:common64) | ||
52 | ENTRY(_start) | ||
53 | -SEARCH_DIR("/usr/powerpc64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/powerpc64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); | ||
54 | +/*SEARCH_DIR("/usr/powerpc64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/powerpc64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");*/ | ||
55 | INPUT(-lhugetlbfs); | ||
56 | PHDRS | ||
57 | { | ||
58 | diff --git a/ldscripts/elf64ppc.xBDT b/ldscripts/elf64ppc.xBDT | ||
59 | index 5477294..53e0749 100644 | ||
60 | --- a/ldscripts/elf64ppc.xBDT | ||
61 | +++ b/ldscripts/elf64ppc.xBDT | ||
62 | @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf64-powerpc", "elf64-powerpc", | ||
63 | "elf64-powerpc") | ||
64 | OUTPUT_ARCH(powerpc:common64) | ||
65 | ENTRY(_start) | ||
66 | -SEARCH_DIR("/usr/powerpc64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/powerpc64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); | ||
67 | +/*SEARCH_DIR("/usr/powerpc64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/powerpc64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");*/ | ||
68 | INPUT( -lhugetlbfs ); | ||
69 | PHDRS | ||
70 | { | ||
71 | diff --git a/ldscripts/elf_x86_64.xB b/ldscripts/elf_x86_64.xB | ||
72 | index ed21a2c..ba50e9f 100644 | ||
73 | --- a/ldscripts/elf_x86_64.xB | ||
74 | +++ b/ldscripts/elf_x86_64.xB | ||
75 | @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", | ||
76 | "elf64-x86-64") | ||
77 | OUTPUT_ARCH(i386:x86-64) | ||
78 | ENTRY(_start) | ||
79 | -SEARCH_DIR("/usr/x86_64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/x86_64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); | ||
80 | +/*SEARCH_DIR("/usr/x86_64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/x86_64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");*/ | ||
81 | INPUT(-lhugetlbfs); | ||
82 | /* Do we need any of these for elf? | ||
83 | __DYNAMIC = 0; */ | ||
84 | diff --git a/ldscripts/elf_x86_64.xBDT b/ldscripts/elf_x86_64.xBDT | ||
85 | index 1855202..c62d245 100644 | ||
86 | --- a/ldscripts/elf_x86_64.xBDT | ||
87 | +++ b/ldscripts/elf_x86_64.xBDT | ||
88 | @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", | ||
89 | "elf64-x86-64") | ||
90 | OUTPUT_ARCH(i386:x86-64) | ||
91 | ENTRY(_start) | ||
92 | -SEARCH_DIR("/usr/x86_64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/x86_64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib"); | ||
93 | +/*SEARCH_DIR("/usr/x86_64-linux-gnu/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/x86_64-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");*/ | ||
94 | INPUT(-lhugetlbfs); | ||
95 | /* Do we need any of these for elf? | ||
96 | __DYNAMIC = 0; */ | ||
97 | -- | ||
98 | 1.7.9.7 | ||
99 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch new file mode 100644 index 000000000..07a99719b --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | From 355c014573de7f95202cc7c819f81f0f230e4a1a Mon Sep 17 00:00:00 2001 | ||
2 | From: Ting Liu <b28495@freescale.com> | ||
3 | Date: Mon, 18 Jun 2012 16:37:05 +0800 | ||
4 | Subject: [PATCH] skip checking LIB32 and LIB64 if they point to the same place | ||
5 | |||
6 | Upstream-Status: Inappropriate [oe-core specific] | ||
7 | Signed-off-by: Ting Liu <b28495@freescale.com> | ||
8 | --- | ||
9 | |||
10 | diff --git a/Makefile b/Makefile | ||
11 | index 91502e1..bfb3414 100644 | ||
12 | --- a/Makefile | ||
13 | +++ b/Makefile | ||
14 | @@ -167,7 +167,6 @@ REALLIB32 = $(realpath $(PREFIX)/$(LIB32)) | ||
15 | REALLIB64 = $(realpath $(PREFIX)/$(LIB64)) | ||
16 | ifneq ($(realpath $(PREFIX)),) | ||
17 | ifeq ($(REALLIB32),$(REALLIB64)) | ||
18 | -$(error LIB32 ($(PREFIX)/$(LIB32) to $(REALLIB32)) and LIB64 ($(PREFIX)/$(LIB64) to $(REALLIB64)) are resolving to the same place. Manually specify LIB32 and LIB64. e.g. make PREFIX=$(PREFIX) LIB32=lib32 LIB64=lib64) | ||
19 | endif | ||
20 | endif | ||
21 | |||
22 | -- | ||
23 | 1.9.2 | ||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/tests-Makefile-install-static-4G-edge-testcases.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/tests-Makefile-install-static-4G-edge-testcases.patch new file mode 100644 index 000000000..249f6e1e2 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/tests-Makefile-install-static-4G-edge-testcases.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | Upstream-Status: Submitted | ||
2 | |||
3 | TESTS_64 is empty, install will fail due to missing file operand | ||
4 | |||
5 | Signed-off-by: Ting Liu <b28495@freescale.com> | ||
6 | |||
7 | --- a/tests/Makefileold 2013-10-12 02:32:55.262391998 -0500 | ||
8 | +++ b/tests/Makefile 2013-10-12 02:33:45.929394722 -0500 | ||
9 | @@ -292,7 +292,7 @@ | ||
10 | $(INSTALL) -m 755 wrapper-utils.sh $(DESTDIR)$(INST_TESTSDIR64)/obj64 | ||
11 | $(INSTALL) -m 755 $(HELPERS:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64 | ||
12 | $(INSTALL) -m 755 $(HELPER_LIBS:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64 | ||
13 | - $(INSTALL) -m 755 $(TESTS_64:%=obj64/%) $(DESTDIR)$(INST_TESTSDIR64)/obj64 | ||
14 | + $(INSTALL) -m 755 $(TESTS_64_STATIC:%=obj64/%_static) $(DESTDIR)$(INST_TESTSDIR64)/obj64 | ||
15 | $(INSTALL) -m 755 run_tests.py $(DESTDIR)$(INST_TESTSDIR64) | ||
16 | |||
17 | install: $(OBJDIRS:%=%/install) | ||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb new file mode 100644 index 000000000..4ce6a1901 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb | |||
@@ -0,0 +1,67 @@ | |||
1 | SUMMARY = "A library which provides easy access to huge pages of memory" | ||
2 | LICENSE = "LGPLv2.1" | ||
3 | LIC_FILES_CHKSUM = "file://LGPL-2.1;md5=2d5025d4aa3495befef8f17206a5b0a1" | ||
4 | |||
5 | DEPENDS = "sysfsutils perl" | ||
6 | RDEPENDS_${PN} += "bash perl python python-io python-lang python-subprocess python-resource" | ||
7 | RDEPENDS_${PN}-tests += "bash" | ||
8 | |||
9 | PV = "2.18" | ||
10 | PE = "1" | ||
11 | |||
12 | SRCREV = "ea3f6b273f535aab38cefae30030774457bbbfe6" | ||
13 | SRC_URI = "git://git.code.sf.net/p/libhugetlbfs/code \ | ||
14 | file://skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch \ | ||
15 | file://libhugetlbfs-avoid-search-host-library-path-for-cros.patch \ | ||
16 | file://tests-Makefile-install-static-4G-edge-testcases.patch \ | ||
17 | file://0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch \ | ||
18 | file://0001-aarch64-fix-cross-compilation.patch \ | ||
19 | file://0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch \ | ||
20 | file://0001-replace-lib-lib64-hardcoded-values-by-LIBDIR32-LIBDI.patch \ | ||
21 | file://0001-Extend-arm32-support-to-include-BE-variants.patch \ | ||
22 | file://0001-Makefile-Recognize-all-ix86-arches.patch \ | ||
23 | " | ||
24 | |||
25 | S = "${WORKDIR}/git" | ||
26 | |||
27 | COMPATIBLE_HOST = "(x86_64|powerpc|powerpc64|aarch64|arm).*-linux*" | ||
28 | |||
29 | LIBARGS = "LIB32=${baselib} LIB64=${baselib}" | ||
30 | LIBHUGETLBFS_ARCH = "${TARGET_ARCH}" | ||
31 | LIBHUGETLBFS_ARCH_powerpc = "ppc" | ||
32 | LIBHUGETLBFS_ARCH_powerpc64 = "ppc64" | ||
33 | EXTRA_OEMAKE = "'ARCH=${LIBHUGETLBFS_ARCH}' 'OPT=${CFLAGS}' 'CC=${CC}' ${LIBARGS} BUILDTYPE=NATIVEONLY V=2" | ||
34 | PARALLEL_MAKE = "" | ||
35 | CFLAGS += "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -g0" | ||
36 | |||
37 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
38 | |||
39 | #The CUSTOM_LDSCRIPTS doesn't work with the gold linker | ||
40 | do_configure() { | ||
41 | if [ "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then | ||
42 | sed -i 's/CUSTOM_LDSCRIPTS = yes/CUSTOM_LDSCRIPTS = no/' Makefile | ||
43 | fi | ||
44 | |||
45 | # fixup perl module directory hardcoded to perl5 | ||
46 | sed -i 's/perl5/perl/g' Makefile | ||
47 | } | ||
48 | |||
49 | do_install() { | ||
50 | oe_runmake PREFIX=${prefix} DESTDIR=${D} \ | ||
51 | INST_TESTSDIR32=${libdir}/libhugetlbfs/tests \ | ||
52 | INST_TESTSDIR64=${libdir}/libhugetlbfs/tests \ | ||
53 | install-tests | ||
54 | } | ||
55 | |||
56 | |||
57 | PACKAGES =+ "${PN}-perl ${PN}-tests " | ||
58 | FILES_${PN} += "${libdir}/*.so" | ||
59 | FILES_${PN}-dev = "${includedir}" | ||
60 | FILES_${PN}-dbg += "${libdir}/libhugetlbfs/tests/obj32/.debug ${libdir}/libhugetlbfs/tests/obj64/.debug" | ||
61 | FILES_${PN}-perl = "${libdir}/perl" | ||
62 | FILES_${PN}-tests += "${libdir}/libhugetlbfs/tests" | ||
63 | |||
64 | INSANE_SKIP_${PN} = "dev-so" | ||
65 | |||
66 | INHIBIT_PACKAGE_STRIP = "1" | ||
67 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | ||
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/fix-lmbench-memory-check-failure.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/fix-lmbench-memory-check-failure.patch new file mode 100644 index 000000000..549a114d1 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/fix-lmbench-memory-check-failure.patch | |||
@@ -0,0 +1,206 @@ | |||
1 | lmbench: Can't proceed on some targets | ||
2 | |||
3 | lmbench can't proceed on some targets. The memory check fails because the | ||
4 | memory latency of each page is longer then 10us, which is a time limit set | ||
5 | in the original memsize.c. | ||
6 | |||
7 | The memory latency is very different on different targets due to the | ||
8 | hardware and current system load. The targets with slower memory | ||
9 | chips or heavy system load need much longer time to read or write | ||
10 | the memory. | ||
11 | |||
12 | This fix changes the fixed time limit of 10us to a specific value calculated | ||
13 | from the runtime target. | ||
14 | |||
15 | Also set an upper limit of memory size used for lmbench testing. The memory | ||
16 | check sometimes fails if the target has a large amount of memory, for | ||
17 | example more than 4G. | ||
18 | |||
19 | Signed-off-by: Qingming Su <qingming.su@windriver.com> | ||
20 | Signed-off-by: Fupan Li <fupan.li@windriver.com> | ||
21 | |||
22 | Add and reword above comments | ||
23 | |||
24 | Upstream-status: inappropriate [ configuration ] | ||
25 | |||
26 | Signed-off-by: Mark Hatle <mark.hatle@windriver.com> | ||
27 | |||
28 | diff --git a/scripts/config-run b/scripts/config-run | ||
29 | index e1f7b6d..31b9256 100755 | ||
30 | --- a/scripts/config-run | ||
31 | +++ b/scripts/config-run | ||
32 | @@ -214,6 +214,12 @@ The bigger the range, the more accurate the results, but larger sizes | ||
33 | take somewhat longer to run the benchmark. | ||
34 | |||
35 | EOF | ||
36 | + | ||
37 | +# By default, use 512M memory as the upper limit for lmbench test | ||
38 | +if [ $MB -gt 512 ];then | ||
39 | +MB=512 | ||
40 | +fi | ||
41 | + | ||
42 | echo $ECHON "MB [default $MB]: $ECHOC" | ||
43 | #read TMP | ||
44 | TMP="" | ||
45 | @@ -718,10 +724,10 @@ case $MAIL in | ||
46 | ;; | ||
47 | esac | ||
48 | |||
49 | -INFO=`../scripts/info` | ||
50 | +INFO=`../scripts/hostinfo` | ||
51 | if [ $MAIL = yes ] | ||
52 | then if [ ! -f $INFO ] | ||
53 | - then cp ../scripts/info-template $INFO | ||
54 | + then cp ../scripts/hostinfo-template $INFO | ||
55 | chmod +w $INFO | ||
56 | REUSE=no | ||
57 | else | ||
58 | @@ -765,7 +771,7 @@ EOF | ||
59 | then EDITOR=$TMP | ||
60 | fi | ||
61 | if [ X$EDITOR != "none" ] | ||
62 | - then $EDITOR `../scripts/info` | ||
63 | + then $EDITOR `../scripts/hostinfo` | ||
64 | fi | ||
65 | fi | ||
66 | fi | ||
67 | diff --git a/src/Makefile b/src/Makefile | ||
68 | index d1f0dc6..5098998 100644 | ||
69 | --- a/src/Makefile | ||
70 | +++ b/src/Makefile | ||
71 | @@ -49,7 +49,7 @@ TARGET=`../scripts/target` | ||
72 | BINDIR=../bin/$(OS) | ||
73 | CONFIG=../bin/$(OS)/`../scripts/config` | ||
74 | UTILS=../scripts/target ../scripts/os ../scripts/gnu-os ../scripts/compiler \ | ||
75 | - ../scripts/info ../scripts/info-template ../scripts/version \ | ||
76 | + ../scripts/hostinfo ../scripts/hostinfo-template ../scripts/version \ | ||
77 | ../scripts/config ../scripts/config-run ../scripts/results \ | ||
78 | ../scripts/lmbench ../scripts/make ../scripts/build | ||
79 | INSTALL=cp | ||
80 | @@ -240,7 +240,7 @@ $O/getopt.o : getopt.c $(INCS) | ||
81 | $(COMPILE) -c getopt.c -o $O/getopt.o | ||
82 | |||
83 | $(UTILS) : | ||
84 | - -cd ../scripts; make get | ||
85 | + -cd ../scripts; cp info hostinfo; cp info-template hostinfo-template | ||
86 | |||
87 | # Do not remove the next line, $(MAKE) depend needs it | ||
88 | # MAKEDEPEND follows | ||
89 | diff --git a/src/memsize.c b/src/memsize.c | ||
90 | index eb25a09..cf9fe0c 100644 | ||
91 | --- a/src/memsize.c | ||
92 | +++ b/src/memsize.c | ||
93 | @@ -14,9 +14,12 @@ char *id = "$Id$\n"; | ||
94 | |||
95 | #define CHK(x) if ((x) == -1) { perror("x"); exit(1); } | ||
96 | |||
97 | -#ifndef TOO_LONG | ||
98 | -#define TOO_LONG 10 /* usecs */ | ||
99 | -#endif | ||
100 | +//#ifndef TOO_LONG | ||
101 | +//#define TOO_LONG 10 /* usecs */ | ||
102 | +//#endif | ||
103 | + | ||
104 | +#define MEMORY_SIZE_1MB (1024 * 1024) | ||
105 | +#define MEMORY_SIZE_8MB (8 * 1024 * 1024) | ||
106 | |||
107 | int alarm_triggered = 0; | ||
108 | |||
109 | @@ -35,10 +38,10 @@ main(int ac, char **av) | ||
110 | size_t delta; | ||
111 | |||
112 | if (ac == 2) { | ||
113 | - max = size = bytes(av[1]) * 1024 * 1024; | ||
114 | + max = size = bytes(av[1]) * MEMORY_SIZE_1MB; | ||
115 | } | ||
116 | - if (max < 1024 * 1024) { | ||
117 | - max = size = 1024 * 1024 * 1024; | ||
118 | + if (max < MEMORY_SIZE_1MB) { | ||
119 | + max = size = 1024 * MEMORY_SIZE_1MB; | ||
120 | } | ||
121 | /* | ||
122 | * Binary search down and then binary search up | ||
123 | @@ -48,7 +51,7 @@ main(int ac, char **av) | ||
124 | } | ||
125 | /* delta = size / (2 * 1024 * 1024) */ | ||
126 | for (delta = (size >> 21); delta > 0; delta >>= 1) { | ||
127 | - uint64 sz = (uint64)size + (uint64)delta * 1024 * 1024; | ||
128 | + uint64 sz = (uint64)size + (uint64)delta * MEMORY_SIZE_1MB; | ||
129 | size_t check = sz; | ||
130 | if (max < sz) continue; | ||
131 | if (check < sz || !test_malloc(sz)) break; | ||
132 | @@ -66,41 +69,58 @@ timeit(char *where, size_t size) | ||
133 | { | ||
134 | int sum = 0; | ||
135 | size_t n; | ||
136 | - size_t s_prev; | ||
137 | + size_t s_prev = MEMORY_SIZE_8MB; | ||
138 | size_t range; | ||
139 | - size_t incr = 1024 * 1024; | ||
140 | + size_t incr = MEMORY_SIZE_1MB; | ||
141 | size_t pagesize = getpagesize(); | ||
142 | - unsigned long long s; | ||
143 | - | ||
144 | - if (size < 1024*1024 - 16*1024) { | ||
145 | - fprintf(stderr, "Bad size\n"); | ||
146 | - return; | ||
147 | - } | ||
148 | + size_t time_each_page = 0; | ||
149 | + size_t too_long = 0; | ||
150 | + unsigned long long s; | ||
151 | + | ||
152 | + if (pagesize < MEMORY_SIZE_1MB) | ||
153 | + range = MEMORY_SIZE_1MB; | ||
154 | + else | ||
155 | + range = MEMORY_SIZE_8MB; | ||
156 | + | ||
157 | + incr = MEMORY_SIZE_1MB; | ||
158 | + | ||
159 | + if (size < range) { | ||
160 | + fprintf(stderr, "Bad size\n"); | ||
161 | + return; | ||
162 | + } | ||
163 | + | ||
164 | + //Touch range of memory, get the average time (usec) of operating each memory page on this system | ||
165 | + start(0); | ||
166 | + touchRange(where, range, pagesize); | ||
167 | + sum = stop(0, 0); | ||
168 | + | ||
169 | + if ((time_each_page = sum * pagesize / range) < 1) | ||
170 | + time_each_page = 1; | ||
171 | + //Set the uper limit of time spending on one page | ||
172 | + too_long = 10 * time_each_page; | ||
173 | |||
174 | - range = 1024 * 1024; | ||
175 | - incr = 1024 * 1024; | ||
176 | - touchRange(where, range, pagesize); | ||
177 | for (range += incr; range <= size; range += incr) { | ||
178 | n = range / pagesize; | ||
179 | - set_alarm(n * TOO_LONG); | ||
180 | + set_alarm(n * too_long); | ||
181 | touchRange(where + range - incr, incr, pagesize); | ||
182 | clear_alarm(); | ||
183 | - set_alarm(n * TOO_LONG); | ||
184 | + set_alarm(n * too_long); | ||
185 | start(0); | ||
186 | touchRange(where, range, pagesize); | ||
187 | sum = stop(0, 0); | ||
188 | clear_alarm(); | ||
189 | - if ((sum / n) > TOO_LONG || alarm_triggered) { | ||
190 | + if ((sum / n) > too_long || alarm_triggered) { | ||
191 | size = range - incr; | ||
192 | + fprintf(stderr, "Error! Memory testing timeout! Touch one page of memory needs more than %d (usecs)\n ", too_long); | ||
193 | break; | ||
194 | } | ||
195 | - for (s = 8 * 1024 * 1024; s <= range; s_prev = s, s *= 2) | ||
196 | + for (s = s_prev; s <= range; s_prev = s, s *= 2) | ||
197 | if (s < s_prev) break; | ||
198 | incr = s / 8; | ||
199 | if (range < size && size < range + incr) { | ||
200 | incr = size - range; | ||
201 | } | ||
202 | - fprintf(stderr, "%dMB OK\r", (int)(range/(1024*1024))); | ||
203 | + fprintf(stderr, "%dMB OK\r", (int)(range/MEMORY_SIZE_1MB)); | ||
204 | } | ||
205 | fprintf(stderr, "\n"); | ||
206 | printf("%d\n", (int)(size>>20)); | ||
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/lmbench_result_html_report.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/lmbench_result_html_report.patch new file mode 100644 index 000000000..cda2f0c6d --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/lmbench_result_html_report.patch | |||
@@ -0,0 +1,61 @@ | |||
1 | lmbench: Fix "make html" graph failure | ||
2 | |||
3 | The html-list perl script cannot parse the first line of the result | ||
4 | files about the lmbench version. | ||
5 | |||
6 | Additional fixes are to make the result's html pages easier to understand. | ||
7 | |||
8 | Signed-off-by: Lin Yu <lin.yu@windriver.com> | ||
9 | Signed-off-by: Fupan Li <fupan.li@windriver.com> | ||
10 | |||
11 | Reworded patch description. | ||
12 | |||
13 | Upstream-status: inappropriate [ configuration ] | ||
14 | |||
15 | Signed-off-by: Mark Hatle <mark.hatle@windriver.com> | ||
16 | |||
17 | diff --git a/results/Makefile b/results/Makefile | ||
18 | index 0935376..1ef9a15 100644 | ||
19 | --- a/results/Makefile | ||
20 | +++ b/results/Makefile | ||
21 | @@ -186,6 +186,7 @@ paper: | ||
22 | # scratch makes you want a Ghz machine. | ||
23 | html: dirs | ||
24 | -make clean | ||
25 | + make ps | ||
26 | #$(SCRIPTS)bghtml $(BG) | ||
27 | $(SCRIPTS)html-list $(LIST) | ||
28 | $(MK) LIST="$(LIST)" summary > HTML/summary.out 2> HTML/summary.errs | ||
29 | diff --git a/scripts/html-list b/scripts/html-list | ||
30 | index 9850461..6383115 100755 | ||
31 | --- a/scripts/html-list | ||
32 | +++ b/scripts/html-list | ||
33 | @@ -14,7 +14,7 @@ open(H, ">HTML/specific.html"); | ||
34 | print H <<EOF; | ||
35 | <title>LMBENCH System Results</title> | ||
36 | <h1>LMBENCH System Results</h1> | ||
37 | -<h2><a href=summary>Summary of results</a></h2> | ||
38 | +<h2><a href=summary.out>Summary of results</a></h2> | ||
39 | <hr> | ||
40 | EOF | ||
41 | |||
42 | @@ -47,7 +47,7 @@ foreach $os (@os) { | ||
43 | open(F, $file); | ||
44 | $_ = <F>; | ||
45 | close(F); | ||
46 | - next unless /lmbench1.[01]/; | ||
47 | + next unless /lmbench[0-9]+.[01]/; | ||
48 | chop; | ||
49 | $title = $_; | ||
50 | #s/.lmbench1.? results for //; | ||
51 | @@ -103,10 +103,7 @@ EOF | ||
52 | if $i < $#os; | ||
53 | print S<<EOF; | ||
54 | <h4>$title</h4> | ||
55 | -<a href=../$doc{$what}>Information on this benchmark</a> (Not up to date) | ||
56 | <p><IMG SRC="${what}${scale}$N.gif">\n<p> | ||
57 | -<a href=../lmbench.html> | ||
58 | -<img align=middle src="../gifs/arrows/b_arrow.gif">LMBENCH table of contents</a> | ||
59 | <a href=specific.html> | ||
60 | <img align=middle src=\"../gifs/graph.gif\">System results table of contents</a> | ||
61 | <p> | ||
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 000000000..41a3b3205 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/obey-ranlib.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | In some cases the host may have too old of a ranlib to work. Since it's | ||
2 | not exactly a great idea to not be using the cross ranlib anyhow, fix the | ||
3 | Makefile so we can override ranlib and then override it | ||
4 | |||
5 | Upstream-Status: Inappropriate [build system specific change] | ||
6 | --- | ||
7 | src/Makefile | 3 ++- | ||
8 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
9 | |||
10 | Index: lmbench-3.0-a9/src/Makefile | ||
11 | =================================================================== | ||
12 | --- lmbench-3.0-a9.orig/src/Makefile | ||
13 | +++ lmbench-3.0-a9/src/Makefile | ||
14 | @@ -38,6 +38,7 @@ CC=`../scripts/compiler` | ||
15 | MAKE=`../scripts/make` | ||
16 | AR=ar | ||
17 | ARCREATE=cr | ||
18 | +RANLIB=ranlib | ||
19 | |||
20 | # base of installation location | ||
21 | BASE=/usr/local | ||
22 | @@ -217,7 +218,7 @@ $O/lmbench : ../scripts/lmbench version. | ||
23 | $O/lmbench.a: $(LIBOBJS) | ||
24 | /bin/rm -f $O/lmbench.a | ||
25 | $(AR) $(ARCREATE) $O/lmbench.a $(LIBOBJS) | ||
26 | - -ranlib $O/lmbench.a | ||
27 | + -$(RANLIB) $O/lmbench.a | ||
28 | |||
29 | $O/lib_timing.o : lib_timing.c $(INCS) | ||
30 | $(COMPILE) -c lib_timing.c -o $O/lib_timing.o | ||
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-config-script.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-config-script.patch new file mode 100644 index 000000000..b46e09ad1 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-config-script.patch | |||
@@ -0,0 +1,12 @@ | |||
1 | Upstream-Status: Pending | ||
2 | Index: lmbench-3.0-a9/scripts/config | ||
3 | =================================================================== | ||
4 | --- lmbench-3.0-a9/scripts/config 2000-01-31 18:29:31.000000000 -0600 | ||
5 | +++ lmbench-3.0-a9/scripts/config 2013-03-01 00:19:41.032984315 -0600 | ||
6 | @@ -3,5 +3,5 @@ | ||
7 | UNAME=`uname -n 2>/dev/null` | ||
8 | if [ X$UNAME = X ] | ||
9 | then echo CONFIG | ||
10 | -else echo CONFIG.$UNAME | ||
11 | +else echo ../scripts/CONFIG.$UNAME | ||
12 | fi | ||
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 000000000..894f146d4 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/update-results-script.patch | |||
@@ -0,0 +1,160 @@ | |||
1 | Now that we have our binaries in /usr/bin rather than the normal | ||
2 | lmbench hierarchy we need to update the scripts as well to behave well here. | ||
3 | |||
4 | Upstream-Status: Inappropriate [This is related to the OE-specific behavior | ||
5 | of installing into /usr/bin, etc, rather than dumping everything into | ||
6 | /usr/share/lmbench or similar] | ||
7 | |||
8 | Index: lmbench-3.0-a9/scripts/results | ||
9 | =================================================================== | ||
10 | --- lmbench-3.0-a9.orig/scripts/results | ||
11 | +++ lmbench-3.0-a9/scripts/results | ||
12 | @@ -8,11 +8,11 @@ RESULTS=results/$OS | ||
13 | BASE=../$RESULTS/`uname -n` | ||
14 | EXT=0 | ||
15 | |||
16 | -if [ ! -f "../bin/$OS/$CONFIG" ] | ||
17 | +if [ ! -f "$CONFIG" ] | ||
18 | then echo "No config file?" | ||
19 | exit 1 | ||
20 | fi | ||
21 | -. ../bin/$OS/$CONFIG | ||
22 | +. $CONFIG | ||
23 | |||
24 | if [ ! -d ../$RESULTS ] | ||
25 | then mkdir -p ../$RESULTS | ||
26 | @@ -23,11 +23,9 @@ do EXT=`expr $EXT + 1` | ||
27 | RESULTS=$BASE.$EXT | ||
28 | done | ||
29 | |||
30 | -cd ../bin/$OS | ||
31 | -PATH=.:${PATH}; export PATH | ||
32 | export SYNC_MAX | ||
33 | export OUTPUT | ||
34 | -lmbench $CONFIG 2>../${RESULTS} | ||
35 | +lmbench $CONFIG 2>${RESULTS} | ||
36 | |||
37 | if [ X$MAIL = Xyes ] | ||
38 | then echo Mailing results | ||
39 | Index: lmbench-3.0-a9/scripts/config-run | ||
40 | =================================================================== | ||
41 | --- lmbench-3.0-a9.orig/scripts/config-run | ||
42 | +++ lmbench-3.0-a9/scripts/config-run | ||
43 | @@ -132,20 +132,20 @@ export LMBENCH_SCHED | ||
44 | ############################################################################ | ||
45 | echo $L; echo ""; | ||
46 | echo "Hang on, we are calculating your timing granularity." | ||
47 | -../bin/$OS/msleep 250 | ||
48 | -ENOUGH=`../bin/$OS/enough` | ||
49 | +msleep 250 | ||
50 | +ENOUGH=`enough` | ||
51 | export ENOUGH | ||
52 | echo "OK, it looks like you can time stuff down to $ENOUGH usec resolution." | ||
53 | echo "" | ||
54 | echo "Hang on, we are calculating your timing overhead." | ||
55 | -../bin/$OS/msleep 250 | ||
56 | -TIMING_O=`../bin/$OS/timing_o` | ||
57 | +msleep 250 | ||
58 | +TIMING_O=`timing_o` | ||
59 | export TIMING_O | ||
60 | echo "OK, it looks like your gettimeofday() costs $TIMING_O usecs." | ||
61 | echo "" | ||
62 | echo "Hang on, we are calculating your loop overhead." | ||
63 | -../bin/$OS/msleep 250 | ||
64 | -LOOP_O=`../bin/$OS/loop_o` | ||
65 | +msleep 250 | ||
66 | +LOOP_O=`loop_o` | ||
67 | export LOOP_O | ||
68 | echo "OK, it looks like your benchmark loop costs $LOOP_O usecs." | ||
69 | echo "" | ||
70 | @@ -177,7 +177,7 @@ then | ||
71 | fi | ||
72 | if [ X$MB = X ] | ||
73 | then $ECHON "Probing system for available memory: $ECHOC" | ||
74 | - MB=`../bin/$OS/memsize 4096` | ||
75 | + MB=`memsize 4096` | ||
76 | fi | ||
77 | TOTAL_MEM=$MB | ||
78 | MB=`echo \( $MB \* 7 \) / 10 | bc 2>/dev/null` | ||
79 | @@ -205,9 +205,9 @@ fi | ||
80 | # Certain machines tend to barf when you try and bcopy 8MB. | ||
81 | # Figure out how much we can use. | ||
82 | echo "Checking to see if you have $MB MB; please wait for a moment..." | ||
83 | -MB=`../bin/$OS/memsize $MB` | ||
84 | -MB=`../bin/$OS/memsize $MB` | ||
85 | -MB=`../bin/$OS/memsize $MB` | ||
86 | +MB=`memsize $MB` | ||
87 | +MB=`memsize $MB` | ||
88 | +MB=`memsize $MB` | ||
89 | if [ `expr $SYNC_MAX \* $MB` -gt `expr $TOTAL_MEM` ] | ||
90 | then | ||
91 | MB=`expr $TOTAL_MEM / $SYNC_MAX` | ||
92 | @@ -223,8 +223,8 @@ then echo Warning: you have only ${MB}MB | ||
93 | fi | ||
94 | |||
95 | echo "Hang on, we are calculating your cache line size." | ||
96 | -../bin/$OS/msleep 250 | ||
97 | -LINE_SIZE=`../bin/$OS/lm_line -M ${MB}M` | ||
98 | +msleep 250 | ||
99 | +LINE_SIZE=`lm_line -M ${MB}M` | ||
100 | export LINE_SIZE | ||
101 | echo "OK, it looks like your cache line is $LINE_SIZE bytes." | ||
102 | echo "" | ||
103 | @@ -479,7 +479,7 @@ EOF | ||
104 | then | ||
105 | for i in $disks | ||
106 | do if [ -r $i ] | ||
107 | - then ../bin/$OS/flushdisk $i | ||
108 | + then flushdisk $i | ||
109 | if [ $? -eq 1 ] | ||
110 | then echo "Must be root to run disk benchmarks." | ||
111 | echo "Root is needed to flush the buffer cache" | ||
112 | @@ -584,7 +584,7 @@ fi | ||
113 | echo $L | ||
114 | echo "" | ||
115 | echo "Calculating mhz, please wait for a moment..." | ||
116 | -MHZ=`../bin/$OS/mhz` | ||
117 | +MHZ=`mhz` | ||
118 | cat<<EOF | ||
119 | I think your CPU mhz is | ||
120 | |||
121 | @@ -689,9 +689,9 @@ esac | ||
122 | |||
123 | INFO=`../scripts/info` | ||
124 | if [ $MAIL = yes ] | ||
125 | -then if [ ! -f ../bin/$OS/$INFO ] | ||
126 | - then cp ../scripts/info-template ../bin/$OS/$INFO | ||
127 | - chmod +w ../bin/$OS/$INFO | ||
128 | +then if [ ! -f $INFO ] | ||
129 | + then cp ../scripts/info-template $INFO | ||
130 | + chmod +w $INFO | ||
131 | REUSE=no | ||
132 | else | ||
133 | REUSE=view | ||
134 | @@ -705,7 +705,7 @@ then if [ ! -f ../bin/$OS/$INFO ] | ||
135 | ;; | ||
136 | [Vv]*) REUSE=view | ||
137 | echo $L | ||
138 | - more ../bin/$OS/$INFO | ||
139 | + more $INFO | ||
140 | echo $L | ||
141 | ;; | ||
142 | *) REUSE=yes | ||
143 | @@ -733,7 +733,7 @@ EOF | ||
144 | then EDITOR=$TMP | ||
145 | fi | ||
146 | if [ X$EDITOR != "none" ] | ||
147 | - then $EDITOR ../bin/$OS/`../scripts/info` | ||
148 | + then $EDITOR `../scripts/info` | ||
149 | fi | ||
150 | fi | ||
151 | fi | ||
152 | @@ -750,7 +750,7 @@ EOF | ||
153 | |||
154 | VERSION=`../scripts/version` | ||
155 | |||
156 | -C=../bin/$OS/`../scripts/config` | ||
157 | +C=`../scripts/config` | ||
158 | echo DISKS=\"$DISKS\" > $C | ||
159 | echo DISK_DESC=\"$DISK_DESC\" >> $C | ||
160 | echo OUTPUT=$OUTPUT >> $C | ||
diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/use-base_libdir-instead-of-hardcoded-lib.patch b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/use-base_libdir-instead-of-hardcoded-lib.patch new file mode 100644 index 000000000..3351ce887 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/use-base_libdir-instead-of-hardcoded-lib.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | From 0d09e31970616e09beb7f238c2b59bfc541148fb Mon Sep 17 00:00:00 2001 | ||
2 | From: Ting Liu <b28495@freescale.com> | ||
3 | Date: Fri, 22 Nov 2013 15:20:08 +0800 | ||
4 | Subject: [PATCH] use base_libdir instead of hardcoded /lib | ||
5 | |||
6 | Upsteam Status: Inappropriate [configuration] | ||
7 | |||
8 | Signed-off-by: Ting Liu <b28495@freescale.com> | ||
9 | --- | ||
10 | src/Makefile | 4 ++-- | ||
11 | 1 files changed, 2 insertions(+), 2 deletions(-) | ||
12 | |||
13 | diff --git a/src/Makefile b/src/Makefile | ||
14 | index c7a8c79..c7e4e3c 100644 | ||
15 | --- a/src/Makefile | ||
16 | +++ b/src/Makefile | ||
17 | @@ -143,10 +143,10 @@ install-target: | ||
18 | if [ ! -d $(BASE) ]; then mkdir $(BASE); fi | ||
19 | if [ ! -d $(BASE)/bin ]; then mkdir $(BASE)/bin; fi | ||
20 | if [ ! -d $(BASE)/include ]; then mkdir $(BASE)/include; fi | ||
21 | - if [ ! -d $(BASE)/lib ]; then mkdir $(BASE)/lib; fi | ||
22 | + if [ ! -d $(BASE)$(base_libdir) ]; then mkdir $(BASE)$(base_libdir); fi | ||
23 | cp $(EXES) $(BASE)/bin | ||
24 | cp $(INCS) $(BASE)/include | ||
25 | - cp $O/lmbench.a $(BASE)/lib/libmbench.a | ||
26 | + cp $O/lmbench.a $(BASE)$(base_libdir) | ||
27 | cd ../doc; env MAKEFLAGS="$(MAKEFLAGS)" make CC="${CC}" OS="${OS}" BASE="$(BASE)" install | ||
28 | |||
29 | |||
30 | -- | ||
31 | 1.7.5.4 | ||
32 | |||
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 000000000..e904c75e4 --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/lmbench-run | |||
@@ -0,0 +1,23 @@ | |||
1 | #!/bin/sh | ||
2 | # Wrapper script for lmbench written for the | ||
3 | # Debian GNU/Linux distribution by | ||
4 | # Javier Fernandez-Sanguino. | ||
5 | # Distributed under the GPL | ||
6 | SHAREDIR=/usr/share/lmbench/ | ||
7 | BINDIR=/usr/lib/lmbench/ | ||
8 | SCRIPTSDIR=$SHAREDIR/scripts | ||
9 | RESULTSDIR=$SHAREDIR/results | ||
10 | CONFIG=/var/lib/lmbench/config/`$SCRIPTSDIR/config` | ||
11 | runuid=`id -u` | ||
12 | |||
13 | [ $runuid -gt 0 ] && { | ||
14 | echo "You must run this as the root user" | ||
15 | exit 0 | ||
16 | } | ||
17 | cd $SCRIPTSDIR | ||
18 | [ ! -f $CONFIG ] && ./config-run | ||
19 | ./results | ||
20 | |||
21 | echo "Benchmark run finished...." | ||
22 | echo "Remember you can find the results of the benchmark " | ||
23 | 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 000000000..9a405213a --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench/rename-line-binary.patch | |||
@@ -0,0 +1,19 @@ | |||
1 | Both lmbench and util-linux-ng packages provide own /usr/bin/line binaries. | ||
2 | Even though the binaries name is the same, their functionality is different. | ||
3 | This patch renames lmbench's line binary as lm_line to avoid conflicts with | ||
4 | util-linux-ng. script/config-run is also modified (patch) to call lm_line | ||
5 | instead of line. | ||
6 | |||
7 | Upstream-Status: Inappropriate [build system specific change] | ||
8 | |||
9 | --- patches/scripts/config-run 2006-11-26 15:11:04.000000000 -0500 | ||
10 | +++ patches/scripts/config-run 2011-04-01 09:35:50.000000000 -0400 | ||
11 | @@ -224,7 +224,7 @@ fi | ||
12 | |||
13 | echo "Hang on, we are calculating your cache line size." | ||
14 | ../bin/$OS/msleep 250 | ||
15 | -LINE_SIZE=`../bin/$OS/line -M ${MB}M` | ||
16 | +LINE_SIZE=`../bin/$OS/lm_line -M ${MB}M` | ||
17 | export LINE_SIZE | ||
18 | echo "OK, it looks like your cache line is $LINE_SIZE bytes." | ||
19 | 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 000000000..24cd0b0ea --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb | |||
@@ -0,0 +1,78 @@ | |||
1 | SUMMARY = "Tools for performance analysis" | ||
2 | HOMEPAGE = "http://lmbench.sourceforge.net/" | ||
3 | SECTION = "console/utils" | ||
4 | LICENSE = "GPLv2 & GPL-2.0-with-lmbench-restriction" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \ | ||
6 | file://COPYING-2;md5=8e9aee2ccc75d61d107e43794a25cdf9" | ||
7 | |||
8 | inherit autotools-brokensep | ||
9 | |||
10 | PR = "r2" | ||
11 | |||
12 | SRC_URI = "${SOURCEFORGE_MIRROR}/lmbench/lmbench-${PV}.tgz \ | ||
13 | file://lmbench-run \ | ||
14 | file://rename-line-binary.patch \ | ||
15 | file://update-results-script.patch \ | ||
16 | file://obey-ranlib.patch \ | ||
17 | file://update-config-script.patch \ | ||
18 | file://use-base_libdir-instead-of-hardcoded-lib.patch \ | ||
19 | file://lmbench_result_html_report.patch \ | ||
20 | file://fix-lmbench-memory-check-failure.patch \ | ||
21 | " | ||
22 | SRC_URI[md5sum] = "b3351a3294db66a72e2864a199d37cbf" | ||
23 | SRC_URI[sha256sum] = "cbd5777d15f44eab7666dcac418054c3c09df99826961a397d9acf43d8a2a551" | ||
24 | |||
25 | EXTRA_OEMAKE = 'CC="${CC}" AR="${AR}" RANLIB="${RANLIB}" CFLAGS="${CFLAGS}" \ | ||
26 | LDFLAGS="${LDFLAGS}" LD="${LD}" OS="${TARGET_SYS}" \ | ||
27 | TARGET="${TARGET_OS}" BASE="${prefix}" MANDIR="${mandir}"' | ||
28 | |||
29 | do_configure() { | ||
30 | : | ||
31 | } | ||
32 | |||
33 | do_compile () { | ||
34 | . ${CONFIG_SITE} | ||
35 | if [ X"$ac_cv_uint" = X"yes" ]; then | ||
36 | CFLAGS="${CFLAGS} -DHAVE_uint" | ||
37 | fi | ||
38 | install -d ${S}/bin/${TARGET_SYS} | ||
39 | oe_runmake -C src | ||
40 | } | ||
41 | |||
42 | do_install () { | ||
43 | install -d ${D}${sysconfdir}/default/volatiles \ | ||
44 | ${D}${bindir} ${D}${mandir} ${D}${libdir}/lmbench \ | ||
45 | ${D}${datadir}/lmbench/scripts | ||
46 | |||
47 | echo "d root root 0755 ${localstatedir}/run/${BPN} none" \ | ||
48 | > ${D}${sysconfdir}/default/volatiles/99_lmbench | ||
49 | if ${@base_contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
50 | install -d ${D}${sysconfdir}/tmpfiles.d | ||
51 | echo "d /run/${BPN} - - - -" \ | ||
52 | > ${D}${sysconfdir}/tmpfiles.d/lmbench.conf | ||
53 | fi | ||
54 | |||
55 | oe_runmake BASE="${D}${prefix}" MANDIR="${D}${mandir}" \ | ||
56 | -C src install | ||
57 | mv ${D}${bindir}/line ${D}${bindir}/lm_line | ||
58 | install -m 0755 ${WORKDIR}/lmbench-run ${D}${bindir}/ | ||
59 | sed -i -e 's,^SHAREDIR=.*$,SHAREDIR=${datadir}/${BPN},;' \ | ||
60 | -e 's,^BINDIR=.*$,BINDIR=${libdir}/${BPN},;' \ | ||
61 | -e 's,^CONFIG=.*$,CONFIG=`$SCRIPTSDIR/config`,;' \ | ||
62 | ${D}${bindir}/lmbench-run | ||
63 | install -m 0755 ${S}/scripts/lmbench ${D}${bindir} | ||
64 | install -m 0755 ${S}/scripts/* ${D}${datadir}/lmbench/scripts | ||
65 | } | ||
66 | |||
67 | pkg_postinst_${PN} () { | ||
68 | if [ -z "$D" ]; then | ||
69 | if command -v systemd-tmpfiles >/dev/null; then | ||
70 | systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/lmbench.conf | ||
71 | elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then | ||
72 | ${sysconfdir}/init.d/populate-volatile.sh update | ||
73 | fi | ||
74 | fi | ||
75 | } | ||
76 | |||
77 | RDEPENDS_${PN} = "perl" | ||
78 | FILES_${PN} += "${datadir}/lmbench ${libdir}/lmbench" | ||
diff --git a/meta-oe/recipes-benchmark/memtester/files/Makefile.patch b/meta-oe/recipes-benchmark/memtester/files/Makefile.patch new file mode 100644 index 000000000..971e52ac7 --- /dev/null +++ b/meta-oe/recipes-benchmark/memtester/files/Makefile.patch | |||
@@ -0,0 +1,28 @@ | |||
1 | From 9a950b14b9f7767d83e5faac2e1e8203c500e2c2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Rod Whitby <rod@whitby.id.au> | ||
3 | Date: Tue, 25 Oct 2011 18:43:50 -0500 | ||
4 | Subject: [PATCH] memtester: Added patch to Makefile to change no-longer-supported 'head -1' syntax to 'head -n 1'. | ||
5 | |||
6 | Signed-off-by: Joel A Fernandes <joelagnel@ti.com> | ||
7 | --- | ||
8 | Makefile | 4 ++-- | ||
9 | 1 files changed, 2 insertions(+), 2 deletions(-) | ||
10 | |||
11 | diff --git a/Makefile b/Makefile | ||
12 | index a271bf5..6bccff3 100644 | ||
13 | --- a/Makefile | ||
14 | +++ b/Makefile | ||
15 | @@ -32,8 +32,8 @@ install: all | ||
16 | auto-ccld.sh: \ | ||
17 | conf-cc conf-ld warn-auto.sh | ||
18 | ( cat warn-auto.sh; \ | ||
19 | - echo CC=\'`head -1 conf-cc`\'; \ | ||
20 | - echo LD=\'`head -1 conf-ld`\' \ | ||
21 | + echo CC=\'`head -n 1 conf-cc`\'; \ | ||
22 | + echo LD=\'`head -n 1 conf-ld`\' \ | ||
23 | ) > auto-ccld.sh | ||
24 | |||
25 | compile: \ | ||
26 | -- | ||
27 | 1.7.0.4 | ||
28 | |||
diff --git a/meta-oe/recipes-benchmark/memtester/memtester_4.1.3.bb b/meta-oe/recipes-benchmark/memtester/memtester_4.1.3.bb new file mode 100644 index 000000000..74e704b7b --- /dev/null +++ b/meta-oe/recipes-benchmark/memtester/memtester_4.1.3.bb | |||
@@ -0,0 +1,25 @@ | |||
1 | SUMMARY = "Utility to test for faulty memory subsystem" | ||
2 | HOMEPAGE = "http://pyropus.ca/software/memtester/" | ||
3 | SECTION = "console/utils" | ||
4 | LICENSE = "GPLv2" | ||
5 | |||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" | ||
7 | |||
8 | SRC_URI = "http://pyropus.ca/software/memtester/old-versions/memtester-${PV}.tar.gz" | ||
9 | SRC_URI += "file://Makefile.patch" | ||
10 | |||
11 | SRC_URI[md5sum] = "e562451620cf5343016950462bc0dc38" | ||
12 | SRC_URI[sha256sum] = "ac56f0b6d6d6e58bcf2a3fa7f2c9b29894f5177871f21115a1906c535106acf6" | ||
13 | |||
14 | do_compile () { | ||
15 | echo '${CC} ${CFLAGS} -DPOSIX -c' > conf-cc | ||
16 | echo '${CC} ${LDFLAGS}' > conf-ld | ||
17 | oe_runmake | ||
18 | } | ||
19 | |||
20 | do_install () { | ||
21 | install -d ${D}${bindir} | ||
22 | install -d ${D}${mandir}/man8 | ||
23 | install -m 0755 memtester ${D}${bindir}/ | ||
24 | install -m 0755 memtester.8 ${D}${mandir}/man8/ | ||
25 | } | ||
diff --git a/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/Makefile-add-more-dependencies-to-pointer.h.patch b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/Makefile-add-more-dependencies-to-pointer.h.patch new file mode 100644 index 000000000..abdb4344b --- /dev/null +++ b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/Makefile-add-more-dependencies-to-pointer.h.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | Makefile: add more dependencies to pointer.h | ||
2 | |||
3 | Upstream-Status: Inappropriate [no upstream] | ||
4 | |||
5 | Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> | ||
6 | --- | ||
7 | Makefile | 2 +- | ||
8 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
9 | |||
10 | diff --git a/Makefile b/Makefile | ||
11 | index 915866d..edd9ea2 100644 | ||
12 | --- a/Makefile | ||
13 | +++ b/Makefile | ||
14 | @@ -122,7 +122,7 @@ emfloat.o: emfloat.h emfloat.c nmglobal.h pointer.h Makefile | ||
15 | pointer.h: Makefile | ||
16 | touch pointer.h ; | ||
17 | |||
18 | -misc.o: misc.h misc.c Makefile | ||
19 | +misc.o: misc.h misc.c nmglobal.h pointer.h Makefile | ||
20 | $(CC) $(MACHINE) $(DEFINES) $(CFLAGS)\ | ||
21 | -c misc.c | ||
22 | |||
23 | |||
diff --git a/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/nbench_32bits.patch b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/nbench_32bits.patch new file mode 100644 index 000000000..1b8a4dc08 --- /dev/null +++ b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/nbench_32bits.patch | |||
@@ -0,0 +1,46 @@ | |||
1 | From 81f4043a6787060029ef20eed21cdcf3e50337df Mon Sep 17 00:00:00 2001 | ||
2 | From: Chase Maupin <Chase.Maupin@ti.com> | ||
3 | Date: Tue, 28 Feb 2012 14:58:35 -0600 | ||
4 | Subject: [PATCH] nbench: modify Makefile for 32bit | ||
5 | |||
6 | * Patch taken from OE classic git repository as of commit id | ||
7 | ad42bf9065928b2902d7d9534709d3ccea7ec956 and was added by: | ||
8 | * Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> | ||
9 | * Notes from original patch were: | ||
10 | |||
11 | BYTE Magazine's native benchmarks (also called BYTEmark) designed to | ||
12 | expose the capabilities of a system's CPU, FPU and memory system. | ||
13 | |||
14 | http://www.tux.org/~mayer/linux/ | ||
15 | |||
16 | Recipe from old Atmel overlay. | ||
17 | |||
18 | Upstream-Status: Inappropriate [no upstream] | ||
19 | |||
20 | Signed-off-by: Chase Maupin <chase.maupin@ti.com> | ||
21 | --- | ||
22 | Makefile | 8 ++------ | ||
23 | 1 files changed, 2 insertions(+), 6 deletions(-) | ||
24 | |||
25 | diff --git a/Makefile b/Makefile | ||
26 | index 5045c77..915866d 100644 | ||
27 | --- a/Makefile | ||
28 | +++ b/Makefile | ||
29 | @@ -119,12 +119,8 @@ emfloat.o: emfloat.h emfloat.c nmglobal.h pointer.h Makefile | ||
30 | $(CC) $(MACHINE) $(DEFINES) $(CFLAGS)\ | ||
31 | -c emfloat.c | ||
32 | |||
33 | -pointer.h: pointer Makefile | ||
34 | - $(CC) $(MACHINE) $(DEFINES) $(CFLAGS)\ | ||
35 | - -o pointer pointer.c | ||
36 | - rm -f pointer.h | ||
37 | - if [ "4" = `./pointer` ] ; then touch pointer.h ;\ | ||
38 | - else echo "#define LONG64" >pointer.h ; fi | ||
39 | +pointer.h: Makefile | ||
40 | + touch pointer.h ; | ||
41 | |||
42 | misc.o: misc.h misc.c Makefile | ||
43 | $(CC) $(MACHINE) $(DEFINES) $(CFLAGS)\ | ||
44 | -- | ||
45 | 1.7.0.4 | ||
46 | |||
diff --git a/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb new file mode 100644 index 000000000..2eedd7e31 --- /dev/null +++ b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb | |||
@@ -0,0 +1,25 @@ | |||
1 | DESCRIPTION = "BYTE Magazine's native benchmarks (also called BYTEmark) \ | ||
2 | designed to expose the capabilities of a system's CPU, FPU, \ | ||
3 | and memory system." | ||
4 | HOMEPAGE = "http://www.tux.org/~mayer/linux/" | ||
5 | LICENSE = "nbench-byte" | ||
6 | LIC_FILES_CHKSUM = "file://README;beginline=57;endline=66;md5=020ef579f8fa5746b7e307a54707834f" | ||
7 | SECTION = "console/utils" | ||
8 | |||
9 | SRC_URI = "http://www.tux.org/~mayer/linux/${BP}.tar.gz \ | ||
10 | file://nbench_32bits.patch \ | ||
11 | file://Makefile-add-more-dependencies-to-pointer.h.patch" | ||
12 | |||
13 | SRC_URI[md5sum] = "285dfab361080759d477ea1fe7d3093a" | ||
14 | SRC_URI[sha256sum] = "723dd073f80e9969639eb577d2af4b540fc29716b6eafdac488d8f5aed9101ac" | ||
15 | |||
16 | TARGET_CC_ARCH += "${CFLAGS} ${LDFLAGS}" | ||
17 | do_compile() { | ||
18 | oe_runmake | ||
19 | } | ||
20 | |||
21 | do_install () { | ||
22 | install -d ${D}${bindir} | ||
23 | install -m 0644 NNET.DAT ${D}${bindir}/ | ||
24 | install -m 0755 nbench ${D}${bindir}/ | ||
25 | } | ||
diff --git a/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_5.2.1.bb b/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_5.2.1.bb new file mode 100644 index 000000000..ef9f7352d --- /dev/null +++ b/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_5.2.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "Phoronix Test Suite" | ||
2 | DESCRIPTION = "The Phoronix Test Suite is designed to carry out both qualitative \ | ||
3 | and quantitative benchmarks in a clean, reproducible, and easy-to-use manner." | ||
4 | LICENSE = "GPLv3" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
6 | SECTION = "console/tests" | ||
7 | |||
8 | SRC_URI = "http://www.phoronix-test-suite.com/releases/${BP}.tar.gz" | ||
9 | SRC_URI[md5sum] = "51e52d883710dc516c5494bd1c377219" | ||
10 | SRC_URI[sha256sum] = "1186f460691e2fe7a07df5edb8d8ed1ac0c65327512e646da2b2e3a60dda6cd9" | ||
11 | S = "${WORKDIR}/phoronix-test-suite" | ||
12 | |||
13 | do_install() { | ||
14 | DESTDIR=${D} ./install-sh ${exec_prefix} | ||
15 | } | ||
16 | |||
17 | RDEPENDS_${PN} = "php-cli" | ||
18 | FILES_${PN} += " \ | ||
19 | ${datadir}/phoronix-test-suite \ | ||
20 | ${datadir}/appdata/phoronix-test-suite.appdata.xml \ | ||
21 | ${datadir}/icons/hicolor/48x48/apps/phoronix-test-suite.png \ | ||
22 | ${datadir}/icons/hicolor/64x64/mimetypes/application-x-openbenchmarking.png \ | ||
23 | ${datadir}/mime/packages/openbenchmarking-mime.xml \ | ||
24 | " | ||
diff --git a/meta-oe/recipes-benchmark/tiobench/tiobench-0.3.3/avoid-glibc-clashes.patch b/meta-oe/recipes-benchmark/tiobench/tiobench-0.3.3/avoid-glibc-clashes.patch new file mode 100644 index 000000000..321d29983 --- /dev/null +++ b/meta-oe/recipes-benchmark/tiobench/tiobench-0.3.3/avoid-glibc-clashes.patch | |||
@@ -0,0 +1,57 @@ | |||
1 | From: Otavio Salvador <otavio@ossystems.com.br> | ||
2 | Subject: [PATCH] Avoid aligned allocation function name clashes | ||
3 | |||
4 | glibc added new methods for aligned allocation and it clashes with the | ||
5 | local version used by 'tiobench'. To fix it, we prefix the methods | ||
6 | with '_'. | ||
7 | |||
8 | Upstream-Status: Pending | ||
9 | |||
10 | Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> | ||
11 | --- | ||
12 | tiotest.c | 8 ++++---- | ||
13 | 1 files changed, 4 insertions(+), 4 deletions(-) | ||
14 | |||
15 | diff --git a/tiotest.c b/tiotest.c | ||
16 | index 38f54e7..6b3d0c3 100644 | ||
17 | --- a/tiotest.c | ||
18 | +++ b/tiotest.c | ||
19 | @@ -31,7 +31,7 @@ static const char* versionStr = "tiotest v0.3.3 (C) 1999-2000 Mika Kuoppala <mik | ||
20 | */ | ||
21 | ArgumentOptions args; | ||
22 | |||
23 | -static void * aligned_alloc(ssize_t size) | ||
24 | +static void * _aligned_alloc(ssize_t size) | ||
25 | { | ||
26 | caddr_t a; | ||
27 | a = mmap((caddr_t )0, size, | ||
28 | @@ -41,7 +41,7 @@ static void * aligned_alloc(ssize_t size) | ||
29 | return a; | ||
30 | } | ||
31 | |||
32 | -static int aligned_free(caddr_t a, ssize_t size) | ||
33 | +static int _aligned_free(caddr_t a, ssize_t size) | ||
34 | { | ||
35 | return munmap(a, size); | ||
36 | } | ||
37 | @@ -281,7 +281,7 @@ void initialize_test( ThreadTest *d ) | ||
38 | pthread_attr_setscope(&(d->threads[i].thread_attr), | ||
39 | PTHREAD_SCOPE_SYSTEM); | ||
40 | |||
41 | - d->threads[i].buffer = aligned_alloc( d->threads[i].blockSize ); | ||
42 | + d->threads[i].buffer = _aligned_alloc( d->threads[i].blockSize ); | ||
43 | if( d->threads[i].buffer == NULL ) | ||
44 | { | ||
45 | perror("Error allocating memory"); | ||
46 | @@ -383,7 +383,7 @@ void cleanup_test( ThreadTest *d ) | ||
47 | { | ||
48 | if (!args.rawDrives) | ||
49 | unlink(d->threads[i].fileName); | ||
50 | - aligned_free( d->threads[i].buffer, d->threads[i].blockSize ); | ||
51 | + _aligned_free( d->threads[i].buffer, d->threads[i].blockSize ); | ||
52 | d->threads[i].buffer = 0; | ||
53 | |||
54 | pthread_attr_destroy( &(d->threads[i].thread_attr) ); | ||
55 | -- | ||
56 | 1.7.7 | ||
57 | |||
diff --git a/meta-oe/recipes-benchmark/tiobench/tiobench-0.3.3/tiobench-makefile.patch b/meta-oe/recipes-benchmark/tiobench/tiobench-0.3.3/tiobench-makefile.patch new file mode 100644 index 000000000..f820c7e33 --- /dev/null +++ b/meta-oe/recipes-benchmark/tiobench/tiobench-0.3.3/tiobench-makefile.patch | |||
@@ -0,0 +1,49 @@ | |||
1 | Adapt tiobench to OE | ||
2 | Author: Ludovic Desroches <ludovic.desroches@atmel.com> | ||
3 | |||
4 | Upstream-Status: Inappropriate [not author] | ||
5 | |||
6 | Index: Makefile | ||
7 | =================================================================== | ||
8 | --- a/Makefile 2011-05-26 07:48:46.341400974 +0200 | ||
9 | +++ b/Makefile 2011-05-30 06:32:38.091401358 +0200 | ||
10 | @@ -1,8 +1,9 @@ | ||
11 | # Makefile for tiotest | ||
12 | |||
13 | -CC=gcc | ||
14 | +CC?=gcc | ||
15 | #CFLAGS=-O3 -fomit-frame-pointer -Wall | ||
16 | CFLAGS=-O2 -Wall | ||
17 | +LDFLAGS?= | ||
18 | |||
19 | #DEFINES=-DUSE_MMAP | ||
20 | #-DUSE_MADVISE | ||
21 | @@ -14,16 +15,16 @@ | ||
22 | |||
23 | #DEFINES= | ||
24 | |||
25 | -LINK=gcc | ||
26 | +LINK?=$(CC) | ||
27 | EXE=tiotest | ||
28 | PROJECT=tiobench | ||
29 | # do it once instead of each time referenced | ||
30 | VERSION=$(shell egrep "tiotest v[0-9]+.[0-9]+" tiotest.c | cut -d " " -f 7 | sed "s/v//g") | ||
31 | DISTNAME=$(PROJECT)-$(VERSION) | ||
32 | INSTALL=install | ||
33 | -PREFIX=/usr/local | ||
34 | +PREFIX?=/usr/local | ||
35 | BINDIR=$(PREFIX)/bin | ||
36 | -DOCDIR=/usr/local/doc/$(DISTNAME) | ||
37 | +DOCDIR=$(PREFIX)/share/doc/$(DISTNAME) | ||
38 | |||
39 | all: $(EXE) | ||
40 | |||
41 | @@ -34,7 +35,7 @@ | ||
42 | $(CC) -c $(CFLAGS) $(DEFINES) tiotest.c -o tiotest.o | ||
43 | |||
44 | $(EXE): tiotest.o crc32.o | ||
45 | - $(LINK) -o $(EXE) tiotest.o crc32.o -lpthread | ||
46 | + $(LINK) -o $(EXE) tiotest.o crc32.o -lpthread $(LDFLAGS) | ||
47 | @echo | ||
48 | @echo "./tiobench.pl --help for usage options" | ||
49 | @echo | ||
diff --git a/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb b/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb new file mode 100644 index 000000000..3267de2a0 --- /dev/null +++ b/meta-oe/recipes-benchmark/tiobench/tiobench_0.3.3.bb | |||
@@ -0,0 +1,28 @@ | |||
1 | SUMMARY = "Threaded I/O tester" | ||
2 | HOMEPAGE = "http://sourceforge.net/projects/tiobench/" | ||
3 | LICENSE = "GPLv2" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b" | ||
5 | |||
6 | PR = "r1" | ||
7 | |||
8 | SRC_URI = "\ | ||
9 | http://sourceforge.net/projects/tiobench/files/tiobench/${PV}/${BP}.tar.gz \ | ||
10 | file://tiobench-makefile.patch \ | ||
11 | file://avoid-glibc-clashes.patch \ | ||
12 | " | ||
13 | SRC_URI[md5sum] = "bf485bf820e693c79e6bd2a38702a128" | ||
14 | SRC_URI[sha256sum] = "8ad011059a35ac70cdb5e3d3999ceee44a8e8e9078926844b0685b7ea9db2bcc" | ||
15 | |||
16 | EXTRA_OEMAKE = "PREFIX=${D}/usr" | ||
17 | |||
18 | do_install() { | ||
19 | oe_runmake install | ||
20 | } | ||
21 | |||
22 | RDEPENDS_${PN} = "\ | ||
23 | perl \ | ||
24 | perl-module-exporter-heavy \ | ||
25 | perl-module-getopt-long \ | ||
26 | perl-module-overload \ | ||
27 | perl-module-strict \ | ||
28 | " | ||