32 lines
567 B
Makefile
32 lines
567 B
Makefile
![]() |
FILES := $(patsubst %.cpp,%,$(wildcard *.cpp))
|
||
|
|
||
|
|
||
|
all: robocup.elf;
|
||
|
|
||
|
|
||
|
include $(FILES:%=%.d)
|
||
|
|
||
|
|
||
|
robocup.hex: robocup.elf
|
||
|
avr-objcopy -O ihex -R .eeprom $< $@
|
||
|
|
||
|
robocup.elf: $(FILES:%=%.o)
|
||
|
avr-g++ -mmcu=atmega32 -o $@ $^
|
||
|
|
||
|
%.o: %.cpp
|
||
|
avr-g++ -c -mmcu=atmega32 -o $@ $<
|
||
|
|
||
|
%.d: %.cpp
|
||
|
@set -e; rm -f $@; \
|
||
|
avr-g++ -M -mmcu=atmega32 -MF $@.$$$$ $<; \
|
||
|
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
|
||
|
rm -f $@.$$$$
|
||
|
|
||
|
program: robocup.hex
|
||
|
sudo avrdude -P usb -c avrisp2 -p m32 -U $<
|
||
|
|
||
|
clean:
|
||
|
rm -f robocup.hex robocup.elf $(FILES:%=%.o) $(FILES:%=%.d)
|
||
|
|
||
|
.PHONY: clean
|