SOCLIB_DESC=desc.py
SOCLIB_TOP=top.cpp
SIMULATOR_BINARY=system.x

SOCLIB_DIR=$(shell soclib-cc --getpath)

SIMULATOR_CMD=./$(SIMULATOR_BINARY) --nobanner

all: $(SIMULATOR_BINARY)

$(SIMULATOR_BINARY): $(SOCLIB_DESC) $(SOCLIB_TOP)
	soclib-cc $(SOCLIB_CC_ARGS) -P -p $(SOCLIB_DESC) -o $(SIMULATOR_BINARY)

run_tsar_boot: all tsar_boot.bin disk.img
	$(SIMULATOR_CMD) --rom tsar_boot.bin --dsk disk.img

run_dummy_boot: all vmlinux disk.img
	$(SIMULATOR_CMD) --rom vmlinux --dsk disk.img --dummy-boot

cscope.out:
	soclib-cc -p $(SOCLIB_DESC) --tags

clean:
	soclib-cc -P -p $(SOCLIB_DESC) -x -o $(SIMULATOR_BINARY)
	rm -f $(SIMULATOR_BINARY) *.o vci*

.PHONY: $(SIMULATOR_BINARY)
