aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: 705c5e5e2fd771294fa0b1ea46953397c315e4aa (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
BOARD ?=

.PHONY: check jerryscript micropython zephyr.js

help:
	@echo "make <target> BOARD=<board>"
	@echo "<target>: all, jerryscript"
	@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)

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 update --init --recursive --rebase

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