diff --git a/GNUmakefile b/GNUmakefile index b2bff2c..ad710e8 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -83,10 +83,14 @@ CHICKADEE_FIRST_PROCESS ?= allocator ifneq ($(strip $(CHICKADEE_FIRST_PROCESS)),$(DEP_CHICKADEE_FIRST_PROCESS)) FIRST_PROCESS_BUILDSTAMP := $(shell echo "DEP_CHICKADEE_FIRST_PROCESS:=$(CHICKADEE_FIRST_PROCESS)" > $(DEPSDIR)/_first_process.d) $(OBJDIR)/k-firstprocess.h: always +$(OBJDIR)/chickadee.gdb: always endif ifeq ($(wildcard $(OBJDIR)/k-firstprocess.h),) KERNELBUILDSTAMPS += $(OBJDIR)/k-firstprocess.h endif +ifeq ($(wildcard $(OBJDIR)/chickadee.gdb),) +KERNELBUILDSTAMPS += $(OBJDIR)/chickadee.gdb +endif # How to make object files @@ -124,6 +128,9 @@ $(OBJDIR)/u-asm.h: u-lib.hh lib.hh types.h x86-64.h build/mkkernelasm.awk $(BUIL $(OBJDIR)/k-firstprocess.h: $(call run,echo '#ifndef CHICKADEE_FIRST_PROCESS' >$@; echo '#define CHICKADEE_FIRST_PROCESS "$(CHICKADEE_FIRST_PROCESS)"' >>$@; echo '#endif' >>$@,CREATE $@) +$(OBJDIR)/chickadee.gdb: + $(call run,echo 'add-symbol-file obj/p-$(CHICKADEE_FIRST_PROCESS).full 0x100000' >$@,CREATE $@) + $(OBJDIR)/k-initfs.cc: build/mkinitfs.awk \ $(INITFS_CONTENTS) $(INITFS_BUILDSTAMP) $(KERNELBUILDSTAMPS) $(call run,echo $(INITFS_CONTENTS) $(INITFS_PARAMS) | awk -f build/mkinitfs.awk >,CREATE,$@) diff --git a/build/chickadee.gdb b/build/chickadee.gdb index 23c2d8c..1863e4b 100644 --- a/build/chickadee.gdb +++ b/build/chickadee.gdb @@ -2,7 +2,7 @@ set $loaded = 1 set arch i386:x86-64 file obj/kernel.full add-symbol-file obj/bootsector.full 0x7c00 -add-symbol-file obj/p-allocator.full 0x100000 +source obj/chickadee.gdb target remote localhost:12949 source build/functions.gdb display/5i $pc