48 lines
1.5 KiB
Makefile
48 lines
1.5 KiB
Makefile
#----------------------------------------------------------------------------#
|
|
# GNU GPL OS/K #
|
|
# #
|
|
# Authors: spectral` #
|
|
# NeoX #
|
|
# #
|
|
# Desc: Project Makefile #
|
|
#----------------------------------------------------------------------------#
|
|
|
|
kernel:
|
|
cpp ./Makefile.in > Makefile.out
|
|
python ./build/idttool.py
|
|
make kernel -f Makefile.out.2
|
|
rm Makefile.out Makefile.out.2
|
|
|
|
kernel-asm:
|
|
cpp -D_TO_ASM ./Makefile.in > Makefile.out
|
|
python ./build/idttool.py
|
|
make kernel -f Makefile.out.2
|
|
rm Makefile.out Makefile.out.2
|
|
|
|
tests:
|
|
cpp -D_TESTS ./Makefile.in > Makefile.out
|
|
python ./build/idttool.py
|
|
make tests -f Makefile.out.2
|
|
rm Makefile.out Makefile.out.2
|
|
|
|
ASM=nasm
|
|
ASMFLAGS=
|
|
BOOTFLAGS=-f bin
|
|
|
|
BOOTDIR=boot
|
|
OBJDIR=build/obj
|
|
BINDIR=build/bin
|
|
|
|
boot.mbr.asm: $(BOOTDIR)/mbr.asm $(BOOTDIR)/mbr.inc
|
|
$(ASM) $(BOOTFLAGS) $(BOOTDIR)/mbr.asm -o $(OBJDIR)/boot/mbr.bin
|
|
|
|
boot.loader.asm: $(BOOTDIR)/loader.asm
|
|
$(ASM) $(BOOTFLAGS) $(BOOTDIR)/loader.asm -o $(OBJDIR)/boot/loader.bin
|
|
|
|
bootloader: boot.mbr.asm boot.loader.asm
|
|
cp $(OBJDIR)/boot/mbr.bin $(BINDIR)/mbr.bin
|
|
cp $(OBJDIR)/boot/loader.bin $(BINDIR)/loader.bin
|
|
|
|
all: bootloader kernel
|
|
|