name: Windows Build

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

jobs:
  build-windows:

    strategy:
      matrix:
        include:
          - os: windows-latest

    runs-on: ${{ matrix.os }}

    steps:
      - uses: actions/checkout@v2
        with:
          submodules: 'true'

      - name: Set up vcpkg
        run: |
          git clone https://github.com/microsoft/vcpkg.git
          cd vcpkg
          .\bootstrap-vcpkg.bat
          .\vcpkg integrate install
          cd ..
      - name: Configure and build project with CMake and vcpkg
        run: |
          mkdir build
          cd build
          cmake -DCMAKE_BUILD_TYPE=Release -DVOXELENGINE_BUILD_WINDOWS_VCPKG=ON ..
          Remove-Item -Path CMakeFiles -Recurse -Force
          cmake -DCMAKE_BUILD_TYPE=Release -DVOXELENGINE_BUILD_WINDOWS_VCPKG=ON ..
          cmake --build . --config Release
      - name: Package for Windows
        run: |
          mkdir packaged
          cp -r build/* packaged/
        working-directory: ${{ github.workspace }}

      - uses: actions/upload-artifact@v2
        with:
          name: Windows-Build
          path: 'packaged/Release/*'
