Skip to content

Adjust SEH Exception logging code for compatibility with GOG Galaxy API #1503

Adjust SEH Exception logging code for compatibility with GOG Galaxy API

Adjust SEH Exception logging code for compatibility with GOG Galaxy API #1503

Workflow file for this run

name: Builds
on: [push, pull_request]
jobs:
Build:
runs-on: windows-latest
strategy:
fail-fast: false
#matrix:
# config: [Release]
# platform: [Win32, x64]
# Originally the build was then executed with this:
# msbuild SpecialK.sln -p:Configuration="${{ matrix.config }}" -p:Platform="${{ matrix.platform }}" -m
steps:
- uses: actions/checkout@v4
- uses: SpecialKO/GA-setup-cpp-n20@master
- name: Uninstall MSVC Toolset (latest) components
run: |
Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\"
$InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
$componentsToRemove= @(
"Microsoft.VisualStudio.Component.VC.ATL"
"Microsoft.VisualStudio.Component.VC.ATLMFC"
"Microsoft.VisualStudio.Component.VC.Tools.x86.x64"
"Microsoft.VisualStudio.Component.VC.CLI.Support"
)
[string]$workloadArgs = $componentsToRemove | ForEach-Object {" --remove " + $_}
$Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache')
# should be run twice
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
- name: Install MSVC Toolset (v14.36-17.6) components
run: |
Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\"
$InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
$componentsToRemove= @(
"Microsoft.VisualStudio.Component.VC.14.36.17.6.ATL"
"Microsoft.VisualStudio.Component.VC.14.36.17.6.MFC"
"Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64"
"Microsoft.VisualStudio.Component.VC.14.36.17.6.CLI.Support"
)
[string]$workloadArgs = $componentsToRemove | ForEach-Object {" --add " + $_}
$Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache')
# should be run twice
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
$process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden
- uses: microsoft/setup-msbuild@v2
# with:
# vs-version: '[17.6]'
#- name: Restore the required Nuget packages
# run: |
# nuget restore SpecialK.sln
- name: Build the codebase (64-bit)
run: |
msbuild SpecialK.sln -p:Configuration="Release" -p:Platform="x64" -m
- name: Build the codebase (32-bit)
run: |
msbuild SpecialK.sln -p:Configuration="Release" -p:Platform="Win32" -m
- name: Prepare environment variables for the artifact name
run: |
$Version = (Get-Item "$HOME\Documents\My Mods\SpecialK\SpecialK*.dll").VersionInfo.ProductVersion | Select-Object -First 1
If ($null -eq $Version) { $Version = "unknown" }
"SK_VERSION=$Version" | Out-File -FilePath $env:GITHUB_ENV -Encoding UTF8 -Append
"SHORT_SHA=$("${{ github.sha }}".SubString(0, 8))" | Out-File -FilePath $env:GITHUB_ENV -Encoding UTF8 -Append
- uses: actions/upload-artifact@v4
with:
name: SpecialK_${{ env.SK_VERSION }}_${{ env.SHORT_SHA }}
path: |
~\Documents\My Mods\SpecialK\*.dll
if-no-files-found: error
- uses: actions/upload-artifact@v4
with:
name: SpecialK_${{ env.SK_VERSION }}_${{ env.SHORT_SHA }}_debug_symbols
path: |
~\Documents\My Mods\SpecialK\*.pdb
if-no-files-found: warn