all: lcd.hex lcd.bin lcd.S lcd.dump

lcd.bin: lcd.o hd44780.o

lcd.o: lcd.c

hd44780.o: hd44780.c

%.o: %.c
	avr-gcc -Wall -g -Os -mmcu=atmega1284p -c $< -o $@
	
%.bin: %.o
	avr-gcc -Wall -g -Os -mmcu=atmega1284p -o $@ $^
	
%.hex: %.bin
	avr-objcopy -j .text -j .data -O ihex $< $@

%.dump: %.bin
	avr-objcopy -O binary $< $@

%.S: %.bin
	avr-objdump -d $< >$@
clean:
	rm -f *.o
	rm -f *.bin
	rm -f *.hex
	rm -f *.dump

