49 lines
1.4 KiB
Makefile
49 lines
1.4 KiB
Makefile
|
|
|
|
gamarjoba: gamarjoba.asm
|
|
nasm -f elf64 -o gamarjoba.o gamarjoba.asm
|
|
ld -o gamarjoba gamarjoba.o
|
|
|
|
run_gamarjoba: gamarjoba
|
|
./gamarjoba
|
|
|
|
baremetal_gamarjoba: baremetal_gamarjoba.asm include.c
|
|
gcc -m32 -ffreestanding -o include.o -c include.c
|
|
nasm -f elf32 baremetal_gamarjoba.asm
|
|
ld -m elf_i386 -nostdlib -T linker.ld baremetal_gamarjoba.o include.o -o baremetal_gamarjoba
|
|
|
|
run_baremetal_gamarjoba: baremetal_gamarjoba
|
|
qemu-system-i386 -kernel baremetal_gamarjoba
|
|
|
|
keyboard: keyboard.asm c_keyboard.c keyboard.rs
|
|
gcc -m32 -ffreestanding -o c_keyboard.o -c c_keyboard.c
|
|
rustc --emit obj -o rust_keyboard.o --target i686-unknown-linux-gnu keyboard.rs
|
|
nasm -f elf32 keyboard.asm
|
|
ld -m elf_i386 -nostdlib -T linker.ld keyboard.o c_keyboard.o rust_keyboard.o -o keyboard
|
|
|
|
run_keyboard: keyboard
|
|
qemu-system-i386 -kernel keyboard
|
|
|
|
run_terminal_keyboard: keyboard
|
|
qemu-system-i386 -display curses -kernel keyboard
|
|
|
|
|
|
lightshow: lightshow.asm lightshow.rs
|
|
rustc --emit obj -o lightshow_rust.o --target i686-unknown-linux-gnu -g lightshow.rs
|
|
nasm -f elf32 -g lightshow.asm
|
|
ld -m elf_i386 -nostdlib -T linker.ld lightshow.o lightshow_rust.o -o lightshow
|
|
|
|
run_lightshow: lightshow
|
|
qemu-system-i386 -kernel lightshow
|
|
|
|
debug_lightshow: lightshow
|
|
qemu-system-i386 -kernel lightshow -gdb tcp::9999 -S
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -f *.o
|
|
rm -f gamarjoba
|
|
rm -f baremetal_gamarjoba
|
|
rm -f keyboard
|
|
rm -f lightshow
|