2 # Copyright (C) 2018 Lim Guo Wei
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
11 PKG_SOURCE_DATE
:=2023-01-25
12 PKG_SOURCE_VERSION
:=d5fad6bd094899101a4e5fd53af7298160ced6ab
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_SOURCE_DATE
).
tar.gz
16 PKG_SOURCE_URL
:=https
://codeload.github.com
/eembc
/coremark
/tar.gz
/$(PKG_SOURCE_VERSION
)?
17 PKG_HASH
:=76f3b98fc940d277521023dc6e106551ef4a2180fa4c3da8cd5bf933aa494ef2
18 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(PKG_SOURCE_VERSION
)
20 PKG_MAINTAINER
:=Lim Guo Wei
<limguowei@gmail.com
> \
21 Aleksander Jan Bajkowski
<olek2@wp.pl
>
22 PKG_LICENSE
:=Apache-2.0
23 PKG_LICENSE_FILES
:=LICENSE.md
27 include $(INCLUDE_DIR
)/package.mk
29 define Package
/coremark
32 TITLE
:=CoreMark Embedded Microprocessor Benchmark
33 URL
:=https
://github.com
/eembc
/coremark
36 define Package
/coremark
/description
37 Embedded Microprocessor Benchmark
40 define Package
/coremark
/config
41 config COREMARK_OPTIMIZE_O3
42 bool
"Use all optimizations (-O3)"
43 depends on PACKAGE_coremark
46 This enables additional optmizations using the
-O3 compilation flag.
48 config COREMARK_ENABLE_MULTITHREADING
49 bool
"Enable multithreading support"
50 depends on PACKAGE_coremark
53 This enables multithreading support
55 config COREMARK_NUMBER_OF_THREADS
56 int
"Number of threads"
57 depends on COREMARK_ENABLE_MULTITHREADING
60 Number of threads to run in parallel
63 TARGET_CFLAGS
+= -flto
65 ifeq ($(CONFIG_COREMARK_OPTIMIZE_O3
),y
)
66 TARGET_CFLAGS
:= $(filter-out -O
%,$(TARGET_CFLAGS
)) -O3
69 ifeq ($(CONFIG_COREMARK_ENABLE_MULTITHREADING
),y
)
70 EXTRA_CFLAGS
:= -DMULTITHREAD
=$(CONFIG_COREMARK_NUMBER_OF_THREADS
) -DUSE_PTHREAD
74 $(SED
) 's|EXE = .exe|EXE =|' $(PKG_BUILD_DIR
)/posix
/core_portme.mak
75 mkdir
$(PKG_BUILD_DIR
)/$(ARCH
)
76 $(CP
) -r
$(PKG_BUILD_DIR
)/linux
/* $(PKG_BUILD_DIR
)/$(ARCH
)
77 $(MAKE
) -C
$(PKG_BUILD_DIR
) PORT_DIR
=$(ARCH
) $(MAKE_FLAGS
) \
78 PORT_CFLAGS
="$(TARGET_CFLAGS)" XCFLAGS
="$(EXTRA_CFLAGS)" compile
81 define Package
/coremark
/install
82 $(INSTALL_DIR
) $(1)/bin
83 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/coremark
$(1)/bin
/
86 $(eval
$(call BuildPackage
,coremark
))