summaryrefslogtreecommitdiff
path: root/ao-bringup-avr/Makefile
blob: 1340594a5c1c8f73945f79b15db7ec01c692b815 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
MCU=atmega32u4
DUDECPUTYPE=m32u4
#PROGRAMMER=stk500v2 -P usb
PROGRAMMER=usbtiny
LOADCMD=avrdude
LOADARG=-p $(DUDECPUTYPE) -c $(PROGRAMMER) -e -U flash:w:
CC=avr-gcc
OBJCOPY=avr-objcopy
CFLAGS=-g -mmcu=$(MCU) -Wall -Wstrict-prototypes -Os -mcall-prologues

OBJS = ao-blink.o ao-switch.o ao-uart.o ao-bringup.o

all: ao-blink.hex ao-switch.hex ao-uart.hex

ao-blink.hex: ao-blink
	avr-size ao-blink
	$(OBJCOPY) -R .eeprom -O ihex ao-blink $@

ao-blink: ao-blink.o
	$(CC) $(CFLAGS) -o $@ ao-blink.o

ao-switch.hex: ao-switch
	avr-size ao-switch
	$(OBJCOPY) -R .eeprom -O ihex ao-switch $@

ao-switch: ao-switch.o ao-bringup.o
	$(CC) $(CFLAGS) -o $@ ao-switch.o ao-bringup.o

ao-switch.s: ao-switch.c
	$(CC) $(CFLAGS) -S -o $@ ao-switch.c

ao-uart.hex: ao-uart
	avr-size ao-uart
	$(OBJCOPY) -R .eeprom -O ihex ao-uart $@

ao-uart: ao-uart.o ao-bringup.o
	$(CC) $(CFLAGS) -o $@ ao-uart.o ao-bringup.o

ao-uart.s: ao-uart.c
	$(CC) $(CFLAGS) -S -o $@ ao-uart.c

$(OBJS): ao-bringup.h

load-blink: ao-blink.hex
	$(LOADCMD) $(LOADARG)ao-blink.hex

load-switch: ao-switch.hex
	$(LOADCMD) $(LOADARG)ao-switch.hex

load-uart: ao-uart.hex
	$(LOADCMD) $(LOADARG)ao-uart.hex