64 lines
1.3 KiB
Makefile
64 lines
1.3 KiB
Makefile
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/ttyACM0
|
|
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)
|