GRUB & cleanup

pull/20/head
E. Almqvist 3 years ago
parent ad03111974
commit f9a0b07bda
  1. 10
      compile.sh
  2. 20
      grub_compile.sh
  3. 3
      src/grub/grub.cfg

@ -1,21 +1,21 @@
#!/usr/bin/bash #!/usr/bin/bash
srcDir=src srcdir=src
binDir=bin bindir=bin
compile_bootloader() { compile_bootloader() {
echo "Compiling bootloader... " echo "Compiling bootloader... "
nasm -f bin $srcDir/bootloader/bootloader.asm -i $srcDir/bootloader -o $binDir/bootloader.bin nasm -f bin $srcdir/bootloader/bootloader.asm -i $srcdir/bootloader -o $bindir/bootloader.bin
} }
compile_kernel() { compile_kernel() {
echo "Compiling kernel... " echo "Compiling kernel... "
gcc -fno-pie -m32 -Os -ffreestanding -c $srcDir/kernel/kernel.c -o $binDir/kernel.o && gcc -o $binDir/kernel.bin $binDir/kernel.o -Wl,--oformat=binary -ffreestanding -nostdlib -shared -Ttext 0x1000 -m32 gcc -fno-pie -m32 -Os -ffreestanding -c $srcdir/kernel/kernel.c -o $bindir/kernel.o && gcc -o $bindir/kernel.bin $bindir/kernel.o -Wl,--oformat=binary -ffreestanding -nostdlib -shared -Ttext 0x1000 -m32
} }
create_os_image() { create_os_image() {
echo "Creating OS image... " echo "Creating OS image... "
cat $binDir/bootloader.bin $binDir/kernel.bin > $binDir/os-image cat $bindir/bootloader.bin $bindir/kernel.bin > $bindir/os-image
} }

@ -0,0 +1,20 @@
#!/usr/bin/bash
srcdir=src
bindir=bin
make_grub() {
echo "Making GRUB..."
mkdir -p $bindir/boot/grub
cp $bindir/kernel.bin $bindir/boot/kernel.bin
cp $srcdir/grub/grub.cfg $bindir/boot/grub/grub.cfg
grub-mkrescue -o $bindir/eOS.iso $bindir
}
compile_kernel() {
echo "Compiling kernel... "
gcc -fno-pie -m32 -Os -ffreestanding -c $srcdir/kernel/kernel.c -o $bindir/kernel.o && gcc -o $bindir/kernel.bin $bindir/kernel.o -Wl,--oformat=binary -ffreestanding -nostdlib -shared -Ttext 0x1000 -m32
}
compile_kernel
make_grub

@ -0,0 +1,3 @@
menuentry "eOS" {
multiboot /boot/eOS.bin
}
Loading…
Cancel
Save