name: Test Builds on Windows on: [push, pull_request, workflow_dispatch] jobs: build-set-windows: runs-on: windows-2022 steps: - name: Checkout code id: checkout-code uses: actions/checkout@v3 with: submodules: recursive - name: Setup glslangValidator shell: pwsh run: | choco install vulkan-sdk -y Write-Output "$([System.Environment]::GetEnvironmentVariable('VULKAN_SDK', 'Machine'))\Bin" ` | Out-File -FilePath "${Env:GITHUB_PATH}" -Append - name: Setup Meson shell: pwsh run: pip install meson - name: Find Visual Studio shell: pwsh run: | $installationPath = Get-VSSetupInstance ` | Select-VSSetupInstance -Require Microsoft.VisualStudio.Workload.NativeDesktop -Latest ` | Select-Object -ExpandProperty InstallationPath Write-Output "VSDEVCMD=${installationPath}\Common7\Tools\VsDevCmd.bat" ` | Out-File -FilePath "${Env:GITHUB_ENV}" -Append - name: Build MSVC x86 shell: pwsh run: | & "${Env:COMSPEC}" /s /c "`"${Env:VSDEVCMD}`" -arch=x86 -host_arch=x64 -no_logo && set" ` | % { , ($_ -Split '=', 2) } ` | % { [System.Environment]::SetEnvironmentVariable($_[0], $_[1]) } meson --buildtype release --backend vs2022 build-msvc-x86 msbuild -m build-msvc-x86/dxvk.sln - name: Build MSVC x64 shell: pwsh run: | & "${Env:COMSPEC}" /s /c "`"${Env:VSDEVCMD}`" -arch=x64 -host_arch=x64 -no_logo && set" ` | % { , ($_ -Split '=', 2) } ` | % { [System.Environment]::SetEnvironmentVariable($_[0], $_[1]) } meson --buildtype release --backend vs2022 build-msvc-x64 msbuild -m build-msvc-x64/dxvk.sln