1425bb815Sopenharmony_ci# Copyright JS Foundation and other contributors, http://js.foundation
2425bb815Sopenharmony_ci#
3425bb815Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
4425bb815Sopenharmony_ci# you may not use this file except in compliance with the License.
5425bb815Sopenharmony_ci# You may obtain a copy of the License at
6425bb815Sopenharmony_ci#
7425bb815Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
8425bb815Sopenharmony_ci#
9425bb815Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
10425bb815Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS
11425bb815Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12425bb815Sopenharmony_ci# See the License for the specific language governing permissions and
13425bb815Sopenharmony_ci# limitations under the License.
14425bb815Sopenharmony_ci
15425bb815Sopenharmony_ci-include $(TOPDIR)/Make.defs
16425bb815Sopenharmony_ci
17425bb815Sopenharmony_ci# Jerryscript built-in application information.
18425bb815Sopenharmony_ciCONFIG_JERRYSCRIPT_PRIORITY ?= SCHED_PRIORITY_DEFAULT
19425bb815Sopenharmony_ciCONFIG_JERRYSCRIPT_PROGNAME ?= jerry$(EXEEXT)
20425bb815Sopenharmony_ciCONFIG_JERRYSCRIPT_STACKSIZE ?= 16384
21425bb815Sopenharmony_ci
22425bb815Sopenharmony_ciPROGNAME = $(CONFIG_JERRYSCRIPT_PROGNAME)
23425bb815Sopenharmony_ciPRIORITY = $(CONFIG_JERRYSCRIPT_PRIORITY)
24425bb815Sopenharmony_ciSTACKSIZE = $(CONFIG_JERRYSCRIPT_STACKSIZE)
25425bb815Sopenharmony_ci
26425bb815Sopenharmony_ci# Path to the JerryScript project. If not specified, it is supposed
27425bb815Sopenharmony_ci# that JerryScript is located next to the nuttx-apps folder.
28425bb815Sopenharmony_ciJERRYSCRIPT_ROOT_DIR ?= ../../../jerryscript
29425bb815Sopenharmony_ci
30425bb815Sopenharmony_ciCFLAGS += -std=c99
31425bb815Sopenharmony_ciCFLAGS += -I$(JERRYSCRIPT_ROOT_DIR)/jerry-core/include
32425bb815Sopenharmony_ciCFLAGS += -I$(JERRYSCRIPT_ROOT_DIR)/jerry-ext/include
33425bb815Sopenharmony_ciCFLAGS += -I$(JERRYSCRIPT_ROOT_DIR)/jerry-libm/include
34425bb815Sopenharmony_ci
35425bb815Sopenharmony_ci# These libs should be copied from the JerryScript project.
36425bb815Sopenharmony_ciLIBS = libjerry-core.a libjerry-ext.a libjerry-libm.a
37425bb815Sopenharmony_ci
38425bb815Sopenharmony_ciAPPNAME = jerry
39425bb815Sopenharmony_ciASRCS = setjmp.S
40425bb815Sopenharmony_ciCSRCS = jerry_port.c
41425bb815Sopenharmony_ciMAINSRC = jerry_main.c
42425bb815Sopenharmony_ci
43425bb815Sopenharmony_ci.PHONY: copylibs
44425bb815Sopenharmony_cicopylibs:
45425bb815Sopenharmony_ci	cp $(JERRYSCRIPT_ROOT_DIR)/build/lib/lib*.a .
46425bb815Sopenharmony_ci
47425bb815Sopenharmony_ci$(LIBS): copylibs
48425bb815Sopenharmony_ci	$(firstword $(AR)) x $@
49425bb815Sopenharmony_ci
50425bb815Sopenharmony_ci.PHONY: updateobjs
51425bb815Sopenharmony_ciupdateobjs:
52425bb815Sopenharmony_ci	$(eval OBJS += $(shell find . -name "*.obj"))
53425bb815Sopenharmony_ci
54425bb815Sopenharmony_ci.PHONY: cleanlibs
55425bb815Sopenharmony_cicleanlibs: updateobjs
56425bb815Sopenharmony_ci	rm -f $(OBJS)
57425bb815Sopenharmony_ci
58425bb815Sopenharmony_ciclean:: cleanlibs
59425bb815Sopenharmony_ci
60425bb815Sopenharmony_ci.built: $(LIBS) updateobjs
61425bb815Sopenharmony_ci
62425bb815Sopenharmony_ciinclude $(APPDIR)/Application.mk
63