bump OpenOCD version
[riscv-tests.git] / debug / Makefile
index 1d90e122895cef3c194ace4aa2e912e9e3e67ac6..9b36e545594dbece863c89d77bc32ff9db75fa57 100644 (file)
@@ -1,18 +1,36 @@
 RISCV_SIM ?= spike
 XLEN ?= 64
 
+OPENOCD_INSTALL ?= $(abspath .)/openocd-install
+OPENOCD_VERSION = d8683119c0a1aa88320c7a6d4f0d6f63a5f976c5
+
+OPENOCD_DIR = $(OPENOCD_INSTALL)_$(OPENOCD_VERSION)/
+
+$(OPENOCD_DIR)/bin/openocd:
+       rm -rf riscv-openocd
+       git clone http://github.com/riscv/riscv-openocd.git
+       cd riscv-openocd ; \
+       git checkout $(OPENOCD_VERSION) ; \
+       ./bootstrap ; \
+       ./configure --enable-remote_bitbang --prefix=$(OPENOCD_INSTALL)_$(OPENOCD_VERSION) --disable-werror; \
+       make ; \
+       make install
+
+install_openocd: $(OPENOCD_DIR)/bin/openocd
+
 src_dir ?= .
 GDBSERVER_PY = $(src_dir)/gdbserver.py
 
 default:       spike$(XLEN).log
 
-all:   spike32.log spike64.log
+all:   pylint spike32.log spike64.log
 
-spike32.log:
-       $(GDBSERVER_PY) --isolate --spike32 --cmd $(RISCV_SIM) -- -v > $@ 2>&1
+pylint:
+       pylint --rcfile=pylint.rc *.py
 
-spike64.log:
-       $(GDBSERVER_PY) --isolate --spike --cmd $(RISCV_SIM) -- -v > $@ 2>&1
+%.log:
+       $(GDBSERVER_PY) --isolate --$(subst .log,,$@) --server_cmd $(OPENOCD_DIR)/bin/openocd \
+           > $@ 2>&1 || (sed s/^/$@:\ / $@ && false)
 
 clean:
-       rm -f *.log
+       rm -f *.log *.pyc