#
#
#
#  Resea (/Makefile)
#  Mafice <mafice@mflabo.net>
#
#
#


SRC_TOP=.
include $(SRC_TOP)/dec.mk


#
# ターゲット環境
# 使用できるもの: x86 x86_64
#

TRG_PLAT = x86


DELETE_TARGET = $(wildcard *.img)
	

all: $(DISKIMG_FILENAME)


$(APILIB): $(wildcard $(API_DIR)/*.c) $(wildcard $(API_DIR)/*.asm)
	$(MAKE) -C $(API_DIR) $(TRG_PLAT)

$(KERNEL_BIN): $(wildcard $(KERNEL_DIR)/$(TRG_PLAT)/*.c) $(wildcard $(KERNEL_DIR)/$(TRG_PLAT)/*.asm)
	$(MAKE) -C $(KERNEL_DIR) $(TRG_PLAT)

$(INTERPRETER_BIN):  $(APILIB)
	$(MAKE) -C $(INTERPRETER_DIR) $(TRG_PLAT)

$(DISKIMG_FILENAME): $(KERNEL_BIN) $(INTERPRETER_BIN) $(APILIB)
	cat $(KERNEL_BIN) $(INTERPRETER_BIN) > $(DISKIMG_FILENAME)
	$(ADDPADDING) $(DISKIMG_FILENAME) $(DISKIMG_FILESIZE)

.PHONY: run clean

run:
	$(MAKE)
	$(EMU) $(EMU_OPTIONS)


clean:
	$(DELETE) $(DELETE_TARGET)
	$(MAKE) -C $(KERNEL_DIR)       clean
	$(MAKE) -C $(INTERPRETER_DIR)  clean
	$(MAKE) -C $(API_DIR)          clean

