diff options
| author | Jose Alarcon <jose.alarcon@ge.com> | 2017-08-22 08:05:38 +0300 |
|---|---|---|
| committer | Martin Jansa <Martin.Jansa@gmail.com> | 2017-08-28 11:06:03 +0200 |
| commit | 5272165c3f1f0db5aeb483028c68bf86043653f3 (patch) | |
| tree | 7e28dc6db95a1fc4f870223ebd938a46410e58ce /meta-oe/recipes-benchmark | |
| parent | 28558af4d060541d3d2c4b5f81a9b7a61a259a1c (diff) | |
| download | meta-openembedded-5272165c3f1f0db5aeb483028c68bf86043653f3.tar.gz | |
Dhrystone: add recipe 2.1
Dhrystone is a synthetic computing benchmark program developed
in 1984 by Reinhold P. Weicker intended to be representative of
system (integer) programming.
https://en.wikipedia.org/wiki/Dhrystone
Signed-off-by: Jose Alarcon <jose.alarcon@ge.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-benchmark')
| -rw-r--r-- | meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch | 81 | ||||
| -rw-r--r-- | meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb | 26 |
2 files changed, 107 insertions, 0 deletions
diff --git a/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch b/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch new file mode 100644 index 0000000000..6a5350c37c --- /dev/null +++ b/meta-oe/recipes-benchmark/dhrystone/dhrystone-2.1/dhrystone.patch | |||
| @@ -0,0 +1,81 @@ | |||
| 1 | dhrystone: fix compilation problems | ||
| 2 | |||
| 3 | This patch fixes two compilation errors with original | ||
| 4 | dhrystone sources: | ||
| 5 | * Redefinition of times() with wrong return type | ||
| 6 | - Fixed by commenting out the unnecessary redefinition | ||
| 7 | * Undefined identifier HZ | ||
| 8 | - Originally HZ was supposed to be the clock frequency | ||
| 9 | value for times() | ||
| 10 | - For Linux, the frequency should come from sysconf | ||
| 11 | - This patch defines global varible HZ and initializes | ||
| 12 | it from sysconf | ||
| 13 | |||
| 14 | Additionally, this patch adds a simple Makefile. | ||
| 15 | |||
| 16 | Upstream-status: Pending | ||
| 17 | |||
| 18 | Sign-off-by: Kimmo Surakka <kimmo.surakka@ge.com> | ||
| 19 | Signed-off-by: Jose Alarcon <jose.alarcon@ge.com> | ||
| 20 | --- | ||
| 21 | |||
| 22 | diff -Naur dhry.orig/dhry_1.c dhry/dhry_1.c | ||
| 23 | --- dhry.orig/dhry_1.c 2015-07-20 14:25:58.059945353 +0300 | ||
| 24 | +++ dhry/dhry_1.c 2015-07-20 12:43:25.318945353 +0300 | ||
| 25 | @@ -45,11 +45,15 @@ | ||
| 26 | |||
| 27 | #ifdef TIMES | ||
| 28 | struct tms time_info; | ||
| 29 | -extern int times (); | ||
| 30 | +/* extern int times (); */ | ||
| 31 | /* see library function "times" */ | ||
| 32 | #define Too_Small_Time 120 | ||
| 33 | /* Measurements should last at least about 2 seconds */ | ||
| 34 | #endif | ||
| 35 | +#ifndef HZ | ||
| 36 | +#include <unistd.h> /* sysconf */ | ||
| 37 | + long HZ; | ||
| 38 | +#endif | ||
| 39 | #ifdef TIME | ||
| 40 | extern long time(); | ||
| 41 | /* see library function "time" */ | ||
| 42 | @@ -84,6 +88,9 @@ | ||
| 43 | |||
| 44 | /* Initializations */ | ||
| 45 | |||
| 46 | +#ifndef HZ | ||
| 47 | + HZ = sysconf(_SC_CLK_TCK); | ||
| 48 | +#endif | ||
| 49 | Next_Ptr_Glob = (Rec_Pointer) malloc (sizeof (Rec_Type)); | ||
| 50 | Ptr_Glob = (Rec_Pointer) malloc (sizeof (Rec_Type)); | ||
| 51 | |||
| 52 | diff -Naur dhry.orig/dhry.h dhry/dhry.h | ||
| 53 | --- dhry.orig/dhry.h 2015-07-20 14:25:58.054945353 +0300 | ||
| 54 | +++ dhry/dhry.h 2015-07-20 12:42:59.903945353 +0300 | ||
| 55 | @@ -420,4 +420,6 @@ | ||
| 56 | } variant; | ||
| 57 | } Rec_Type, *Rec_Pointer; | ||
| 58 | |||
| 59 | - | ||
| 60 | +#ifndef HZ | ||
| 61 | + extern long HZ; | ||
| 62 | +#endif | ||
| 63 | diff -Naur dhry.orig/Makefile dhry/Makefile | ||
| 64 | --- dhry.orig/Makefile 1970-01-01 02:00:00.000000000 +0200 | ||
| 65 | +++ dhry/Makefile 2015-07-20 14:10:45.832945353 +0300 | ||
| 66 | @@ -0,0 +1,15 @@ | ||
| 67 | +CC=gcc | ||
| 68 | + | ||
| 69 | +all: dhry | ||
| 70 | + | ||
| 71 | +dhry: dhry_1.o dhry_2.o | ||
| 72 | + $(CC) $(LDFLAGS) -o $@ $^ $(LOADLIBES) $(LDLIBS) | ||
| 73 | + | ||
| 74 | +dhry_1.o: dhry_1.c dhry.h | ||
| 75 | + | ||
| 76 | +dhry_2.o: dhry_2.c dhry.h | ||
| 77 | + | ||
| 78 | +clean: | ||
| 79 | + rm -f *.o *~ | ||
| 80 | + | ||
| 81 | +.PHONY: all clean | ||
diff --git a/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb b/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb new file mode 100644 index 0000000000..17e8c700ca --- /dev/null +++ b/meta-oe/recipes-benchmark/dhrystone/dhrystone_2.1.bb | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | SUMMARY = "Dhrystone CPU benchmark" | ||
| 2 | LICENSE = "PD" | ||
| 3 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/PD;md5=b3597d12946881e13cb3b548d1173851" | ||
| 4 | |||
| 5 | SRC_URI = "http://www.netlib.org/benchmark/dhry-c;downloadfilename=dhry-c.shar \ | ||
| 6 | file://dhrystone.patch" | ||
| 7 | SRC_URI[md5sum] = "75aa5909c174eed98c134be2f56307da" | ||
| 8 | SRC_URI[sha256sum] = "038a7e9169787125c3451a6c941f3aca5db2d2f3863871afcdce154ef17f4e3e" | ||
| 9 | |||
| 10 | # Need to override Makefile variables | ||
| 11 | EXTRA_OEMAKE = "-e MAKEFLAGS=" | ||
| 12 | |||
| 13 | do_unpack() { | ||
| 14 | [ -d ${S} ] || mkdir -p ${S} | ||
| 15 | cd ${S} | ||
| 16 | sh ${DL_DIR}/dhry-c.shar | ||
| 17 | } | ||
| 18 | do_install() { | ||
| 19 | install -d ${D}${bindir} | ||
| 20 | install -m 0755 ${S}/dhry ${D}${bindir} | ||
| 21 | } | ||
| 22 | |||
| 23 | # Prevent procedure merging as required by dhrystone.c: | ||
| 24 | CFLAGS += "-fno-lto" | ||
| 25 | |||
| 26 | LDFLAGS += "-fno-lto" | ||
