1*4882a593SmuzhiyunSUMMARY = "A collection of cpuburn programs tuned for different ARM hardware" 2*4882a593SmuzhiyunLICENSE = "MIT" 3*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://cpuburn-a53.S;beginline=1;endline=22;md5=3b7ccd70144c16d3fe14ac491c2d4a87" 4*4882a593Smuzhiyun 5*4882a593SmuzhiyunRPROVIDES:${PN} = "cpuburn-neon" 6*4882a593SmuzhiyunPROVIDES += "cpuburn-neon" 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunSRCREV = "ad7e646700d14b81413297bda02fb7fe96613c3f" 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunPV = "1.0+git${SRCPV}" 11*4882a593Smuzhiyun 12*4882a593SmuzhiyunSRC_URI = "git://github.com/ssvb/cpuburn-arm.git;branch=master;protocol=https \ 13*4882a593Smuzhiyun file://0001-cpuburn-a8.S-Remove-.func-.endfunc.patch \ 14*4882a593Smuzhiyun file://0002-burn.S-Add.patch \ 15*4882a593Smuzhiyun file://0003-burn.S-Remove-.func-.endfunc.patch \ 16*4882a593Smuzhiyun " 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunS = "${WORKDIR}/git" 19*4882a593Smuzhiyun 20*4882a593Smuzhiyundo_compile() { 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun # If the arch is set to ARM 64-bit - we only produce and ship burn-a53 version. 23*4882a593Smuzhiyun # In case of ARM 32-bit - we would build all variants, since burn-a53 supports both 24*4882a593Smuzhiyun # 32 and 64-bit builds 25*4882a593Smuzhiyun if ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', 'true', 'false', d)}; then 26*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53 27*4882a593Smuzhiyun else 28*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} burn.S -o burn 29*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a7.S -o burn-a7 30*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a8.S -o burn-a8 31*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a9.S -o burn-a9 32*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-a53.S -o burn-a53 33*4882a593Smuzhiyun ${CC} ${CFLAGS} ${LDFLAGS} cpuburn-krait.S -o burn-krait 34*4882a593Smuzhiyun fi 35*4882a593Smuzhiyun} 36*4882a593Smuzhiyun 37*4882a593Smuzhiyundo_install() { 38*4882a593Smuzhiyun install -d ${D}${bindir} 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun if ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', 'true', 'false', d)}; then 41*4882a593Smuzhiyun install -m 0755 burn-a53 ${D}${bindir} 42*4882a593Smuzhiyun else 43*4882a593Smuzhiyun for f in burn burn-a7 burn-a8 burn-a9 burn-a53 burn-krait; do 44*4882a593Smuzhiyun install -m 0755 $f ${D}${bindir}/$f 45*4882a593Smuzhiyun done 46*4882a593Smuzhiyun fi 47*4882a593Smuzhiyun} 48*4882a593Smuzhiyun 49*4882a593SmuzhiyunCOMPATIBLE_MACHINE ?= "(^$)" 50*4882a593SmuzhiyunCOMPATIBLE_MACHINE:armv7a = "(.*)" 51*4882a593SmuzhiyunCOMPATIBLE_MACHINE:armv7ve = "(.*)" 52*4882a593SmuzhiyunCOMPATIBLE_MACHINE:aarch64 = "(.*)" 53