diff --git a/windows.yml b/windows.yml new file mode 100644 index 0000000..323d864 --- /dev/null +++ b/windows.yml @@ -0,0 +1,51 @@ +name: C/C++ CI (Windows) + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + build: + runs-on: windows-latest + steps: + # https://github.com/actions/runner-images/issues/6067#issuecomment-1213069040 + - name: Install Windows XP Support for Visual Studio + run: | + Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\" + $InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" + $componentsToAdd = @( + "Microsoft.VisualStudio.Component.WinXP" + ) + [string]$workloadArgs = $componentsToAdd | ForEach-Object {" --add " + $_} + $Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache') + $process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden + if ($process.ExitCode -eq 0) + { + Write-Host "components have been successfully added" + Get-ChildItem C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.Windows.XPSupport.* + } + else + { + Write-Host "components were not installed" + exit 1 + } + + - name: Checkout Source Tree + uses: actions/checkout@v3 + + - name: Setup MSBuild + uses: microsoft/setup-msbuild@v1 + + - name: Build xpmgr (x86) + run: msbuild xpmgr.vcxproj /P:Configuration=Release /P:Platform=Win32 + + - name: Build xpmgr (x64) + run: msbuild xpmgr.vcxproj /P:Configuration=Release /P:Platform=x64 + + - name: Upload build artifact + uses: actions/upload-artifact@v3.1.2 + with: + name: xpmgr + path: .