matrix:
  unix_platform:
    - debian10
    - debian11
    - macos
    - macos_arm64
    - ubuntu2004
    - ubuntu2204
    - ubuntu2404
  windows_platform:
    - windows
  bazel: [7.x, 8.x, rolling]
tasks:
  unix_verify_targets:
    name: Verify build targets
    platform: ${{ unix_platform }}
    bazel: ${{ bazel }}
    build_flags:
      - '--cxxopt=-std=c++17'
      - '--process_headers_in_dependencies'
    build_targets:
      - '@boost.spirit//:boost.spirit'
  windows_verify_targets:
    name: Verify build targets
    platform: ${{ windows_platform }}
    bazel: ${{ bazel }}
    build_flags:
      - '--cxxopt=/std:c++17'
      - '--process_headers_in_dependencies'
    build_targets:
      - '@boost.spirit//:boost.spirit'
bcr_test_module:
  module_path: test
  matrix:
    unix_platform:
      - debian10
      - debian11
      - macos
      - macos_arm64
      - ubuntu2004
      - ubuntu2204
      - ubuntu2404
    windows_platform:
      - windows
    bazel: [7.x, 8.x, rolling]
  tasks:
    unix_run_test_module:
      name: Run test module
      platform: ${{ unix_platform }}
      bazel: ${{ bazel }}
      build_flags:
        - '--cxxopt=-std=c++17'
        - '--process_headers_in_dependencies'
      build_targets:
        - //...
      test_targets:
        - //...
    windows_run_test_module:
      name: Run test module
      platform: ${{ windows_platform }}
      bazel: ${{ bazel }}
      build_flags:
        - '--cxxopt=/std:c++17'
        - '--process_headers_in_dependencies'
      build_targets:
        - //...
      test_targets:
        - //...
