FILES := $(patsubst %.cpp,%,$(wildcard *.cpp)) all: robocup.elf; robocup.hex: robocup.elf avr-objcopy -O ihex -R .eeprom $< $@ robocup.elf: $(FILES:%=%.o) avr-g++ -mmcu=atmega32 -Os -o $@ $^ %.o: %.cpp avr-g++ -c -mmcu=atmega32 -Os -o $@ $< %.d: %.cpp @avr-g++ -MM -mmcu=atmega32 -Os -MF $@ -MT $(patsubst %.cpp,%.o,$<) -MT $@ $< program: robocup.hex sudo avrdude -P usb -c avrisp2 -p m32 -U flash:w:$< clean: rm -f robocup.hex robocup.elf $(FILES:%=%.o) $(FILES:%=%.d) .PHONY: clean -include $(FILES:%=%.d)