summaryrefslogtreecommitdiffstats
path: root/external/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'external/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb')
-rw-r--r--external/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb52
1 files changed, 52 insertions, 0 deletions
diff --git a/external/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb b/external/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
new file mode 100644
index 00000000..b21212a4
--- /dev/null
+++ b/external/meta-openembedded/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
@@ -0,0 +1,52 @@
+SUMMARY = "A collection of cpuburn programs tuned for different ARM hardware"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://cpuburn-a53.S;beginline=1;endline=22;md5=3b7ccd70144c16d3fe14ac491c2d4a87"
+
+RPROVIDES_${PN} = "cpuburn-neon"
+PROVIDES += "cpuburn-neon"
+
+SRCREV = "ad7e646700d14b81413297bda02fb7fe96613c3f"
+
+PV = "1.0+git${SRCPV}"
+
+SRC_URI = "git://github.com/ssvb/cpuburn-arm.git \
+ file://0001-cpuburn-a8.S-Remove-.func-.endfunc.patch \
+ file://0002-burn.S-Add.patch \
+ file://0003-burn.S-Remove-.func-.endfunc.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+do_compile() {
+
+ # If the arch is set to ARM 64-bit - we only produce and ship burn-a53 version.
+ # In case of ARM 32-bit - we would build all variants, since burn-a53 supports both
+ # 32 and 64-bit builds
+ if ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', 'true', 'false', d)}; then
+ ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53
+ else
+ ${CC} ${CFLAGS} ${LDFLAGS} burn.S -o burn
+ ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a7.S -o burn-a7
+ ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a8.S -o burn-a8
+ ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a9.S -o burn-a9
+ ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53
+ ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-krait.S -o burn-krait
+ fi
+}
+
+do_install() {
+ install -d ${D}${bindir}
+
+ if ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', 'true', 'false', d)}; then
+ install -m 0755 burn-a53 ${D}${bindir}
+ else
+ for f in burn burn-a7 burn-a8 burn-a9 burn-a53 burn-krait; do
+ install -m 0755 $f ${D}${bindir}/$f
+ done
+ fi
+}
+
+COMPATIBLE_MACHINE ?= "(^$)"
+COMPATIBLE_MACHINE_armv7a = "(.*)"
+COMPATIBLE_MACHINE_armv7ve = "(.*)"
+COMPATIBLE_MACHINE_aarch64 = "(.*)"