#!/bin/bash # This script builds and tests all supported platform targets to ensure # stability before a major commit. # # What it verifies: # 1. Native build (macOS/Linux) with all tests and tools # 2. All 26 tests pass # 3. All tools compile (spectool, specview, specplay) # 4. Windows cross-compilation (if mingw-w64 available) # # Usage: ./scripts/check_all.sh set -e echo "--- Running Native Build & Tests ---" echo "Configuring with all options enabled (tests + tools)..." cmake -S . -B build -DDEMO_BUILD_TESTS=ON -DDEMO_BUILD_TOOLS=ON echo "Building all targets (demo, tests, and tools)..." cmake --build build -j8 echo "Running test suite..." (cd build && ctest --output-on-failure) echo "Verifying tools compile..." cmake --build build --target spectool specview specplay -j8 echo "" echo "--- Running Windows Cross-Compilation Build ---" ./scripts/build_win.sh echo "" echo "All checks passed successfully."