PART=at90s2313
SPEED=4000000UL

PROGRAMMER=avrispmkII -P usb

TARGET=blinknman.hex

CC=avr-gcc
CFLAGS=-Os -Wall -Werror -mcall-prologues -mmcu=$(PART) -std=gnu99 -DF_CPU=$(SPEED)
OBJ2HEX=avr-objcopy 

SRCS=\
	blinknman.c

OBJS=$(SRCS:.c=.o)
ASMS=$(SRCS:.c=.s)

AVRDUDE=sudo avrdude -c ${PROGRAMMER} -p ${PART}

.c.s:
	$(CC) $(CFLAGS) -o $@ -S $<

all: $(TARGET)

program: blinknman.hex
	$(AVRDUDE) -e -U flash:w:blinknman.hex

rdfuses:
	$(AVRDUDE) -q

blinknman.obj : $(OBJS)
	$(CC) $(CFLAGS) -o $@ $+
	avr-size --common $@

blinknman.o: blinknman.c

%.hex : %.obj
	$(OBJ2HEX) -R .eeprom -O ihex $< $@

clean :
	rm -f *.hex *.obj $(OBJS) $(ASMS) *.eep

