aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: aa2ebe6e39beda95d4be4e19eaba557a3df31fc4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
BOARD ?=

.PHONY: check jerryscript micropython zephyr.js

help:
	@echo "make <target> BOARD=<board>"
	@echo "<target>: all, jerryscript, micropython"
	@echo "<board>: frdm_k64f, 96b_carbon, cc3200_launchxl, etc."

all: jerryscript micropython

jerryscript: check
	$(MAKE) -C jerryscript -f ./targets/zephyr/Makefile.zephyr BOARD=$(BOARD)
	cp jerryscript/build/$(BOARD)/zephyr/zephyr.bin jerryscript-$(BOARD).bin

micropython: check
	$(MAKE) -C micropython/zephyr BOARD=$(BOARD)
	cp micropython/zephyr/outdir/$(BOARD)/zephyr.bin micropython-$(BOARD).bin

zephyr.js: check
	@if [ -z "$$ZJS_BASE" ]; then echo "You must use zmake-z.js <targets> BOARD=<board> to build Zephyr.js"; false; fi
	# Workaround for some Kconfig problem
	$(MAKE) -C zephyr.js/deps/zephyr mrproper
	$(MAKE) -C zephyr.js BOARD=$(BOARD)
	cp zephyr.js/outdir/$(BOARD)/zephyr.bin zephyr.js-$(BOARD).bin

clean: check
	$(MAKE) -C jerryscript -f ./targets/zephyr/Makefile.zephyr clean BOARD=$(BOARD)

pristine:
	rm -rf jerryscript/build
	rm -rf micropython/zephyr/build micropython/zephyr/outdir
	rm -rf zephyr.js/outdir zephyr.js/deps/jerryscript/build

check:
	@if [ -z "$$ZEPHYR_BASE" ]; then echo "You did not source zephyr-environ.sh!"; false; fi
	@if [ -z "$(BOARD)" ]; then echo "You must specify BOARD=<board>"; false; fi

update:
	git submodule sync --recursive
	git submodule update --init --recursive --checkout

sdk:
	wget -c -P downloads https://nexus.zephyrproject.org/content/repositories/releases/org/zephyrproject/zephyr-sdk/0.8.2-i686/zephyr-sdk-0.8.2-i686-setup.run
	sh downloads/zephyr-sdk-0.8.2-i686-setup.run -- -d $$PWD/sdk