jump to c
[cortex-from-scratch] / Makefile
1 CC=arm-none-eabi-gcc
2 LD=arm-none-eabi-ld
3 AR=$(TOOLROOT)/arm-none-eabi-ar
4 AS=arm-none-eabi-as
5 MKIMG=arm-none-eabi-objcopy
6
7 LDFLAGS+= -mthumb -mcpu=cortex-m3 
8 CFLAGS+= -mcpu=cortex-m3 -mthumb 
9
10 as: 
11         $(AS) $(CFLAGS) -o start.o start.asm
12
13 all:
14         $(AS) $(CFLAGS) -o start.o start.asm
15         $(CC) $(CFLAGS) -c -o main.o main.c
16         $(LD) -nostartfiles -T link.ld -o start.out start.o main.o
17         $(MKIMG) -Obinary -R .data start.out kernel.bin
18
19 run:
20         qemu-system-arm -monitor stdio -M lm3s6965evb -kernel kernel.bin
21
22 examine:
23         arm-none-eabi-objdump -S start.out
24
25 %.o: %.c
26         $(CC) -c $(CFLAGS) $< -o $@
27         $(CC) -MM $(CFLAGS) $< > $*.d
28
29 %.o: %.s
30         $(CC) -c $(CFLAGS) $< -o $@
31
32
33
34