diff --git a/.gitmodules b/.gitmodules index d7691ffb..284318c6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -50,6 +50,9 @@ [submodule "toolchains/riscv-tools/riscv-tests"] path = toolchains/riscv-tools/riscv-tests url = https://github.com/riscv/riscv-tests.git +[submodule "toolchains/riscv-tools/riscv-openocd"] + path = toolchains/riscv-tools/riscv-openocd + url = https://github.com/riscv/riscv-openocd.git [submodule "vlsi/hammer"] path = vlsi/hammer url = https://github.com/ucb-bar/hammer.git diff --git a/scripts/build-openocd.sh b/scripts/build-openocd.sh new file mode 100755 index 00000000..0075fdbe --- /dev/null +++ b/scripts/build-openocd.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +# exit script if any command fails +set -e +set -o pipefail + +RDIR=$(git rev-parse --show-toplevel) + +if [ -z "${RISCV}" ] ; then + ! [ -r "${RDIR}/env.sh" ] || . "${RDIR}/env.sh" + if [ -z "${RISCV}" ] ; then + echo "${0}: set the RISCV environment variable to desired install path" + exit 1 + fi +fi + +SRCDIR="${RDIR}/toolchains/riscv-tools" +. "${RDIR}/scripts/build-util.sh" + +git config --unset submodule.toolchains/riscv-tools/riscv-openocd.update || : +module_prepare riscv-openocd +module_run riscv-openocd ./bootstrap +module_build riscv-openocd --prefix="${RISCV}" \ + --enable-remote-bitbang --enable-jtag_vpi --disable-werror diff --git a/toolchains/riscv-tools/riscv-openocd b/toolchains/riscv-tools/riscv-openocd new file mode 160000 index 00000000..7c82a7b9 --- /dev/null +++ b/toolchains/riscv-tools/riscv-openocd @@ -0,0 +1 @@ +Subproject commit 7c82a7b9d5b7d8b71e0a66826705ec141db718c3