LAUNCH_BOOTLOADER = launch-bootloader SERIAL = /dev/ttyUSB0 OUT = image MCU_TARGET = atmega32 MCU_CC = avr-gcc OPTIMIZE = -Os WARNINGS = -Wall DEFS = -DF_CPU=16000000 CFLAGS = -MMD -g -mmcu=$(MCU_TARGET) $(OPTIMIZE) $(WARNINGS) $(DEFS) ASFLAGS = -g $(DEFS) LDFLAGS = -Wl,-Map,$(OUT).map OBJCOPY = avr-objcopy OBJDUMP = avr-objdump OBJ = borg16-display.o all: $(OUT).hex $(OUT).lst %.o: %.c $(MCU_CC) $(CFLAGS) -c $< %.o: %.S $(MCU_CC) -mmcu=$(MCU_TARGET) $(ASFLAGS) -c $< $(OUT).elf: $(OBJ) $(MCU_CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) %.hex: %.elf $(OBJCOPY) -j .text -j .data -O ihex $< $@ %.lst: %.elf $(OBJDUMP) -h -S $< > $@ sflash: $(OUT).hex $(LAUNCH_BOOTLOADER) $(SERIAL) 115200 avrdude -p m32 -b 115200 -u -c avr109 -P $(SERIAL) -U f:w:$< -F echo X > $(SERIAL) # vim: set ts=4 noet :