# Makefile

PROJECT_NAME    = tm1637
SRC_DIR         = ./src
# INC_DIR         = ./inc
OBJ_DIR         = ./obj
CFLAGS          = --model-small -mmcs51 --std-c99
LDFLAGS         = 
SRCS            = $(wildcard $(SRC_DIR)/*.c)
RELS            = $(patsubst %.c, $(OBJ_DIR)/%.rel, $(notdir $(SRCS)))
PORT		= /dev/ttyUSB0
PSU_PORT	= /dev/ttyACM3
PWR_CYCLE_CMD	= tools/koradctl ${PSU_PORT} off-on

all: $(OBJ_DIR)/$(PROJECT_NAME).ihx

$(OBJ_DIR)/$(PROJECT_NAME).ihx: $(RELS)
	sdcc $(CFLAGS) $(LDFLAGS) $^ -o $@

$(OBJ_DIR)/%.rel: $(SRC_DIR)/%.c # $(INC_DIR)/%.h
	sdcc $(CFLAGS) -c $< -o $@

prog: $(OBJ_DIR)/$(PROJECT_NAME).ihx
	stc8prog -p ${PORT} -r ${PWR_CYCLE_CMD} \; -e -f $<

.PHONY: pwrcycle
pwrcycle:
	${PWR_CYCLE_CMD}

.PHONY: clean
clean:
	rm -rf $(OBJ_DIR)/*
