cos2000v2/makefile

105 lines
2.4 KiB
Makefile
Executable File

all: programs bits32 bits64 harddisk uefi
sync
bits32: ARCH=bits32
bits32: lib/libs.o system/system.sys
sync
bits64: ARCH=bits64
bits64: lib/libs.o system/system.sys
sync
programs: programs/test
programs/test:
make -C programs
harddisk: final/harddisk.img.final
uefi: final/harddiskuefi.img.final
install:
(sudo apt-get install nasm gcc qemu fusefat fuseext2 cgdb ovmf bsdmainutils tar bsdmainutils indent binutils bochs bochs-x bochsbios)
clean:
make -C system clean
make -C lib clean
make -C final clean
make -C programs clean
sync
littleclean:
make -C system clean
make -C lib clean
make -C final littleclean)
make -C programs clean
sync
indent:
make -C system indent
make -C lib indent
sync
backup: clean
(cd .. ; tar cf - Source\ C | gzip -f - > backup.tar.gz)
test: bits32 harddisk qemu
test64: bits64 uefi qemu64
retest: littleclean test
retest64: littleclean test64
testbochs: bits32 harddisk bochs-debug
view:
(hexdump -C ./final/harddisk.img.final|head -c10000)
debug: debug-system
redebug: littleclean debug-system
debug64: debug-system64
redebug64: littleclean debug-system64
debug-boot: bits32 harddisk qemu-debug
(sleep 2;cgdb -x ./debug/boot.txt)
debug-loader: bits32 harddisk qemu-debug
(sleep 2;cgdb -x ./debug/loader.txt)
debug-system: bits32 harddisk qemu-debug
(sleep 2;cgdb -x ./debug/system.txt)
debug-system64: bits64 uefi qemu-debug64
(sleep 2;cgdb -x ./debug/system.txt)
bochs-debug:
(killall bochs-debug;bochs -f ./debug/config.bochs)
qemu-debug:
(killall qemu-system-i386;qemu-system-i386 -m 1G -drive format=raw,file=./final/harddisk.img.final -s -S &)
qemu-debug64:
(killall qemu-system-x86_64;qemu-system-x86_64 -m 5G -drive format=raw,file=./final/harddiskuefi.img.final --bios /usr/share/qemu/OVMF.fd -s -S &)
qemu:
(killall qemu-system-i386;qemu-system-i386 -m 1G -drive format=raw,file=./final/harddisk.img.final --enable-kvm -cpu host -s &)
qemu64:
(killall qemu-system-x86_64;qemu-system-x86_64 -m 5G -drive format=raw,file=./final/harddiskuefi.img.final --bios /usr/share/qemu/OVMF.fd --enable-kvm -cpu host -s &)
system/system.sys:
make -C system VESA=$(VESA)
final/harddisk.img.final:
make -C final harddisk.img.final
final/harddiskuefi.img.final:
make -C final harddiskuefi.img.final
lib/libs.o:
make -C lib