Files
yaze/cmake
Claude 445de5b7cf fix: implement platform-specific CI presets to resolve build failures
This commit implements the fixes identified in CI_BUILD_FAILURE_ANALYSIS.md
to ensure stable, fast CI builds across all platforms.

Changes:
1. Add platform-specific CI presets (ci-linux, ci-macos, ci-windows)
   - Disable gRPC to avoid 30-40 min build times and MSVC errors
   - Use minimal build configuration for faster, reliable CI
   - Expected build time reduction: ~40 min -> 5-10 min

2. Update CI workflow to use platform-specific presets
   - Build job now uses ci-linux, ci-macos, ci-windows
   - Test job now uses platform-specific presets
   - Ensures consistent behavior across all platforms

3. Fix gRPC version for Windows MSVC compatibility
   - Downgrade from v1.75.1 to v1.67.1
   - v1.75.1 has UPB compilation errors on Windows MSVC
   - v1.67.1 is tested and stable on all platforms

4. Update test presets to use 'minimal' configuration
   - Ensures test presets work on all platforms
   - Consistent with new CI approach

Benefits:
- Eliminates Windows MSVC gRPC compilation errors
- Prevents Linux CI timeout issues from long gRPC builds
- Reduces CI build time by ~75% (40 min -> 5-10 min)
- Maintains build stability for releases
- No symbol linkage conflicts (verified)

Technical Notes:
- Test executables use gtest_main (no main() conflicts)
- Main app (yaze), emulator (yaze_emu), and tests are separate executables
- Shared libraries (yaze_core, yaze_gfx, etc.) properly isolated
- gRPC disabled in CI but still available for local dev builds
2025-11-03 22:15:50 +00:00
..