#!/usr/bin/env bash
set -euo pipefail

repo_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
idf_dir="$repo_dir/.cache/esp-idf-v5.5.4"
tools_dir="$repo_dir/.cache/espressif"

mkdir -p "$repo_dir/.cache" "$tools_dir"
if [[ ! -d "$idf_dir/.git" ]]; then
    git clone --branch v5.5.4 --depth 1 --recursive \
        https://github.com/espressif/esp-idf.git "$idf_dir"
else
    git -C "$idf_dir" submodule update --init --recursive
fi

IDF_TOOLS_PATH="$tools_dir" "$idf_dir/install.sh" esp32s3
IDF_TOOLS_PATH="$tools_dir" python3 "$idf_dir/tools/idf_tools.py" install cmake ninja

echo "Cloud build environment ready: ESP-IDF 5.5.4"
echo "Next: ./scripts/build.sh m5stack-stopwatch"
