debug: Checkpoint restoring Spike functionality
[riscv-tests.git] / debug / Makefile
1 RISCV_SIM ?= spike
2 XLEN ?= 64
3
4 OPENOCD_INSTALL ?= $(abspath .)/openocd-install
5 OPENOCD_VERSION = 860b42a3c4f6aa37d8d4fe50a71000b7cff66b85
6
7 OPENOCD_DIR = $(OPENOCD_INSTALL)_$(OPENOCD_VERSION)/
8
9 $(OPENOCD_DIR)/bin/openocd:
10 rm -rf riscv-openocd
11 git clone http://github.com/riscv/riscv-openocd.git
12 cd riscv-openocd ; \
13 git checkout $(OPENOCD_VERSION) ; \
14 ./bootstrap ; \
15 ./configure --enable-remote_bitbang --prefix=$(OPENOCD_INSTALL)_$(OPENOCD_VERSION) --disable-werror; \
16 make ; \
17 make install
18
19 install_openocd: $(OPENOCD_DIR)/bin/openocd
20
21 src_dir ?= .
22 GDBSERVER_PY = $(src_dir)/gdbserver.py
23
24 default: spike$(XLEN).log
25
26 all: pylint spike32.log spike64.log
27
28 pylint:
29 pylint --rcfile=pylint.rc *.py
30
31 %.log:
32 $(GDBSERVER_PY) --isolate --$(subst .log,,$@) --server_cmd $(OPENOCD_DIR)/bin/openocd \
33 > $@ 2>&1 || (sed s/^/$@:\ / $@ && false)
34
35 clean:
36 rm -f *.log *.pyc