summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 440cf00e41fafd9db3098404bd637c5b53fd3bea (plain) (blame)
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
RELEASE_GOOS = openbsd
RELEASE_GOARCH = amd64

SENSOR_SRC = SensorStation/SensorStation.ino
HVAC_SRC = HvacStation/HvacStation.ino
SERVER_SRC = server/*.go

BOARD = esp32:esp32:lilygo_t_display
PORT = /dev/ttyACM0

CFLAGS = -b ${BOARD}
UPLOADFLAGS = -p ${PORT} ${CFLAGS}

all: SensorStation/build HvacStation/build server/server

server/server: ${SERVER_SRC} server/dashboard.html
	go build -o $@ ./server

fmt: ${SERVER_SRC}
	gofmt -l -s -w ./server

release:
	GOOS=${RELEASE_GOOS} GOARCH=${RELEASE_GOARCH} go build -o server/server ${SERVER_SRC}

clean:
	rm -r server/server SensorStation/build HvacStation/build

SensorStation/build: ${SENSOR_SRC}
	arduino-cli compile ${CFLAGS} SensorStation
	echo "" > $@
	@echo done

upload_sensor: SensorStation/build
	arduino-cli upload ${UPLOADFLAGS} SensorStation
	@echo done

HvacStation/build: ${HVAC_SRC}
	arduino-cli compile ${CFLAGS} HvacStation
	echo "" > $@
	@echo done

upload_hvac: HvacStation/build
	arduino-cli upload ${UPLOADFLAGS} HvacStation
	@echo done

monitor:
	arduino-cli monitor -b ${BOARD} -p ${PORT}

.PHONY: monitor upload_sensor upload_hvac release