summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile38
1 files changed, 38 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..642202a
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,38 @@
1MCU=atmega48
2AVRDUDE=avrdude
3ACC=avr-gcc
4AOBJCOPY=avr-objcopy
5ALD=avr-ld
6CFLAGS=-Wall -Wextra -Wno-unused-parameter -pedantic -std=c99
7ifdef PIN
8DPIN=-DPIN=\"$(PIN)\"
9endif
10ACFLAGS=-g -mmcu=$(MCU) $(CFLAGS) $(DPIN) -Os -mcall-prologues
11# ALDFLAGS=-L/usr/avr/lib/avr4 -L/usr/lib/binutils/avr/2.18
12LD=gcc
13CC=gcc
14CXX=g++ -g
15LDXX=g++ -g
16
17love: kbc.flash
18
19%.flash: %.ld.o
20 $(AOBJCOPY) -O binary $< $@
21
22%.eeprom: %.ld.o
23 $(AOBJCOPY) -j .eeprom -O binary $^ $@
24
25%.ld.o: %.o
26 $(ACC) $(ACFLAGS) $(ALDFLAGS) -o $@ $<
27
28%.o: %.c
29 $(ACC) $(ACFLAGS) -c -o $@ $<
30
31flash: kbc.flash
32 $(AVRDUDE) -y -p m48 -E noreset -U $^
33
34clean:
35 rm -f *.flash *.eeprom *.o
36
37.PHONY: love flash clean
38