solarityliveboot/Makefile

31 lines
790 B
Makefile
Raw Permalink Normal View History

2024-09-24 20:44:53 -04:00
.PHONY: all iso clean clean_work qemu check_mountpoints check_root
ISO_NAME := $(shell ls out/*.iso 2>/dev/null | sort -r | head -n 1)
ARCHISO_CMD := mkarchiso -v .
check_root:
@if [ "$$(id -u)" -ne 0 ]; then \
echo "Error: This script must be run as root (UID 0)."; \
exit 1; \
fi
check_mountpoints:
@if mount | grep -q "$(shell realpath work)"; then \
echo "Found mountpoints in work/. Unmounting..."; \
sudo umount -R work/*; \
fi
all: check_root clean_work iso
iso:
$(ARCHISO_CMD)
clean: check_mountpoints
rm -rf work/ out/
clean_work: check_mountpoints
rm -rf work/
qemu: $(ISO_NAME)
qemu-system-x86_64 --enable-kvm -smp $(shell echo $$(( `nproc` / 2 / 2 * 2 ))) -cpu host -m 4G -nic user -L /tmp --bios /usr/share/edk2-ovmf/x64/OVMF_CODE.fd -cdrom $(ISO_NAME)