summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJackson Taylor <jtaylormuffins@gmail.com>2020-11-05 21:26:32 -0500
committerJackson Taylor <jtaylormuffins@gmail.com>2020-11-05 21:26:32 -0500
commit94886031c2592eb95f6a417a7e488f5f8fa93ab5 (patch)
tree05a9d205f77831c3d036aff39e242a950b070065
parent196be8dcf47a3c9642ac9e9871a3edb640c15ab5 (diff)
Add run and iso build rules to makefile
-rw-r--r--makefile10
1 files changed, 9 insertions, 1 deletions
diff --git a/makefile b/makefile
index f6d082c..325d23d 100644
--- a/makefile
+++ b/makefile
@@ -1,13 +1,21 @@
ASM="/home/jackson/opt/cross/bin/i686-elf-as"
CC="/home/jackson/opt/cross/bin/i686-elf-gcc"
+VIRTUALIZER="qemu-system-i386"
all: boot.s kernel.c linker.ld
$(ASM) boot.s -o boot.o
$(CC) -c kernel.c -o kernel.o -std=gnu99 -ffreestanding -O2 -Wall -Wextra
$(CC) -T linker.ld -o myos.bin -ffreestanding -O2 -nostdlib boot.o kernel.o -lgcc
-iso: all
+iso: all isodir
cp myos.bin isodir/boot/
grub-mkrescue -o myos.iso isodir/
+isodir: all
+ mkdir -p isodir/boot/grub
+ cp grub.cfg isodir/boot/grub/grub.cfg
+ cp myos.bin isodir/boot/myos.bin
+run: iso
+ $(VIRTUALIZER) -cdrom myos.iso
clean:
rm *.o *.bin *.iso
+ rm -rf isodir