Files
gps/tools/doctor.sh
T

38 lines
968 B
Bash
Executable File

#!/usr/bin/env bash
set -u
repo_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd -P)"
# shellcheck source=../source.sh
source "$repo_dir/source.sh"
status=0
check() {
local label="$1"
local command_path="$2"
shift 2
if [[ -n "$command_path" && -x "$command_path" ]] && "$command_path" "$@" >/dev/null 2>&1; then
printf 'OK %-10s %s\n' "$label" "$command_path"
else
printf 'MISSING %-10s %s\n' "$label" "${command_path:-not found}"
status=1
fi
}
printf 'Project: %s\n' "$GPS_ROOT"
printf 'Platform: %s-%s\n' "$(uname -s)" "$(uname -m)"
check java "$JAVA_HOME/bin/java" -version
check mill "$MILL" --version
check firtool "$FIRTOOL" --version
riscv_gcc=""
if [[ -n "$TOOLCHAIN" ]]; then
riscv_gcc="$TOOLCHAIN/${RISCV_PREFIX}gcc"
fi
check riscv-gcc "$riscv_gcc" --version
if [[ "$(uname -s)" != Linux || "$(uname -m)" != x86_64 ]]; then
printf 'WARNING Kilitli JDK/CIRCT paketleri Linux-x86_64 icindir.\n'
fi
exit "$status"