[oe] [meta-oe][PATCH] cpuburn-arm: add aarch64 machine and build configuration
Andrey Zhizhikin
andrey.z at gmail.com
Wed Jun 19 10:08:28 UTC 2019
Add aarch64 as a valid machine to cpuburn recipe and split compilation
task.
The only source file which supports the aarch64 build is cpuburn-a53.S,
and in case if TUNE is set to aarch64 - this should be the only file to
be assembled to the application.
In case of 32-bit build - all sources are compiled as they are, since
cpuburn-a53.S supports both 32- and 64-bit tunes.
Signed-off-by: Andrey Zhizhikin <andrey.z at gmail.com>
---
.../cpuburn/cpuburn-arm_git.bb | 32 +++++++++++++------
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb b/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
index 6189da39f..b21212a43 100644
--- a/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
+++ b/meta-oe/recipes-benchmark/cpuburn/cpuburn-arm_git.bb
@@ -18,21 +18,35 @@ SRC_URI = "git://github.com/ssvb/cpuburn-arm.git \
S = "${WORKDIR}/git"
do_compile() {
- ${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
+
+ # 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}
- for f in burn burn-a7 burn-a8 burn-a9 burn-a53 burn-krait; do
- install -m 0755 $f ${D}${bindir}/$f
- done
+
+ 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 = "(.*)"
--
2.17.1
More information about the Openembedded-devel
mailing list