name: 🖥️ Windows Builds

on:
  push:
    branches:
      - '*'
  pull_request:
    branches:
      - master

jobs:
  # MSBUILD
  lint_vs_proj_files:
    name: Lint VS Project Files
    runs-on: windows-2019
    steps:
      - name: Checkout Repository
        uses: actions/checkout@v3
      - name: Verify VS Project Files
        run: .github\workflows\scripts\windows\validate-vs-filters.ps1

  build_qt_sse4:
    needs: lint_vs_proj_files
    name: "SSE4"
    uses: ./.github/workflows/windows_build_qt.yml
    with:
      jobName: Qt
      configuration: Release
      simd: "SSE4"
    secrets: inherit

  build_qt_avx2:
    needs: lint_vs_proj_files
    name: "AVX2"
    uses: ./.github/workflows/windows_build_qt.yml
    with:
      jobName: Qt
      configuration: Release AVX2
    secrets: inherit

  build_qt_sse4_cmake:
    name: "CMake SSE4"
    uses: ./.github/workflows/windows_build_qt.yml
    with:
      jobName: Qt
      configuration: CMake
      buildSystem: cmake
    secrets: inherit

  build_qt_clang_sse4:
    needs: lint_vs_proj_files
    name: "SSE4"
    uses: ./.github/workflows/windows_build_qt.yml
    with:
      jobName: Qt Clang
      configuration: Release Clang
      simd: "SSE4"
    secrets: inherit

  build_qt_clang_avx2:
    needs: lint_vs_proj_files
    name: "AVX2"
    uses: ./.github/workflows/windows_build_qt.yml
    with:
      jobName: Qt Clang
      configuration: Release Clang AVX2
    secrets: inherit
