/
Makefile
63 lines (42 loc) · 1.95 KB
/
Makefile
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
ARCH ?= x64
MPY_ABI_VERSION ?= 6.2
MPY_DIR ?= ../micropython
MICROPYTHON_BIN ?= micropython
VERSION := $(shell git describe --tags --always)
MPY_DIR_ABS = $(abspath $(MPY_DIR))
MODULES_PATH = ./dist/$(ARCH)_$(MPY_ABI_VERSION)
$(MODULES_PATH)/emltrees.mpy:
make -C src/emltrees/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean dist
$(MODULES_PATH)/emlneighbors.mpy:
make -C src/emlneighbors/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean dist
$(MODULES_PATH)/emliir.mpy:
make -C src/emliir/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean dist
$(MODULES_PATH)/emlfft.mpy:
make -C src/emlfft/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean dist
$(MODULES_PATH)/tinymaix_cnn.mpy:
make -C src/tinymaix_cnn/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean dist
emltrees.results: $(MODULES_PATH)/emltrees.mpy
MICROPYPATH=$(MODULES_PATH) $(MICROPYTHON_BIN) tests/test_trees.py
emlneighbors.results: $(MODULES_PATH)/emlneighbors.mpy
MICROPYPATH=$(MODULES_PATH) $(MICROPYTHON_BIN) tests/test_neighbors.py
emliir.results: $(MODULES_PATH)/emliir.mpy
MICROPYPATH=$(MODULES_PATH) $(MICROPYTHON_BIN) tests/test_iir.py
emlfft.results: $(MODULES_PATH)/emlfft.mpy
MICROPYPATH=$(MODULES_PATH) $(MICROPYTHON_BIN) tests/test_fft.py
tinymaix_cnn.results: $(MODULES_PATH)/tinymaix_cnn.mpy
MICROPYPATH=$(MODULES_PATH) $(MICROPYTHON_BIN) tests/test_cnn.py
.PHONY: clean
clean:
make -C src/emltrees/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean
make -C src/emlneighbors/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean
make -C src/emliir/ ARCH=$(ARCH) MPY_DIR=$(MPY_DIR_ABS) V=1 clean
rm -rf ./dist
RELEASE_NAME = emlearn-micropython-$(VERSION)
# NOTE: does not depend on dist.
release:
mkdir $(RELEASE_NAME)
cp -r dist/* $(RELEASE_NAME)
zip -r $(RELEASE_NAME).zip $(RELEASE_NAME)
#cp $(RELEASE_NAME).zip emlearn-micropython-latest.zip
check: emltrees.results emlneighbors.results emliir.results
dist: $(MODULES_PATH)/emltrees.mpy $(MODULES_PATH)/emlneighbors.mpy $(MODULES_PATH)/emliir.mpy