diff --git a/Makefile b/Makefile index e536220..0e91fd0 100644 --- a/Makefile +++ b/Makefile @@ -1,88 +1,7 @@ -# Makefile for HOS -# Josh Holtrop -# Created: 07/09/04 - -FLOPPY=/dev/fd0 -FLOPPY_IMAGE=hos.flp -FLOPPY_MOUNT=./mnt_flp -GRUB_IMAGE=grub.flp -INITRD=hos_initrd -INITRD_DIR=initrd -INITRD_MOUNT=./mnt_initrd -INITRD_SIZE=100 #initrd size in kb -MOUNT=sudo mount -UMOUNT=sudo umount - -# Do not print "Entering directory ..." -MAKEFLAGS += --no-print-directory - -.PHONY: all clean initrd apps grub_image install install_img depend copy_image bochs bochsq - +.PHONY: all all: - ${MAKE} -C kernel - ${MAKE} -C rmmod - -clean: - -${MAKE} -C kernel clean - -${MAKE} -C rmmod clean - -rm -f *~ *.out hos.flp \#* hos_initrd hos_initrd.gz - -apps: - ${MAKE} -C apps - -grub_image: - dd if=/dev/zero of=$(GRUB_IMAGE) bs=1024 seek=1440 count=0 - -mkdir $(FLOPPY_MOUNT) - mke2fs -F $(GRUB_IMAGE) - $(MOUNT) -t ext2 -o loop $(GRUB_IMAGE) $(FLOPPY_MOUNT) - -mkdir -p $(FLOPPY_MOUNT)/boot/grub - -cp /boot/grub/stage1 /boot/grub/stage2 /boot/grub/e2fs_stage1_5 $(FLOPPY_MOUNT)/boot/grub - $(UMOUNT) $(FLOPPY_MOUNT) - -rmdir $(FLOPPY_MOUNT) - echo "(fd0) $(GRUB_IMAGE)" > grub_image_device.map.tmp - echo "root (fd0)" > grub_commands.tmp - echo "setup (fd0)" >> grub_commands.tmp - echo "quit" >> grub_commands.tmp - grub --device-map grub_image_device.map.tmp < grub_commands.tmp - rm grub_commands.tmp - rm grub_image_device.map.tmp - -copy_image: - cp $(GRUB_IMAGE) $(FLOPPY_IMAGE) - -install: FDEV=$(FLOPPY) -install_img: FDEV=$(FLOPPY_IMAGE) -install_img: MOUNT_FLAGS=-o loop -install_img: copy_image -install install_img: - -mkdir $(FLOPPY_MOUNT) - $(MOUNT) -t ext2 $(MOUNT_FLAGS) $(FDEV) $(FLOPPY_MOUNT) - -cp kernel/kernel.bin $(FLOPPY_MOUNT) - -cp rmmod/rmmod.bin $(FLOPPY_MOUNT) - -cp menu.lst $(FLOPPY_MOUNT)/boot/grub - -cp $(INITRD).gz $(FLOPPY_MOUNT)/$(INITRD).gz - $(UMOUNT) $(FLOPPY_MOUNT) - -rmdir $(FLOPPY_MOUNT) - -initrd: - dd if=/dev/zero of=$(INITRD) bs=1024 count=$(INITRD_SIZE) - mke2fs -Fv -m0 -r0 -i1024 $(INITRD) - -mkdir $(INITRD_MOUNT) - $(MOUNT) -t ext2 -o loop $(INITRD) $(INITRD_MOUNT) - cp -Pr $(INITRD_DIR)/* $(INITRD_MOUNT) - $(UMOUNT) $(INITRD_MOUNT) - rm -rf $(INITRD_MOUNT) - gzip -c $(INITRD) > $(INITRD).gz - -depend: - ${MAKE} -C kernel depend - -bochs: - bochs - -bochsq: - echo 'c' | bochs -q - -wordcount: - find . -regex '\(.*\.[ch]\)\|\(.*\.asm\)\|\(.*\.inc\)\|\(.*\.cpp\)' | xargs cat | wc + ./rscons build +.PHONY: run +run: + qemu-system-x86_64 -bios OVMF.fd -hda build/hos.img