equal
deleted
inserted
replaced
1 PROG = hello |
1 PROG = hello |
2 # console |
2 # console |
3 # dmx |
3 # dmx |
4 |
4 |
5 all: $(PROG).hex |
5 all: $(PROG).hex |
|
6 |
|
7 build: |
|
8 mkdir -p build/ |
6 |
9 |
7 ## Compiler |
10 ## Compiler |
8 MCU = atmega328p |
11 MCU = atmega328p |
9 |
12 |
10 # CPU clock frequency |
13 # CPU clock frequency |
11 CPU = 16000000 |
14 CPU = 16000000 |
12 |
15 |
13 CC = avr-gcc |
16 CC = avr-gcc |
14 CFLAGS = -g -mmcu=$(MCU) -DF_CPU=$(CPU)UL -Os |
17 CPPFLAGS = -DF_CPU=$(CPU)UL |
|
18 CFLAGS = -g -mmcu=$(MCU) -Os |
15 |
19 |
16 %.elf: %.c |
20 %.elf: %.c |
17 $(CC) $(CFLAGS) -o $@ $+ |
21 $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $*.c |
|
22 $(CC) -MM $(CPPFLAGS) -MT $@ -MF build/$*.d $*.c |
|
23 |
|
24 # existing .d files for rebuilding existing .o's |
|
25 -include $(wildcard build/*.d) |
18 |
26 |
19 %.hex: %.elf |
27 %.hex: %.elf |
20 avr-objcopy -O ihex -R .eeprom $< $@ |
28 avr-objcopy -O ihex -R .eeprom $< $@ |
21 |
29 |
22 .PRECIOUS: %.elf |
30 .PRECIOUS: %.elf |