#!/usr/bin/env bash set -euo pipefail echo "📦 Setting up C++ dependencies" echo "==============================" OS="$(uname -s)" case "${OS}" in Linux*) if command -v apt &> /dev/null; then echo "Installing via apt..." sudo apt update sudo apt install -y build-essential cmake ninja-build clang-format elif command -v dnf &> /dev/null; then echo "Installing via dnf..." sudo dnf install -y gcc-c++ cmake ninja-build clang-tools-extra elif command -v pacman &> /dev/null; then echo "Installing via pacman..." sudo pacman -S --needed base-devel cmake ninja clang fi ;; Darwin*) if command -v brew &> /dev/null; then echo "Installing via Homebrew..." brew install cmake ninja else echo "⚠ Homebrew not found. Install from https://brew.sh" fi ;; MINGW*|MSYS*|CYGWIN*) echo "Windows detected. Ensure you have:" echo " - Visual Studio 2022 with C++ workload, OR" echo " - MSYS2: pacman -S mingw-w64-x86_64-toolchain cmake" ;; *) echo "Unknown OS: ${OS}" ;; esac echo "" echo "✅ Dependencies setup complete"