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
16425bb815Sopenharmony_ci# Default target for running the build test outside the Travis CI environment.
17425bb815Sopenharmony_ciall:
18425bb815Sopenharmony_ci	$(MAKE) install
19425bb815Sopenharmony_ci	$(MAKE) script
20425bb815Sopenharmony_ci
21425bb815Sopenharmony_ci
22425bb815Sopenharmony_ci## Targets for installing build dependencies of the Zephyr JerryScript target.
23425bb815Sopenharmony_ci
24425bb815Sopenharmony_ci# Install tools via apt.
25425bb815Sopenharmony_ciinstall-apt-get-deps:
26425bb815Sopenharmony_ci	sudo apt-get install -q -y gperf dfu-util device-tree-compiler
27425bb815Sopenharmony_ci
28425bb815Sopenharmony_ci# Install Zephyr SDK.
29425bb815Sopenharmony_ciinstall-zephyr-sdk:
30425bb815Sopenharmony_ci	wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.10.0/zephyr-sdk-0.10.0-setup.run -O ../zephyr-sdk-0.10.0-setup.run
31425bb815Sopenharmony_ci	sh ../zephyr-sdk-0.10.0-setup.run -- -y -d $(CURDIR)/../zephyr-sdk-0.10.0
32425bb815Sopenharmony_ci
33425bb815Sopenharmony_ci# Fetch Zephyr Project repository and install python dependencies.
34425bb815Sopenharmony_ciinstall-zephyr:
35425bb815Sopenharmony_ci	git clone https://github.com/zephyrproject-rtos/zephyr.git ../zephyr -b v1.14-branch
36425bb815Sopenharmony_ci	pip3 install -U pip
37425bb815Sopenharmony_ci	pip3 install -U setuptools
38425bb815Sopenharmony_ci	pip3 install -r ../zephyr/scripts/requirements.txt
39425bb815Sopenharmony_ci
40425bb815Sopenharmony_ci# Install recent CMake
41425bb815Sopenharmony_ciinstall-cmake:
42425bb815Sopenharmony_ci	pip install cmake
43425bb815Sopenharmony_ci	cmake --version
44425bb815Sopenharmony_ci
45425bb815Sopenharmony_ci# Perform all the necessary (JerryScript-independent) installation steps.
46425bb815Sopenharmony_ciinstall-noapt: install-zephyr-sdk install-zephyr install-cmake
47425bb815Sopenharmony_ciinstall: install-apt-get-deps install-noapt
48425bb815Sopenharmony_ci
49425bb815Sopenharmony_ci
50425bb815Sopenharmony_ci## Targets for building Zephyr with JerryScript.
51425bb815Sopenharmony_ci
52425bb815Sopenharmony_ci# Build the firmware (Zephyr with JerryScript).
53425bb815Sopenharmony_ciSHELL=bash
54425bb815Sopenharmony_ciscript:
55425bb815Sopenharmony_ci	export ZEPHYR_TOOLCHAIN_VARIANT=zephyr && \
56425bb815Sopenharmony_ci	export ZEPHYR_SDK_INSTALL_DIR=$(CURDIR)/../zephyr-sdk-0.10.0 && \
57425bb815Sopenharmony_ci	source ../zephyr/zephyr-env.sh && \
58425bb815Sopenharmony_ci	$(MAKE) -f ./targets/zephyr/Makefile.zephyr BOARD=arduino_101
59