TARGET=mclock

CC=avr-gcc
SIZE=avr-size
STRIP=avr-strip

MCU=attiny2313

CFLAGS=-Os -Wall -g -mmcu=$(MCU) -ffunction-sections -fdata-sections -fno-inline-small-functions

LDFLAGS = -Wl,-Map=$(TARGET).map,--cref
LDFLAGS += -Wl,--relax
LDFLAGS += -Wl,--gc-sections

OBJS=$(TARGET).o

all: $(TARGET).elf

$(TARGET).elf: $(OBJS)
	$(CC) $(CFLAGS) -o $(TARGET).elf $(OBJS) $(LDFLAGS)
	$(STRIP) $(TARGET).elf
	$(SIZE) --format=sysv $(TARGET).elf

flash: $(TARGET).elf
	avrdude -c usbtiny -B 12	\
	 -p t2313 -P /dev/ttyUSB0 -e	\
	 -V -U flash:w:$(TARGET).elf -U eeprom:w:$(TARGET).ee.hex 

%.o: %.c
	$(CC) $(CFLAGS) -c $<
	


clean:
	rm -rf $(TARGET).elf $(OBJS) $(TARGET).map

