matrix:
  linux_platform: ["debian11", "ubuntu2204"]
  osx_platform: ["macos", "macos_arm64"]
  bazel: [7.x, 8.x] 

tasks:
  verify_linux_targets:
    name: Verify linux build targets
    platform: ${{ linux_platform }}
    shell_commands:
    # X11 requires libx11-dev and a few other system packages, all in xorg-dev.
    # See https://www.glfw.org/docs/latest/compile.html#compile_deps
    - sudo apt-get update
    - sudo apt-get install xorg-dev libgl1-mesa-dev -y
    bazel: ${{ bazel }}
    build_targets:
    - '@polyscope//:polyscope'
  verify_osx_targets:
    name: Verify osx build targets
    platform: ${{ osx_platform }}
    bazel: ${{ bazel }}
    build_targets:
    - '@polyscope//:polyscope'
    build_flags:
    - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1"

bcr_test_module:
  module_path: "."
  matrix:
    linux_platform: ["debian11", "ubuntu2204"]
    osx_platform: ["macos", "macos_arm64"]
    bazel: ["7.x", "8.x"]
  tasks:
    run_test_module_linux:
      name: Run test module (Linux)
      platform: ${{ linux_platform }}
      bazel: ${{ bazel }}
      shell_commands:
      # X11 requires libx11-dev and a few other system packages, all in xorg-dev.
      # See https://www.glfw.org/docs/latest/compile.html#compile_deps
      - sudo apt-get update
      - sudo apt-get install xorg-dev libgl1-mesa-dev -y
      test_targets:
      - '@polyscope//test:polyscope_tests'
    run_test_module_osx:
      name: Run test module (MacOS)
      platform: ${{ osx_platform }}
      bazel: ${{ bazel }}
      build_flags:
      - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1"
      test_targets:
      - '@polyscope//test:polyscope_tests'