|
@@ -5,7 +5,7 @@ ZIP = zip
|
|
|
|
|
|
SKETCH = max80
|
|
|
TARGET = output/$(SKETCH).ino.bin
|
|
|
-GENFILES = $(SKETCH)/data/www.zip
|
|
|
+GENFILES = www.zip
|
|
|
WWW = www
|
|
|
PORT ?= /dev/ttyACM2
|
|
|
|
|
@@ -16,21 +16,25 @@ all: $(TARGET)
|
|
|
$(TARGET): $(shell find $(SKETCH) -type f) $(GENFILES)
|
|
|
mkdir -p build output
|
|
|
cd $(SKETCH) && \
|
|
|
- $(ARDUINO_CLI) compile -b $(BOARD) \
|
|
|
+ $(ARDUINO_CLI) compile -b $(BOARD) --warnings all \
|
|
|
--build-path ../build --output-dir ../output
|
|
|
|
|
|
-wwwfiles := $(shell find www -type f -print)
|
|
|
+.PHONY: zip
|
|
|
+zip:
|
|
|
+ mkdir -p zip
|
|
|
+ cd www && \
|
|
|
+ $(ZIP) -9DrpX -FS ../zip/www.zip . \
|
|
|
+ -x '.*' -x '#*' -x '*~' -x '*.bak'
|
|
|
|
|
|
-$(SKETCH)/data/www.zip: $(wwwfiles)
|
|
|
- rm -f $@
|
|
|
- ( cd www && $(ZIP) -9DrpX - . -x '.*' -x '#*' -x '*~' -x '*.bak' ) \
|
|
|
- > $@
|
|
|
+# Ugly hack but needed to avoid unnecessary rebuilds
|
|
|
+www.zip: zip
|
|
|
+ if [ ! -f $@ ] || [ zip/$@ -nt $@ ]; then cp -f zip/$@ $@; fi
|
|
|
|
|
|
upload: $(TARGET)
|
|
|
$(ARDUINO_CLI) upload -i $(TARGET) -p $(PORT) -b $(BOARD) $(SKETCH)
|
|
|
|
|
|
clean:
|
|
|
- rm -rf build $(SKETCH)/data/*.zip
|
|
|
+ rm -rf build zip $(GENFILES)
|
|
|
|
|
|
spotless: clean
|
|
|
rm -rf output
|