################################################################################ # # CoreMark-PRO # ################################################################################ COREMARK_PRO_VERSION = 1.1.2743 COREMARK_PRO_SITE = $(call github,eembc,coremark-pro,v$(COREMARK_PRO_VERSION)) COREMARK_PRO_LICENSE = Apache-2.0 COREMARK_PRO_LICENSE_FILES = LICENSE.md COREMARK_PRO_DEPENDENCIES = perl COREMARK_PRO_LDFLAGS = $(TARGET_LDFLAGS) -lm ifeq ($(BR2_ENDIAN),"BIG") COREMARK_PRO_DEFINES += \ EE_BIG_ENDIAN=1 \ EE_LITTLE_ENDIAN=0 else COREMARK_PRO_DEFINES += \ EE_BIG_ENDIAN=0 \ EE_LITTLE_ENDIAN=1 endif ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) COREMARK_PRO_DEFINES += \ USE_NATIVE_PTHREAD=1 \ USE_SINGLE_CONTEXT=0 COREMARK_PRO_LDFLAGS += -lpthread else COREMARK_PRO_DEFINES += \ USE_NATIVE_PTHREAD=0 \ USE_SINGLE_CONTEXT=1 endif COREMARK_PRO_MAKE_OPTS += \ LINKER_LAST="$(COREMARK_PRO_LDFLAGS)" \ PLATFORM_DEFINES="$(COREMARK_PRO_DEFINES)" \ TARGET=linux$(if $(BR2_ARCH_IS_64),64) \ EXE= define COREMARK_PRO_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_CC)" -C $(@D) \ $(COREMARK_PRO_MAKE_OPTS) build endef COREMARK_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 COREMARK_PRO_SCRIPTS = results_parser.pl cert_median.pl cert_mark.pl headings.txt define COREMARK_PRO_INSTALL_TARGET_CMDS mkdir -p $(TARGET_DIR)/usr/share/coremark-pro/logs $(foreach m,$(COREMARK_PRO_MARKS),\ $(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) \ size $(TARGET_DIR)/usr/bin/$(m) > $(TARGET_DIR)/usr/share/coremark-pro/logs/$(m).size.log$(sep)) $(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 $(foreach s,$(COREMARK_PRO_SCRIPTS),\ $(INSTALL) -D $(@D)/util/perl/$(s) $(TARGET_DIR)/usr/share/coremark-pro/util/perl/$(s)$(sep)) $(Q)sed "s/@COREMARK_PRO_MARKS@/$(COREMARK_PRO_MARKS)/" \ package/coremark-pro/coremark-pro.sh.in >$(TARGET_DIR)/usr/bin/coremark-pro.sh endef $(eval $(generic-package))