...
This commit is contained in:
14
makefile
14
makefile
@@ -1,7 +1,7 @@
|
||||
CC = i386-elf-gcc
|
||||
LD = i386-elf-ld
|
||||
|
||||
CFLAGS = -ffreestanding -m32
|
||||
CFLAGS = -Werror -Wall -pedantic -std=c23 -ffreestanding -m32
|
||||
|
||||
all: .build/nub-os.iso
|
||||
|
||||
@@ -11,20 +11,20 @@ clean:
|
||||
build-dir:
|
||||
mkdir .build 2>/dev/null || true
|
||||
|
||||
.build/nub-os.iso: build-dir .build/kernel.bin
|
||||
.build/nub-os.iso: build-dir .build/kernel
|
||||
mkdir -p .build/iso/boot/grub
|
||||
cp grub.cfg .build/iso/boot/grub
|
||||
cp .build/kernel.bin .build/iso/boot/
|
||||
cp .build/kernel .build/iso/boot/
|
||||
grub-mkrescue -o .build/nub-os.iso .build/iso/
|
||||
|
||||
.build/kernel.bin: build-dir .build/boot.o .build/kernel.o .build/print.o
|
||||
$(LD) -Ttext 0x100000 -o .build/kernel.bin .build/boot.o .build/kernel.o .build/print.o
|
||||
.build/kernel: build-dir .build/boot.o .build/kernel.o .build/vga.o
|
||||
$(LD) -Ttext 0x100000 -o .build/kernel .build/boot.o .build/kernel.o .build/vga.o
|
||||
|
||||
.build/kernel.o: build-dir src/kernel.c
|
||||
$(CC) $(CFLAGS) -c -o .build/kernel.o src/kernel.c
|
||||
|
||||
.build/print.o: build-dir src/print.c
|
||||
$(CC) $(CFLAGS) -c -o .build/print.o src/print.c
|
||||
.build/vga.o: build-dir src/vga.c
|
||||
$(CC) $(CFLAGS) -c -o .build/vga.o src/vga.c
|
||||
|
||||
.build/boot.o: build-dir src/boot.asm
|
||||
nasm -f elf32 -o .build/boot.o src/boot.asm
|
||||
Reference in New Issue
Block a user