blob: c296d1c11dc966bf0c7d3cef8845758c249ec3bb (
about) (
plain)
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
|
CFLAGS=-mcpu=cortex-a7 -ffreestanding -std=gnu99 -Wall -Wextra -I.
all : kernel7.img
kernel.o : kernel.c
arm-none-eabi-gcc $(CFLAGS) -c $^ -o $@
uart.o : uart.c
arm-none-eabi-gcc $(CFLAGS) -c $^ -o $@
boot.o : boot.S
arm-none-eabi-as -mcpu=cortex-a7 $^ -o $@
kernel.elf : boot.o kernel.o uart.o
arm-none-eabi-gcc -T linker.ld -o $@ -ffreestanding -O2 -nostdlib $^ -lgcc -I.
kernel7.img : kernel.elf
arm-none-eabi-objcopy $^ -O binary $@
qemu-elf : kernel.elf
qemu-system-arm -m 256 -M raspi2 -serial stdio -kernel $^
qemu-bin : kernel7.img
qemu-system-arm -m 256 -M raspi2 -serial stdio -kernel $^
clean :
-rm kernel7.img kernel.elf boot.o kernel.o uart.o
.PHONY: all qemu-elf qemu-bin clean
|