]> git.dujemihanovic.xyz Git - nameless-os.git/blobdiff - boot/x86/Makefile
Add C code for enabling paging in bootloader
[nameless-os.git] / boot / x86 / Makefile
index 0e5ac00e050076b8f09aaa7ccc74eeb6ab313691..202d83993072d373a60b39d6f57d6b9805579be1 100644 (file)
@@ -1,9 +1,10 @@
-default: mbr vbr-fat32 stage3/LOADER.BIN
+default: mbr vbr-fat32 stage3/LOADER.BIN stage3/loader.elf
 
+CFLAGS=-g -ffreestanding
 LD=i686-elf-gcc
-LDFLAGS=-T stage3/stage3.ld -nostdlib
+LDFLAGS=-T stage3/stage3.ld -nostdlib -g
 
-STAGE3_OBJ=stage3/loader.o
+STAGE3_OBJ=stage3/loader.o stage3/paging.o
 
 mbr: mbr.s
        $(AS) $(ASFLAGS) -w-zeroing -o $@ $<
@@ -11,8 +12,11 @@ mbr: mbr.s
 vbr-fat32: vbr-fat32.s fat32/*.s
        $(AS) $(ASFLAGS) -o $@ $<
 
+stage3/loader.elf: $(STAGE3_OBJ)
+       $(CC) $(LDFLAGS) -o $@ $^ -Wl,--oformat=elf32-i386
+
 stage3/LOADER.BIN: $(STAGE3_OBJ)
-       $(LD) $(LDFLAGS) -o $@ $<
+       $(CC) $(LDFLAGS) -o $@ $^
 
 stage3/loader.o: stage3/loader.s stage3/*.s
        $(AS) $(ASFLAGS) -f elf -g dwarf2 -DGIT_REVISION=\"$(GIT_REV)\" -o $@ $<