moved prestart sources to their own directory and set up the section names

they use with a custom linker script
This commit is contained in:
Eric J. Bowersox
2013-05-02 23:16:55 -06:00
parent eda9737083
commit 4cf088683f
9 changed files with 279 additions and 67 deletions

View File

@@ -32,14 +32,16 @@ MAKEFLAGS += -rR
CRBASEDIR := $(abspath ..)
include $(CRBASEDIR)/armcompile.mk
PRESTART_OBJS = prestart.o early_trace.o collect_startup.o early_mm.o
RES_OBJS = lowlevel.o trace.o memmgr.o vmmap.o pagealloc.o kernel_space.o
INIT_OBJS = start.o kistart.o init_heap.o
all: kernel.img
kernel.elf: $(PRESTART_OBJS) lib/kernel-lib.o $(RES_OBJS) $(INIT_OBJS) kernel.lds
$(LD) -T kernel.lds $(PRESTART_OBJS) lib/kernel-lib.o $(RES_OBJS) $(INIT_OBJS) -o kernel.elf
kernel.elf: prestart/kernel-prestart.o lib/kernel-lib.o $(RES_OBJS) $(INIT_OBJS) kernel.lds
$(LD) -T kernel.lds prestart/kernel-prestart.o lib/kernel-lib.o $(RES_OBJS) $(INIT_OBJS) -o kernel.elf
prestart/kernel-prestart.o:
make -C prestart
lib/kernel-lib.o:
make -C lib
@@ -52,4 +54,5 @@ kernel.img: kernel.elf
clean:
-rm *.o *.s *.lds kernel.img kernel.elf kernel.list kernel.syms*
make -C lib clean
make -C prestart clean
make -C lib clean