include ../mk/build.mk CLOCK_SPEED = 16000000L INCLUDE_PATH = ../include HEADER_SUBDIR = tabby CROSS = avr- CC = $(CROSS)gcc CFLAGS = $(CGFLAGS) -Wall -Os -mmcu=atmega328p -I$(INCLUDE_PATH) \ -DF_CPU=$(CLOCK_SPEED) LDFLAGS = OBJCOPY = $(CROSS)objcopy OBJCOPY_FLAGS = -S AVRDUDE = avrdude AVRDUDE_DEVICE = /dev/cu.usbmodem1411 AVRDUDE_FLAGS = -c arduino -p atmega328p -b 115200 -D -P $(AVRDUDE_DEVICE) HEADERS_LOCAL = HEADERS_BUILD = $(HEADERS_LOCAL) \ $(addprefix $(INCLUDE_PATH)/$(HEADER_SUBDIR)/,$(HEADERS)) HEADERS = avr/buffer.h avr/uart.h link.h OBJS = send.o recv.o uart.o RECV_NAME = recv RECV_BIN = $(RECV_NAME).bin RECV_ELF = $(RECV_NAME).elf RECV_OBJS = recv.o uart.o SEND_NAME = send SEND_BIN = $(SEND_NAME).bin SEND_ELF = $(SEND_NAME).elf SEND_OBJS = send.o uart.o IMAGES_BIN = $(RECV_BIN) $(SEND_BIN) IMAGES_ELF = $(RECV_ELF) $(SEND_ELF) RM = /bin/rm all: $(IMAGES_BIN) $(IMAGES_BIN): %.bin: %.elf $(OBJCOPY) $(OBJCOPY_FLAGS) -O binary $< $@ $(SEND_ELF): $(SEND_OBJS) $(CC) $(CFLAGS) $(SEND_OBJS) -o $@ $(RECV_ELF): $(RECV_OBJS) $(CC) $(CFLAGS) $(RECV_OBJS) -o $@ $(OBJS): %.o: %.c $(HEADERS_BUILD) $(CC) $(CFLAGS) -c $< flash-send: $(SEND_BIN) $(AVRDUDE) $(AVRDUDE_FLAGS) -U flash:w:$(SEND_BIN):r flash-recv: $(RECV_BIN) $(AVRDUDE) $(AVRDUDE_FLAGS) -U flash:w:$(RECV_BIN):r clean: $(RM) -f $(IMAGES_BIN) $(IMAGES_ELF) $(OBJS)