From 50ffb9c67af5cdab34d92c4962c0883705d8de1b Mon Sep 17 00:00:00 2001 From: Baptiste Wicht Date: Sat, 26 Oct 2013 13:15:29 +0200 Subject: [PATCH] Prepare the infrastructure for C++ kernel --- Makefile | 11 ++++++++++- kernel.bin.o | Bin 0 -> 1256 bytes kernel.o | Bin 0 -> 1232 bytes src/kernel.cpp | 9 +++++++++ 4 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 kernel.bin.o create mode 100644 kernel.o create mode 100644 src/kernel.cpp diff --git a/Makefile b/Makefile index 16cd65e0..3060d461 100644 --- a/Makefile +++ b/Makefile @@ -9,9 +9,18 @@ bootloader.bin: src/bootloader/bootloader.asm micro_kernel.bin: $(KERNEL_SRC) $(KERNEL_UTILS_SRC) nasm -w+all -f bin -o micro_kernel.bin src/micro_kernel.asm -thor.flp: bootloader.bin micro_kernel.bin +kernel.o: src/kernel.cpp + g++ -Wall -Wextra -O2 -fno-exceptions -fno-rtti -ffreestanding -c src/kernel.cpp -o kernel.o + +kernel.bin: kernel.o + ld -e kernel_main -Ttext 0x10000 -o kernel.bin.o kernel.o + ld -i -e kernel_main -Ttext 0x1000 -o kernel.bin.o kernel.o + objcopy -R .note -R .comment -S -O binary kernel.bin.o kernel.bin + +thor.flp: bootloader.bin micro_kernel.bin kernel.bin cat bootloader.bin > thor.bin cat micro_kernel.bin >> thor.bin + cat kernel.bin >> thor.bin dd status=noxfer conv=notrunc if=thor.bin of=thor.flp qemu: thor.flp diff --git a/kernel.bin.o b/kernel.bin.o new file mode 100644 index 0000000000000000000000000000000000000000..d8d6abea4bb1f19f05338b15e643f137ba88c563 GIT binary patch literal 1256 zcmbtT%}&BV5T05TR1Ro7nBbuvG@8f;f@q?NAwlJ0j4^s91=m2Jg|t1O7kLDq#Itu3 zgX6@Fq9SP#b4r~y0-v`m?I*#fB!tDl9 zRL`$-eqcA+@mc<1XH_n)XpU>p{>sG1?yNLzy|Ae?%%7onh6^(CED)wNzOHye(~!QI zk+@1eoCAAsKI>Q?`%}2GqBCGaL%r9Y@?*`v<{zqD?62Q*pfo%pg5eiq@h~38?9f4< zr#Ok(oX66VGW6Ne$N5(rNT}x{*WV69Kd9&@3%cc?96=KZJ(O$%N4@_X$D-tUnE%oQz7dyU570&;Ujwp zFa`UaxK^WaZXLI{8+o2}%FbA|6jUs~!m35fAMjF{)mZH$$;3SXb_E)f8!*OsqmWxS zUvL)j`y#g?Fa{PrI+5K47DhpWed$Gf909wxBO6#Z41x7L$3Zc`Trc9Rb$wR~BfB>Q z7VweHc)#-y*bY~_FYOnwl8$Ii>rfZ*zjr_`ukAa)nCdec-_~LoW~C$W2+_o6+4>^Z z()=<$s>%6GCDEt7WD;wNA1A~zQ3J)7b&|S5hqx6<2z(Z(>!Np6t%-qtCX}BFa!+ig zd!Rd#^^)I4PCq*;d7}mGHi6ly>rc~8n?FUP)Ia(!HA29(nz5kbUNFDu<~ZMbGSi8S=p8Bi8eMNZgKN4_vUs KMEYLTZ{`