mirror of
https://github.com/wichtounet/thor-os.git
synced 2025-09-08 20:10:04 -04:00
Create sub makefile for kernel
This commit is contained in:
parent
4ca5617bfc
commit
94ff36b850
36
Makefile
36
Makefile
@ -6,35 +6,8 @@ bootloader.bin: force_look
|
||||
micro_kernel.bin: force_look
|
||||
cd micro_kernel; $(MAKE)
|
||||
|
||||
force_look:
|
||||
true
|
||||
|
||||
KERNEL_FLAGS=-masm=intel -Ikernel/include/ -O1 -std=c++11 -Wall -Wextra -fno-exceptions -fno-rtti -ffreestanding
|
||||
KERNEL_LINK_FLAGS=-std=c++11 -T linker.ld -ffreestanding -O1 -nostdlib
|
||||
|
||||
KERNEL_O_FILES=kernel.o keyboard.o console.o kernel_utils.o timer.o shell.o
|
||||
|
||||
kernel.o: kernel/src/kernel.cpp
|
||||
g++ $(KERNEL_FLAGS) -c kernel/src/kernel.cpp -o kernel.o
|
||||
|
||||
keyboard.o: kernel/src/keyboard.cpp
|
||||
g++ $(KERNEL_FLAGS) -c kernel/src/keyboard.cpp -o keyboard.o
|
||||
|
||||
console.o: kernel/src/console.cpp
|
||||
g++ $(KERNEL_FLAGS) -c kernel/src/console.cpp -o console.o
|
||||
|
||||
kernel_utils.o: kernel/src/kernel_utils.cpp
|
||||
g++ $(KERNEL_FLAGS) -c kernel/src/kernel_utils.cpp -o kernel_utils.o
|
||||
|
||||
timer.o: kernel/src/timer.cpp
|
||||
g++ $(KERNEL_FLAGS) -c kernel/src/timer.cpp -o timer.o
|
||||
|
||||
shell.o: kernel/src/shell.cpp
|
||||
g++ $(KERNEL_FLAGS) -c kernel/src/shell.cpp -o shell.o
|
||||
|
||||
kernel.bin: $(KERNEL_O_FILES)
|
||||
g++ $(KERNEL_LINK_FLAGS) -o kernel.bin.o $(KERNEL_O_FILES)
|
||||
objcopy -R .note -R .comment -S -O binary kernel.bin.o kernel.bin
|
||||
kernel.bin: force_look
|
||||
cd kernel; $(MAKE)
|
||||
|
||||
filler.bin: kernel.bin
|
||||
bash fill.bash
|
||||
@ -42,7 +15,7 @@ filler.bin: kernel.bin
|
||||
thor.flp: bootloader.bin micro_kernel.bin kernel.bin filler.bin
|
||||
cat bootloader/bootloader.bin > thor.bin
|
||||
cat micro_kernel/micro_kernel.bin >> thor.bin
|
||||
cat kernel.bin >> thor.bin
|
||||
cat kernel/kernel.bin >> thor.bin
|
||||
cat filler.bin >> thor.bin
|
||||
dd status=noxfer conv=notrunc if=thor.bin of=thor.flp
|
||||
|
||||
@ -52,6 +25,9 @@ qemu: thor.flp
|
||||
bochs: thor.flp
|
||||
bochs -q -f bochsrc.txt
|
||||
|
||||
force_look:
|
||||
true
|
||||
|
||||
clean:
|
||||
rm -f *.bin
|
||||
rm -f *.flp
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
size=`stat -c%s kernel.bin`
|
||||
size=`stat -c%s kernel/kernel.bin`
|
||||
let filler_size=8192-$size
|
||||
dd if=/dev/zero of=filler.bin bs=1 count=$filler_size
|
||||
|
26
kernel/Makefile
Normal file
26
kernel/Makefile
Normal file
@ -0,0 +1,26 @@
|
||||
KERNEL_FLAGS=-masm=intel -Iinclude/ -O1 -std=c++11 -Wall -Wextra -fno-exceptions -fno-rtti -ffreestanding
|
||||
KERNEL_LINK_FLAGS=-std=c++11 -T linker.ld -ffreestanding -O1 -nostdlib
|
||||
|
||||
KERNEL_O_FILES=kernel.o keyboard.o console.o kernel_utils.o timer.o shell.o
|
||||
|
||||
kernel.bin: $(KERNEL_O_FILES)
|
||||
g++ $(KERNEL_LINK_FLAGS) -o kernel.bin.o $(KERNEL_O_FILES)
|
||||
objcopy -R .note -R .comment -S -O binary kernel.bin.o kernel.bin
|
||||
|
||||
kernel.o: src/kernel.cpp
|
||||
g++ $(KERNEL_FLAGS) -c src/kernel.cpp -o kernel.o
|
||||
|
||||
keyboard.o: src/keyboard.cpp
|
||||
g++ $(KERNEL_FLAGS) -c src/keyboard.cpp -o keyboard.o
|
||||
|
||||
console.o: src/console.cpp
|
||||
g++ $(KERNEL_FLAGS) -c src/console.cpp -o console.o
|
||||
|
||||
kernel_utils.o: src/kernel_utils.cpp
|
||||
g++ $(KERNEL_FLAGS) -c src/kernel_utils.cpp -o kernel_utils.o
|
||||
|
||||
timer.o: src/timer.cpp
|
||||
g++ $(KERNEL_FLAGS) -c src/timer.cpp -o timer.o
|
||||
|
||||
shell.o: src/shell.cpp
|
||||
g++ $(KERNEL_FLAGS) -c src/shell.cpp -o shell.o
|
Loading…
x
Reference in New Issue
Block a user