From c420ce0cb303231b7a90e2ca0948efa967309828 Mon Sep 17 00:00:00 2001
From: "adrian.spycher" <adrian.spycher@etu.hesge.ch>
Date: Sun, 3 Nov 2024 17:30:16 +0100
Subject: [PATCH] feat: create and clean disk.raw

---
 Makefile     | 16 ++++++++++------
 vmm/Makefile |  5 ++++-
 2 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/Makefile b/Makefile
index 32b474f..acd10f0 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
 DISK=disk.raw
-DISK_SIZE=256K
+DISK_SIZE=128G
 
 help:
 	@echo "Available targets:"
@@ -13,10 +13,10 @@ help:
 	@echo "    clean_guest  delete guest"
 
 run_pv: guest_pv vmm
-	./vmm/vmm guest/guest.bin
+	./vmm/vmm guest/guest.bin ./vmm/$(DISK)
 
 run_phys: guest_phys vmm
-	./vmm/vmm guest/guest.bin
+	./vmm/vmm guest/guest.bin ./vmm/$(DISK)
 
 
 guest_pv:
@@ -25,17 +25,21 @@ guest_pv:
 guest_phys:
 	$(MAKE) -C guest PV=0 OUT=guest.bin
 
-vmm:
+vmm: create_disk
 	$(MAKE) -C vmm OUT=vmm
 
 
+create_disk:
+	$(MAKE) -C vmm create_disk DISK=$(DISK) DISK_SIZE=$(DISK_SIZE)
+
+
 clean: clean_vmm clean_guest
 
 clean_vmm:
-	$(MAKE) -C vmm clean OUT=vmm
+	$(MAKE) -C vmm clean OUT=vmm DISK=$(DISK)
 
 clean_guest:
 	$(MAKE) -C guest clean
 
 
-.PHONY: clean clean_vmm clean_guest vmm
+.PHONY: clean clean_vmm clean_guest vmm create_disk
diff --git a/vmm/Makefile b/vmm/Makefile
index e900610..69a7268 100644
--- a/vmm/Makefile
+++ b/vmm/Makefile
@@ -11,8 +11,11 @@ $(OUT): $(C_OBJS)
 %.o: %.c
 	$(CC) -c $< -o $@
 
+create_disk:
+	qemu-img create -f raw $(DISK) $(DISK_SIZE)
+
 clean:
-	rm -f $(C_OBJS) $(C_DEPS) *.o *.d $(OUT)
+	rm -f $(C_OBJS) $(C_DEPS) *.o *.d $(OUT) $(DISK)
 
 .PHONY: clean
 
-- 
GitLab