MCU ?= atmega644pa
F_CPU ?= 8000000UL

BUILD_TYPE ?= dev
VERSION ?= 0.1
PREFIX ?= ENO

CC = avr-gcc
OBJCOPY = avr-objcopy

SRC = src/main.c

OUTDIR = build/$(BUILD_TYPE)
TARGET = $(OUTDIR)/$(PREFIX)_$(VERSION)

CFLAGS = -mmcu=$(MCU) -DF_CPU=$(F_CPU) -Os -Wall -DVERSION=\"$(VERSION)\"

all: $(TARGET).hex

$(TARGET).elf: $(SRC)
	@mkdir -p $(OUTDIR)
	$(CC) $(CFLAGS) $< -o $@

$(TARGET).hex: $(TARGET).elf
	$(OBJCOPY) -O ihex -R .eeprom $< $@

size: $(TARGET).elf
	avr-size $<