31 lines
792 B
Makefile
31 lines
792 B
Makefile
GIT_VERSION := $(shell git describe --dirty=-d --always --tags --abbrev)
|
|
|
|
CC=avr-gcc
|
|
#CCOPTS=-mmcu=atmega164a -std=c11 -flto -Os -ggdb -Wall -Wextra -pedantic -DF_CPU=8000000UL
|
|
CCOPTS=-mmcu=atmega32 -std=c11 -flto -Os -ggdb -mrelax -Wall -Wextra -Wno-char-subscripts -pedantic -DF_CPU=8000000UL -DVERSION=\"$(GIT_VERSION)\"
|
|
|
|
|
|
CCSRCS ::= uart.c main.c modem.c timer.c lcd.c ui.c
|
|
|
|
all: fw.elf
|
|
|
|
prog: fw.elf
|
|
avrdude -c avrisp2 -p m32 -U flash:w:$<
|
|
|
|
fw.elf: $(addprefix objs/,$(CCSRCS:.c=.o))
|
|
$(CC) $(CCOPTS) -o $@ $^
|
|
@size $@
|
|
|
|
objs/%.o: src/%.c
|
|
$(CC) $(CCOPTS) -c -MMD -MP -o $@ $<
|
|
@cp objs/$*.d objs/$*.P; rm -f objs/$*.d
|
|
|
|
clean:
|
|
rm -f fw.elf\
|
|
$(addprefix objs/,$(CCSRCS:.c=.o))\
|
|
$(addprefix objs/,$(CCSRCS:.c=.P))
|
|
|
|
-include $(addprefix objs/,$(CCSRCS:.c=.P))
|
|
|
|
.PHONY: clean all prog
|