30 lines
755 B
Bash
Executable File
30 lines
755 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -euo pipefail
|
|
|
|
CONTAINER_IMAGE="localhost/wch-dev-tools:latest"
|
|
CONTAINER_TOOLS_BASEDIR="$(dirname "$(readlink -f "$0")")"
|
|
|
|
function _fatal {
|
|
echo -e "\e[31mERROR\e[0m $(</dev/stdin)$*" 1>&2
|
|
exit 1
|
|
}
|
|
|
|
declare -a PODMAN_ARGS=(
|
|
"--rm" "-i" "--log-driver=none"
|
|
"--network=host"
|
|
"--pid=host"
|
|
"-v" "$PWD:$PWD:rw"
|
|
"-w" "$PWD"
|
|
)
|
|
|
|
[[ -t 1 ]] && PODMAN_ARGS+=("-t")
|
|
|
|
if ! podman image exists "$CONTAINER_IMAGE"; then
|
|
#attempt to build container
|
|
"$CONTAINER_TOOLS_BASEDIR/build-wch-tools-container.sh" 1>&2 ||
|
|
_fatal "faild to build local image, cannot continue! … please ensure you have an internet connection"
|
|
fi
|
|
|
|
podman run "${PODMAN_ARGS[@]}" --entrypoint riscv-none-elf-gdb-py3 "$CONTAINER_IMAGE" "$@"
|