diff options
author | Tudor Florea <tudor.florea@enea.com> | 2014-10-10 03:20:04 +0200 |
---|---|---|
committer | Tudor Florea <tudor.florea@enea.com> | 2014-10-10 03:20:04 +0200 |
commit | 1b8dfe266937a37a4c642f96ceb2347bf4c00a17 (patch) | |
tree | 0c6aab146bb3c82efd9c7846a9a4e70dcb0ec84f /meta-oe/recipes-benchmark | |
download | meta-openembedded-daisy-140929.tar.gz |
initial commit for Enea Linux 4.0-140929daisy-140929
Migrated from the internal git server on the daisy-enea-point-release branch
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta-oe/recipes-benchmark')
37 files changed, 1601 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 0000000000..f8a23d73b0 --- /dev/null +++ b/meta-oe/recipes-benchmark/bonnie/bonnie++_1.03e.bb | |||
@@ -0,0 +1,30 @@ | |||
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}" | ||
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 0000000000..67f1b74948 --- /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_20120610.bb b/meta-oe/recipes-benchmark/cpuburn/cpuburn-neon_20120610.bb new file mode 100644 index 0000000000..8ec5e95451 --- /dev/null +++ b/meta-oe/recipes-benchmark/cpuburn/cpuburn-neon_20120610.bb | |||
@@ -0,0 +1,29 @@ | |||
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 | http://github.com/downloads/ssvb/ssvb.github.com/ssvb-cpuburn-a8.S;name=ssvb" | ||
12 | SRC_URI[mru.md5sum] = "823abc72c2cd448e87df9bc5355a4456" | ||
13 | SRC_URI[mru.sha256sum] = "01d9fc04f83740c513c25401dcc89c11b2a5a6013e70bfca42b7b02129f88cd2" | ||
14 | SRC_URI[ssvb.md5sum] = "0acc570d943c41c7f8602b9ff6fa111d" | ||
15 | SRC_URI[ssvb.sha256sum] = "bfddd3226a499ffdf71bb58c05ccdc6dac5bb2c2c3bdb10ac610ee0b60aac087" | ||
16 | |||
17 | S = "${WORKDIR}" | ||
18 | |||
19 | do_compile() { | ||
20 | ${CC} ${CFLAGS} ${LDFLAGS} burn.S -o burn | ||
21 | ${CC} ${CFLAGS} ${LDFLAGS} ssvb-cpuburn-a8.S -o burn-neona8 | ||
22 | } | ||
23 | |||
24 | do_install() { | ||
25 | install -d ${D}${bindir} | ||
26 | install -m 0755 ${S}/burn ${D}${bindir}/burn-neon | ||
27 | install -m 0755 ${S}/burn-neona8 ${D}${bindir}/ | ||
28 | } | ||
29 | |||
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 0000000000..1915e4c2eb --- /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 0000000000..ca9a8ee207 --- /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} client.txt $(DESTDIR)$(datadir) | ||
23 | + ${INSTALLCMD} -m644 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 0000000000..09d619ad38 --- /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} client.txt $(DESTDIR)$(datadir) | ||
14 | - ${INSTALLCMD} -m644 dbench.1 $(DESTDIR)$(mandir) | ||
15 | + ${INSTALLCMD} -m 644 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 0000000000..db97244bc0 --- /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 0000000000..8dcf637963 --- /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_2012.12.bb b/meta-oe/recipes-benchmark/glmark2/glmark2_2012.12.bb new file mode 100644 index 0000000000..031e3b3d4d --- /dev/null +++ b/meta-oe/recipes-benchmark/glmark2/glmark2_2012.12.bb | |||
@@ -0,0 +1,23 @@ | |||
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" | ||
12 | |||
13 | SRC_URI = "https://launchpad.net/${BPN}/trunk/${PV}/+download/${BP}.tar.gz" | ||
14 | |||
15 | SRC_URI[md5sum] = "4f306664aa3886fa0cf93853603603f8" | ||
16 | SRC_URI[sha256sum] = "bea6f9de2cdce376195bd91e4a2fdfdf80bf3e480abff8e05b90a6458c1deb47" | ||
17 | |||
18 | inherit waf pkgconfig | ||
19 | |||
20 | PACKAGECONFIG ?= "gl gles2" | ||
21 | |||
22 | PACKAGECONFIG[gl] = "--enable-gl,,virtual/libgl" | ||
23 | PACKAGECONFIG[gles2] = "--enable-glesv2,,virtual/libgles2" | ||
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 0000000000..3468fa9298 --- /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 0000000000..14373b9e01 --- /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/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 0000000000..12e8f46311 --- /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 0000000000..a2077162d0 --- /dev/null +++ b/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb | |||
@@ -0,0 +1,18 @@ | |||
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/${PN}-${PV}.tar.gz \ | ||
8 | file://iperf-2.0.5_ManPage.patch \ | ||
9 | " | ||
10 | |||
11 | SRC_URI[md5sum] = "44b5536b67719f4250faed632a3cd016" | ||
12 | SRC_URI[sha256sum] = "636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b" | ||
13 | |||
14 | S = "${WORKDIR}/${PN}-${PV}" | ||
15 | |||
16 | inherit autotools pkgconfig | ||
17 | |||
18 | EXTRA_OECONF = "--exec-prefix=${STAGING_DIR_HOST}${layout_exec_prefix}" | ||
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 0000000000..0b8d0e4d54 --- /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-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 0000000000..3082d7ef5f --- /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/aarch64-support.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/aarch64-support.patch new file mode 100644 index 0000000000..ceac6b4283 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/aarch64-support.patch | |||
@@ -0,0 +1,88 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | From 52b8430eb4f03e35721f29862de33041fe9c9768 Mon Sep 17 00:00:00 2001 | ||
4 | From: Steve Capper <steve.capper@linaro.org> | ||
5 | Date: Wed, 10 Apr 2013 14:51:12 +0100 | ||
6 | Subject: [PATCH] Aarch64 support. | ||
7 | |||
8 | This patch adds support for Aarch64. | ||
9 | |||
10 | As with ARMv7, We do not add the xBT/xBDT style linker scripts as | ||
11 | these have been deprecated in favour of adjusting the page sizes | ||
12 | via command line parameter to ld. | ||
13 | |||
14 | Signed-off-by: Steve Capper <steve.capper@linaro.org> | ||
15 | --- | ||
16 | Makefile | 7 +++++++ | ||
17 | sys-aarch64elf_linux.S | 34 ++++++++++++++++++++++++++++++++++ | ||
18 | 2 files changed, 41 insertions(+) | ||
19 | create mode 100644 sys-aarch64elf_linux.S | ||
20 | |||
21 | diff --git a/Makefile b/Makefile | ||
22 | index 48205af..28ceade 100644 | ||
23 | --- a/Makefile | ||
24 | +++ b/Makefile | ||
25 | @@ -57,6 +57,12 @@ TMPLIB32 = lib | ||
26 | ELF32 += armelf_linux_eabi | ||
27 | CUSTOM_LDSCRIPTS = no | ||
28 | else | ||
29 | +ifeq ($(ARCH),aarch64) | ||
30 | +CC64 = gcc | ||
31 | +ELF64 = aarch64elf_linux | ||
32 | +TMPLIB64 = lib64 | ||
33 | +CUSTOM_LDSCRIPTS = no | ||
34 | +else | ||
35 | ifeq ($(ARCH),i386) | ||
36 | CC32 = gcc | ||
37 | ELF32 = elf_i386 | ||
38 | @@ -100,6 +106,7 @@ endif | ||
39 | endif | ||
40 | endif | ||
41 | endif | ||
42 | +endif | ||
43 | |||
44 | ifdef CC32 | ||
45 | OBJDIRS += obj32 | ||
46 | diff --git a/sys-aarch64elf_linux.S b/sys-aarch64elf_linux.S | ||
47 | new file mode 100644 | ||
48 | index 0000000..699ff4c | ||
49 | --- /dev/null | ||
50 | +++ b/sys-aarch64elf_linux.S | ||
51 | @@ -0,0 +1,34 @@ | ||
52 | +/* | ||
53 | + * libhugetlbfs - Easy use of Linux hugepages | ||
54 | + * Copyright (C) 2013 Linaro Ltd. | ||
55 | + * | ||
56 | + * This library is free software; you can redistribute it and/or | ||
57 | + * modify it under the terms of the GNU Lesser General Public License | ||
58 | + * version 2.1 as published by the Free Software Foundation. | ||
59 | + * | ||
60 | + * This library is distributed in the hope that it will be useful, but | ||
61 | + * WITHOUT ANY WARRANTY; without even the implied warranty of | ||
62 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
63 | + * Lesser General Public License for more details. | ||
64 | + * | ||
65 | + * You should have received a copy of the GNU Lesser General Public | ||
66 | + * License along with this library; if not, write to the Free Software | ||
67 | + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
68 | + */ | ||
69 | + | ||
70 | + .text | ||
71 | + | ||
72 | + .globl direct_syscall | ||
73 | + | ||
74 | + | ||
75 | +direct_syscall: | ||
76 | + uxtw x8, w0 | ||
77 | + mov x0, x1 | ||
78 | + mov x1, x2 | ||
79 | + mov x2, x3 | ||
80 | + mov x3, x4 | ||
81 | + mov x4, x5 | ||
82 | + mov x5, x6 | ||
83 | + mov x6, x7 | ||
84 | + svc 0x0 | ||
85 | + RET | ||
86 | -- | ||
87 | 1.7.9.5 | ||
88 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/aarch64-unit-test-fixes.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/aarch64-unit-test-fixes.patch new file mode 100644 index 0000000000..0b6fd8a303 --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/aarch64-unit-test-fixes.patch | |||
@@ -0,0 +1,62 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | From 9bb940bd6a86f09280bdcd48a7177a835d72a25c Mon Sep 17 00:00:00 2001 | ||
4 | From: Steve Capper <steve.capper@linaro.org> | ||
5 | Date: Wed, 10 Apr 2013 15:52:46 +0100 | ||
6 | Subject: [PATCH] Aarch64 unit test fixes. | ||
7 | |||
8 | On Aarch64, zero bytes are illegal instructions, this is added to | ||
9 | the icache-hygiene test. | ||
10 | |||
11 | In mremap-expand-slice-collision, if __LP64__ is defined then | ||
12 | mappings are attempted at 1TB boundaries which are outside the | ||
13 | allowable mmap region for Aarch64. For __aarch64__ we change this | ||
14 | mapping back to 256MB slices. | ||
15 | |||
16 | Signed-off-by: Steve Capper <steve.capper@linaro.org> | ||
17 | --- | ||
18 | tests/icache-hygiene.c | 7 ++++--- | ||
19 | tests/mremap-expand-slice-collision.c | 2 +- | ||
20 | 2 files changed, 5 insertions(+), 4 deletions(-) | ||
21 | |||
22 | diff --git a/tests/icache-hygiene.c b/tests/icache-hygiene.c | ||
23 | index 51792b3..876ce10 100644 | ||
24 | --- a/tests/icache-hygiene.c | ||
25 | +++ b/tests/icache-hygiene.c | ||
26 | @@ -54,7 +54,7 @@ static void cacheflush(void *p) | ||
27 | { | ||
28 | #if defined(__powerpc__) | ||
29 | asm volatile("dcbst 0,%0; sync; icbi 0,%0; isync" : : "r"(p)); | ||
30 | -#elif defined(__arm__) | ||
31 | +#elif defined(__arm__) || defined(__aarch64__) | ||
32 | __clear_cache(p, p + COPY_SIZE); | ||
33 | #endif | ||
34 | } | ||
35 | @@ -87,8 +87,9 @@ static void *sig_expected; | ||
36 | static void sig_handler(int signum, siginfo_t *si, void *uc) | ||
37 | { | ||
38 | #if defined(__powerpc__) || defined(__powerpc64__) || defined(__ia64__) || \ | ||
39 | - defined(__s390__) || defined(__s390x__) || defined(__sparc__) | ||
40 | - /* On powerpc and ia64 and s390, 0 bytes are an illegal | ||
41 | + defined(__s390__) || defined(__s390x__) || defined(__sparc__) || \ | ||
42 | + defined(__aarch64__) | ||
43 | + /* On powerpc, ia64, s390 and Aarch64, 0 bytes are an illegal | ||
44 | * instruction, so, if the icache is cleared properly, we SIGILL | ||
45 | * as soon as we jump into the cleared page */ | ||
46 | if (signum == SIGILL) { | ||
47 | diff --git a/tests/mremap-expand-slice-collision.c b/tests/mremap-expand-slice-collision.c | ||
48 | index c25f4c6..853f3c3 100644 | ||
49 | --- a/tests/mremap-expand-slice-collision.c | ||
50 | +++ b/tests/mremap-expand-slice-collision.c | ||
51 | @@ -38,7 +38,7 @@ void init_slice_boundary(int fd) | ||
52 | unsigned long slice_size; | ||
53 | void *p1, *p2, *heap; | ||
54 | int slices_ok, i, rc; | ||
55 | -#ifdef __LP64__ | ||
56 | +#if defined(__LP64__) && !defined(__aarch64__) | ||
57 | /* powerpc: 1TB slices starting at 1 TB */ | ||
58 | slice_boundary = 0x10000000000; | ||
59 | slice_size = 0x10000000000; | ||
60 | -- | ||
61 | 1.7.9.5 | ||
62 | |||
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/add-PROT-NONE-to-the-mprotest-test.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/add-PROT-NONE-to-the-mprotest-test.patch new file mode 100644 index 0000000000..673f2046dd --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/add-PROT-NONE-to-the-mprotest-test.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | From c7fcb7270bb510d7271a1c0cea095a4dbea49420 Mon Sep 17 00:00:00 2001 | ||
4 | From: Steve Capper <steve.capper@linaro.org> | ||
5 | Date: Mon, 3 Jun 2013 17:00:45 +0100 | ||
6 | Subject: [PATCH] Add PROT_NONE to the mprotect test. | ||
7 | |||
8 | The mprotect unit test checks PROT_READ and PROT_READ | PROT_WRITE | ||
9 | protections. We recently found that PROT_NONE wasn't properly | ||
10 | supported in our huge page kernel code. | ||
11 | |||
12 | This patch adds PROT_NONE tests to mprotect. The expected behaviour | ||
13 | is that neither reads nor writes should succeed. | ||
14 | |||
15 | Signed-off-by: Steve Capper <steve.capper@linaro.org> | ||
16 | --- | ||
17 | tests/mprotect.c | 6 ++++++ | ||
18 | 1 file changed, 6 insertions(+) | ||
19 | |||
20 | diff --git a/tests/mprotect.c b/tests/mprotect.c | ||
21 | index aa4673e..db6a662 100644 | ||
22 | --- a/tests/mprotect.c | ||
23 | +++ b/tests/mprotect.c | ||
24 | @@ -213,5 +213,11 @@ int main(int argc, char *argv[]) | ||
25 | test_mprotect(fd, "RW->R 1/2", 2*hpage_size, PROT_READ|PROT_WRITE, | ||
26 | hpage_size, PROT_READ); | ||
27 | |||
28 | + /* PROT_NONE tests */ | ||
29 | + test_mprotect(fd, "NONE->R", hpage_size, PROT_NONE, | ||
30 | + hpage_size, PROT_READ); | ||
31 | + test_mprotect(fd, "NONE->RW", hpage_size, PROT_NONE, | ||
32 | + hpage_size, PROT_READ|PROT_WRITE); | ||
33 | + | ||
34 | PASS(); | ||
35 | } | ||
36 | -- | ||
37 | 1.7.9.5 | ||
38 | |||
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 0000000000..676fa8a7af --- /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 0000000000..b3fd843128 --- /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 0000000000..329637604c --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch | |||
@@ -0,0 +1,48 @@ | |||
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 | |||
7 | Upstream-Status: Inappropriate [oe-core specific] | ||
8 | Signed-off-by: Ting Liu <b28495@freescale.com> | ||
9 | --- | ||
10 | Makefile | 22 +++++++++++----------- | ||
11 | 1 files changed, 11 insertions(+), 11 deletions(-) | ||
12 | |||
13 | diff --git a/Makefile b/Makefile | ||
14 | index 1017950..bac5f01 100644 | ||
15 | --- a/Makefile | ||
16 | +++ b/Makefile | ||
17 | @@ -131,17 +131,17 @@ endif | ||
18 | |||
19 | # If TMPLIB64 is set, then sure we are not resolving LIB32 and LIB64 to the | ||
20 | # same place | ||
21 | -ifdef TMPLIB64 | ||
22 | - | ||
23 | -REALLIB32 = $(realpath $(PREFIX)/$(LIB32)) | ||
24 | -REALLIB64 = $(realpath $(PREFIX)/$(LIB64)) | ||
25 | -ifneq ($(realpath $(PREFIX)),) | ||
26 | -ifeq ($(REALLIB32),$(REALLIB64)) | ||
27 | -$(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) | ||
28 | -endif | ||
29 | -endif | ||
30 | - | ||
31 | -endif | ||
32 | +#ifdef TMPLIB64 | ||
33 | +# | ||
34 | +#REALLIB32 = $(realpath $(PREFIX)/$(LIB32)) | ||
35 | +#REALLIB64 = $(realpath $(PREFIX)/$(LIB64)) | ||
36 | +#ifneq ($(realpath $(PREFIX)),) | ||
37 | +#ifeq ($(REALLIB32),$(REALLIB64)) | ||
38 | +#$(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) | ||
39 | +#endif | ||
40 | +#endif | ||
41 | +# | ||
42 | +#endif | ||
43 | |||
44 | HEADERDIR = $(PREFIX)/include | ||
45 | LIBDIR32 = $(PREFIX)/$(LIB32) | ||
46 | -- | ||
47 | 1.7.0.4 | ||
48 | |||
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 0000000000..249f6e1e23 --- /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 0000000000..5ee6e8e14e --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb | |||
@@ -0,0 +1,51 @@ | |||
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} += "python python-io python-lang python-subprocess python-resource" | ||
7 | |||
8 | SRCBRANCH = "next" | ||
9 | SRC_URI = "git://git.code.sf.net/p/libhugetlbfs/code;branch=${SRCBRANCH} \ | ||
10 | file://skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch \ | ||
11 | file://libhugetlbfs-avoid-search-host-library-path-for-cros.patch \ | ||
12 | file://fix-lib64-can-not-be-shiped-in-64bit-target.patch \ | ||
13 | file://tests-Makefile-install-static-4G-edge-testcases.patch \ | ||
14 | file://0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch \ | ||
15 | file://0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch \ | ||
16 | " | ||
17 | SRCREV = "6824d18d5f33fdab445a8eff147fcdb6361f5791" | ||
18 | |||
19 | S = "${WORKDIR}/git" | ||
20 | |||
21 | COMPATIBLE_HOST = "(x86_64|powerpc|powerpc64|aarch64).*-linux*" | ||
22 | |||
23 | |||
24 | EXTRA_OEMAKE = "'ARCH=${TARGET_ARCH}' 'OPT=${CFLAGS}' 'CC=${CC}' BUILDTYPE=NATIVEONLY ${LIBARGS}" | ||
25 | CFLAGS += "-fexpensive-optimizations -frename-registers -fomit-frame-pointer -g0" | ||
26 | |||
27 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
28 | |||
29 | #The CUSTOM_LDSCRIPTS doesn't work with the gold linker | ||
30 | do_configure() { | ||
31 | if [ "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then | ||
32 | sed -i 's/CUSTOM_LDSCRIPTS = yes/CUSTOM_LDSCRIPTS = no/' Makefile | ||
33 | fi | ||
34 | } | ||
35 | |||
36 | do_install() { | ||
37 | oe_runmake PREFIX=${prefix} DESTDIR=${D} \ | ||
38 | INST_TESTSDIR32=${libdir}/libhugetlbfs/tests \ | ||
39 | INST_TESTSDIR64=${libdir}/libhugetlbfs/tests \ | ||
40 | install-tests | ||
41 | } | ||
42 | |||
43 | PARALLEL_MAKE_pn-${PN} = "" | ||
44 | |||
45 | PACKAGES =+ "${PN}-perl ${PN}-tests " | ||
46 | FILES_${PN}-dbg += "${libdir}/libhugetlbfs/tests/obj32/.debug ${libdir}/libhugetlbfs/tests/obj64/.debug" | ||
47 | FILES_${PN}-perl = "${libdir}/perl" | ||
48 | FILES_${PN}-tests += "${libdir}/libhugetlbfs/tests" | ||
49 | |||
50 | INHIBIT_PACKAGE_STRIP = "1" | ||
51 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | ||
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 0000000000..41a3b3205b --- /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 0000000000..b46e09ad15 --- /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 0000000000..894f146d42 --- /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 0000000000..3351ce8875 --- /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 0000000000..e904c75e43 --- /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 0000000000..9a405213ad --- /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 0000000000..41db15000e --- /dev/null +++ b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb | |||
@@ -0,0 +1,76 @@ | |||
1 | SUMMARY = "Tools for performance analysis" | ||
2 | HOMEPAGE = "http://lmbench.sourceforge.net/" | ||
3 | SECTION = "console/utils" | ||
4 | LICENSE = "GPLv2" | ||
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 | " | ||
20 | SRC_URI[md5sum] = "b3351a3294db66a72e2864a199d37cbf" | ||
21 | SRC_URI[sha256sum] = "cbd5777d15f44eab7666dcac418054c3c09df99826961a397d9acf43d8a2a551" | ||
22 | |||
23 | EXTRA_OEMAKE = 'CC="${CC}" AR="${AR}" RANLIB="${RANLIB}" CFLAGS="${CFLAGS}" \ | ||
24 | LDFLAGS="${LDFLAGS}" LD="${LD}" OS="${TARGET_SYS}" \ | ||
25 | TARGET="${TARGET_OS}" BASE="${prefix}" MANDIR="${mandir}"' | ||
26 | |||
27 | do_configure() { | ||
28 | : | ||
29 | } | ||
30 | |||
31 | do_compile () { | ||
32 | . ${CONFIG_SITE} | ||
33 | if [ X"$ac_cv_uint" = X"yes" ]; then | ||
34 | CFLAGS="${CFLAGS} -DHAVE_uint" | ||
35 | fi | ||
36 | install -d ${S}/bin/${TARGET_SYS} | ||
37 | oe_runmake -C src | ||
38 | } | ||
39 | |||
40 | do_install () { | ||
41 | install -d ${D}${sysconfdir}/default/volatiles \ | ||
42 | ${D}${bindir} ${D}${mandir} ${D}${libdir}/lmbench \ | ||
43 | ${D}${datadir}/lmbench/scripts | ||
44 | |||
45 | echo "d root root 0755 ${localstatedir}/run/${BPN} none" \ | ||
46 | > ${D}${sysconfdir}/default/volatiles/99_lmbench | ||
47 | if ${@base_contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
48 | install -d ${D}${sysconfdir}/tmpfiles.d | ||
49 | echo "d /run/${BPN} - - - -" \ | ||
50 | > ${D}${sysconfdir}/tmpfiles.d/lmbench.conf | ||
51 | fi | ||
52 | |||
53 | oe_runmake 'BASE=${D}${prefix}' \ | ||
54 | -C src install | ||
55 | mv ${D}${bindir}/line ${D}${bindir}/lm_line | ||
56 | install -m 0755 ${WORKDIR}/lmbench-run ${D}${bindir}/ | ||
57 | sed -i -e 's,^SHAREDIR=.*$,SHAREDIR=${datadir}/${PN},;' \ | ||
58 | -e 's,^BINDIR=.*$,BINDIR=${libdir}/${PN},;' \ | ||
59 | -e 's,^CONFIG=.*$,CONFIG=`$SCRIPTSDIR/config`,;' \ | ||
60 | ${D}${bindir}/lmbench-run | ||
61 | install -m 0755 ${S}/scripts/lmbench ${D}${bindir} | ||
62 | install -m 0755 ${S}/scripts/* ${D}${datadir}/lmbench/scripts | ||
63 | } | ||
64 | |||
65 | pkg_postinst_${PN} () { | ||
66 | if [ -z "$D" ]; then | ||
67 | if command -v systemd-tmpfiles >/dev/null; then | ||
68 | systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/lmbench.conf | ||
69 | elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then | ||
70 | ${sysconfdir}/init.d/populate-volatile.sh update | ||
71 | fi | ||
72 | fi | ||
73 | } | ||
74 | |||
75 | RDEPENDS_${PN} = "debianutils" | ||
76 | 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 0000000000..971e52ac7f --- /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 0000000000..74e704b7b3 --- /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/nbench_32bits.patch b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte/nbench_32bits.patch new file mode 100644 index 0000000000..1b8a4dc088 --- /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 0000000000..37f3e46a7e --- /dev/null +++ b/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb | |||
@@ -0,0 +1,24 @@ | |||
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 = "freely distributable" | ||
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/${PN}-${PV}.tar.gz \ | ||
10 | file://nbench_32bits.patch" | ||
11 | |||
12 | SRC_URI[md5sum] = "285dfab361080759d477ea1fe7d3093a" | ||
13 | SRC_URI[sha256sum] = "723dd073f80e9969639eb577d2af4b540fc29716b6eafdac488d8f5aed9101ac" | ||
14 | |||
15 | TARGET_CC_ARCH += "${CFLAGS} ${LDFLAGS}" | ||
16 | do_compile() { | ||
17 | oe_runmake | ||
18 | } | ||
19 | |||
20 | do_install () { | ||
21 | install -d ${D}${bindir} | ||
22 | install -m 0644 NNET.DAT ${D}${bindir}/ | ||
23 | install -m 0755 nbench ${D}${bindir}/ | ||
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 0000000000..321d299837 --- /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 0000000000..f820c7e337 --- /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 0000000000..af6c53c377 --- /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}/${P}.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 | " | ||