blob: 24ceb56a3839ee65d1ab358312e4cc69e9af9686 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
.SILENT:
override PROMPT := printf "%s\t\t%s\n"
CC = @CC@
LD = @LD@
ARCH = @ARCH@
ISO = rv7.iso
SYS_CFLAGS = @SYS_CFLAGS@
SYSROOT = root
.PHONY: all
all: $(SYSROOT) sys iso
.PHONY: sys
sys:
cd sys/; make CC=$(CC) SYS_CFLAGS="$(SYS_CFLAGS)" ARCH=$(ARCH) LD=$(LD)
.PHONY: iso
iso:
mkdir -p iso_root/boot/
cp data/boot/wallpaper.jpg iso_root/boot/
cp data/boot/limine.conf boot/limine/limine-bios.sys \
boot/limine/limine-bios-cd.bin boot/limine/limine-uefi-cd.bin iso_root/
cp sys/rv7 iso_root/boot/
xorriso -as mkisofs -b limine-bios-cd.bin -no-emul-boot -boot-load-size 4\
-boot-info-table --efi-boot limine-uefi-cd.bin -efi-boot-part \
--efi-boot-image --protective-msdos-label iso_root/ -o $(ISO) 1>/dev/null
boot/limine/limine bios-install $(ISO) 1>/dev/null
rm -rf iso_root
$(PROMPT) " ISO " $(ISO)
$(SYSROOT):
mkdir -p $(SYSROOT)/
mkdir -p $(SYSROOT)/boot/
mkdir -p $(SYSROOT)/boot/np/
mkdir -p $(SYSROOT)/usr/include/
mkdir -p $(SYSROOT)/usr/bin/
mkdir -p $(SYSROOT)/usr/sbin/
.PHONY: run
run:
qemu-system-x86_64 -cdrom rv7.iso --enable-kvm -cpu host -m 2G
.PHONY: clean
clean:
cd sys/; make clean ARCH=$(ARCH)
.PHONY: toolchain
toolchain: $(SYSROOT)
bash tools/build-toolchain.sh
|