ASM = nasm
ASMFLAGS = -I include/
TARGET = boot.bin loader.bin
.PHONY : everything clean all
everything : $(TARGET) #本例 make 和 make everything一样
clean : #执行 make clean 将会执行 rm -f $(TARGET) 即 rm -f boot.bin loader.bin
rm -f $(TARGET)
all : clean everything #执行 make all ,clean和everything所表示的动作将分别执行
boot.bin : boot.asm include/load.inc include/fat12hdr.inc
$(ASM) $(ASMFLAGS) -o $@ $< #等价于 nasm -o loader.bin loader.asm
loader.bin : loader.asm include/load.inc include/fat12hdr.inc include/pm.inc
$(ASM) $(ASMFLAGS) -o $@ $<
#make everything 即执行
#nasm -I include/ -o boot.bin boot.asm
#nasm -I include/ -o loader.bin loader.asm