XiangShan/Makefile

33 lines
713 B
Makefile
Raw Normal View History

2019-02-06 22:33:01 +08:00
TOP = TopMain
BUILD_DIR = ./build
TOP_V = $(BUILD_DIR)/$(TOP).v
SCALA_FILE = $(shell find ./src/main/scala -name '*.scala')
2019-02-09 11:09:57 +08:00
SIMTOP = top.TestMain
2019-02-08 00:34:53 +08:00
IMAGE = ""
2019-02-09 11:09:57 +08:00
SIMCMD = test:runMain $(SIMTOP) -td $(BUILD_DIR) --image $(IMAGE)
2019-02-08 00:34:53 +08:00
2019-02-10 01:46:53 +08:00
.DEFAULT_GOAL = verilog
2019-02-09 11:17:16 +08:00
LIBDEVICE_PATH = ./src/test/cpp/libdevice
libdevice:
make -C $(LIBDEVICE_PATH)
2019-02-06 22:33:01 +08:00
$(TOP_V): $(SCALA_FILE)
mkdir -p $(@D)
sbt 'runMain top.$(TOP) -td $(@D) --output-file $@'
sed -i -e 's/_\(aw\|ar\|w\|r\|b\)_\(\|bits_\)/_\1/g' $@
2019-02-06 22:33:01 +08:00
2019-02-10 01:46:53 +08:00
verilog: $(TOP_V)
2019-02-09 11:17:16 +08:00
test: libdevice
sbt '$(SIMCMD) --tr-rollback-buffers 0'
2019-02-06 22:33:01 +08:00
2019-02-09 11:17:16 +08:00
emu: libdevice
2019-02-09 11:09:57 +08:00
sbt '$(SIMCMD) --backend-name verilator --generate-vcd-output off'
2019-02-06 22:33:01 +08:00
clean:
rm -rf $(BUILD_DIR)
2019-02-10 01:46:53 +08:00
.PHONY: libdevice verilog test emu clean