Add debug target
This commit is contained in:
parent
757c27c8a6
commit
4dc88ed87c
15
Makefile
15
Makefile
@ -4,6 +4,7 @@ CROSS=aarch64-linux-gnu-
|
|||||||
CC=$(CROSS)gcc
|
CC=$(CROSS)gcc
|
||||||
LD=$(CROSS)ld
|
LD=$(CROSS)ld
|
||||||
CFLAGS=-Wall -Wextra -ffreestanding -march=armv8-a+crc -mcpu=cortex-a53
|
CFLAGS=-Wall -Wextra -ffreestanding -march=armv8-a+crc -mcpu=cortex-a53
|
||||||
|
DEBUG_FLAGS += -g -Og -DDEBUG -fno-omit-frame-pointer -fno-inline
|
||||||
LDSCRIPT=rpi3.ld
|
LDSCRIPT=rpi3.ld
|
||||||
|
|
||||||
OBJS=crt0.o uart.o hello.o
|
OBJS=crt0.o uart.o hello.o
|
||||||
@ -13,20 +14,26 @@ csrc=$(wildcard *.c)
|
|||||||
cobj=$(csrc:%.c=%.o)
|
cobj=$(csrc:%.c=%.o)
|
||||||
deps=$(csrc:%.c=%.d) $(gasmsrc:%.S=%.d)
|
deps=$(csrc:%.c=%.d) $(gasmsrc:%.S=%.d)
|
||||||
|
|
||||||
all:kernel.bin
|
KERNEL=kernel.bin
|
||||||
|
|
||||||
|
all:$(KERNEL)
|
||||||
|
|
||||||
kernel.elf: $(cobj) $(gasmobj) $(LDSCRIPT)
|
kernel.elf: $(cobj) $(gasmobj) $(LDSCRIPT)
|
||||||
$(LD) $(LDFLAGS) -o $@ $(cobj) $(gasmobj) -T$(LDSCRIPT) -Map kernel.map
|
$(LD) $(LDFLAGS) -o $@ $(gasmobj) $(cobj) -T$(LDSCRIPT) -Map kernel.map
|
||||||
|
|
||||||
kernel.bin: kernel.elf
|
$(KERNEL): kernel.elf
|
||||||
$(CROSS)objcopy -O binary $< $@
|
$(CROSS)objcopy -O binary $< $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(cobj) $(gasmobj) $(deps) *.bin *.elf *.map
|
rm -rf $(cobj) $(gasmobj) $(deps) *.bin *.elf *.map
|
||||||
|
|
||||||
run: kernel.bin
|
run: $(KERNEL)
|
||||||
qemu-system-aarch64 -machine raspi3b -kernel $<
|
qemu-system-aarch64 -machine raspi3b -kernel $<
|
||||||
|
|
||||||
|
debug: CFLAGS += $(DEBUG_FLAGS)
|
||||||
|
debug: CXXFLAGS += $(DEBUG_FLAGS)
|
||||||
|
debug:$(KERNEL)
|
||||||
|
aarch64-linux-gnu-gdb -q -x debug.gdb
|
||||||
|
|
||||||
|
|
||||||
ifneq ($(MAKECMDGOALS),clean)
|
ifneq ($(MAKECMDGOALS),clean)
|
||||||
|
Loading…
Reference in New Issue
Block a user