1################################################################################ 2# 3# CoreMark-PRO 4# 5################################################################################ 6 7COREMARK_PRO_VERSION = 1.1.2743 8COREMARK_PRO_SITE = $(call github,eembc,coremark-pro,v$(COREMARK_PRO_VERSION)) 9COREMARK_PRO_LICENSE = Apache-2.0 10COREMARK_PRO_LICENSE_FILES = LICENSE.md 11COREMARK_PRO_DEPENDENCIES = perl 12 13COREMARK_PRO_LDFLAGS = $(TARGET_LDFLAGS) -lm 14 15ifeq ($(BR2_ENDIAN),"BIG") 16COREMARK_PRO_DEFINES += \ 17 EE_BIG_ENDIAN=1 \ 18 EE_LITTLE_ENDIAN=0 19else 20COREMARK_PRO_DEFINES += \ 21 EE_BIG_ENDIAN=0 \ 22 EE_LITTLE_ENDIAN=1 23endif 24 25ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) 26COREMARK_PRO_DEFINES += \ 27 USE_NATIVE_PTHREAD=1 \ 28 USE_SINGLE_CONTEXT=0 29COREMARK_PRO_LDFLAGS += -lpthread 30else 31COREMARK_PRO_DEFINES += \ 32 USE_NATIVE_PTHREAD=0 \ 33 USE_SINGLE_CONTEXT=1 34endif 35 36COREMARK_PRO_MAKE_OPTS += \ 37 LINKER_LAST="$(COREMARK_PRO_LDFLAGS)" \ 38 PLATFORM_DEFINES="$(COREMARK_PRO_DEFINES)" \ 39 TARGET=linux$(if $(BR2_ARCH_IS_64),64) \ 40 EXE= 41 42define COREMARK_PRO_BUILD_CMDS 43 $(TARGET_MAKE_ENV) $(MAKE1) CC="$(TARGET_CC)" LD="$(TARGET_CC)" -C $(@D) \ 44 $(COREMARK_PRO_MAKE_OPTS) build 45endef 46 47COREMARK_PRO_MARKS = cjpeg-rose7-preset core linear_alg-mid-100x100-sp loops-all-mid-10k-sp nnet_test parser-125k radix2-big-64k sha-test zip-test 48COREMARK_PRO_SCRIPTS = results_parser.pl cert_median.pl cert_mark.pl headings.txt 49 50define COREMARK_PRO_INSTALL_TARGET_CMDS 51 mkdir -p $(TARGET_DIR)/usr/share/coremark-pro/logs 52 $(foreach m,$(COREMARK_PRO_MARKS),\ 53 $(INSTALL) -D $(@D)/builds/linux$(if $(BR2_ARCH_IS_64),64)/gcc$(if $(BR2_ARCH_IS_64),64)/bin/$(m) $(TARGET_DIR)/usr/bin/$(m)$(sep) \ 54 size $(TARGET_DIR)/usr/bin/$(m) > $(TARGET_DIR)/usr/share/coremark-pro/logs/$(m).size.log$(sep)) 55 $(INSTALL) -D $(@D)/builds/linux$(if $(BR2_ARCH_IS_64),64)/gcc$(if $(BR2_ARCH_IS_64),64)/data/libbmp/Rose256.bmp $(TARGET_DIR)/usr/share/coremark-pro/Rose256.bmp 56 $(foreach s,$(COREMARK_PRO_SCRIPTS),\ 57 $(INSTALL) -D $(@D)/util/perl/$(s) $(TARGET_DIR)/usr/share/coremark-pro/util/perl/$(s)$(sep)) 58 $(Q)sed "s/@COREMARK_PRO_MARKS@/$(COREMARK_PRO_MARKS)/" \ 59 package/coremark-pro/coremark-pro.sh.in >$(TARGET_DIR)/usr/bin/coremark-pro.sh 60endef 61 62$(eval $(generic-package)) 63