
DEVICE = atmega8
F_CPU = 8000000

#ISPPORT = /dev/ttyACM0
ISPPORT = avrdoper
#ISPBAUD = -b 9600
ISPBAUD =
PROGRAMMER = stk500v2

AVRDUDE = avrdude
CC = avr-gcc
LD = avr-objcopy
CFLAGS = -Wall -Os -I. -mmcu=$(DEVICE) -DF_CPU=$(F_CPU)
LDFLAGS =-j .text -O ihex

HEX = main.hex
OBJS = main.o alcd.o

ALL = $(HEX)

.PHONY: all clean nothing

all: $(ALL)

nothing: ;

clean:
	@rm -f *.o $(ALL)

write: $(HEX)
	$(AVRDUDE) -p $(DEVICE) -F $(ISPBAUD) -c $(PROGRAMMER) -P $(ISPPORT) -U flash:w:$(HEX)

size:
	avr-size -d $(HEX)

%.o: %.c Makefile ledsegments.h config.h ports.h
	$(CC) $(CFLAGS) -c $< -o $@

%.bin: $(OBJS) Makefile
	$(CC) $(CFLAGS) $(OBJS) -o $@

%.hex: %.bin $(OBJS) Makefile
	$(LD) $(LDFLAGS) $< $@
