Experiment with symbol server style symbol storage

depth-refraction
AnyOldName3 2 years ago
parent ad44add658
commit f98cb67cad

@ -437,6 +437,7 @@ macOS12_Xcode13:
- $env:CCACHE_BASEDIR = Get-Location
- $env:CCACHE_DIR = "$(Get-Location)\ccache"
- New-Item -Type Directory -Force -Path $env:CCACHE_DIR
- New-Item -Type File -Force -Path MSVC2019_64_Ninja\.cmake\api\v1\query\codemodel-v2
- sh CI/before_script.msvc.sh -c $config -p Win64 -v 2019 -k -V -N -b -t -C $multiview -E
- cd MSVC2019_64_Ninja
- .\ActivateMSVC.ps1
@ -448,6 +449,10 @@ macOS12_Xcode13:
- |
if (Get-ChildItem -Recurse *.pdb) {
7z a -tzip "..\..\$(Make-SafeFileName("OpenMW_MSVC2019_64_${config}_${CI_COMMIT_REF_NAME}_${CI_JOB_ID}_symbols.zip"))" '*.pdb' CI-ID.txt
Push-Location ..
..\CI\Store-Symbols.ps1
7z a -tzip "..\$(Make-SafeFileName("OpenMW_MSVC2019_64_${config}_${CI_COMMIT_REF_NAME}_${CI_JOB_ID}_sym_store.zip"))" '.\SymStore\*' CI-ID.txt
Pop-Location
Get-ChildItem -Recurse *.pdb | Remove-Item
}
- 7z a -tzip "..\..\$(Make-SafeFileName("OpenMW_MSVC2019_64_${config}_${CI_COMMIT_REF_NAME}.zip"))" '*'
@ -539,6 +544,7 @@ macOS12_Xcode13:
- $env:CCACHE_BASEDIR = Get-Location
- $env:CCACHE_DIR = "$(Get-Location)\ccache"
- New-Item -Type Directory -Force -Path $env:CCACHE_DIR
- New-Item -Type File -Force -Path MSVC2019_64\.cmake\api\v1\query\codemodel-v2
- sh CI/before_script.msvc.sh -c $config -p Win64 -v 2019 -k -V -b -t -C $multiview -E
- cd MSVC2019_64
- cmake --build . --config $config
@ -549,6 +555,10 @@ macOS12_Xcode13:
- |
if (Get-ChildItem -Recurse *.pdb) {
7z a -tzip "..\..\$(Make-SafeFileName("OpenMW_MSVC2019_64_${config}_${CI_COMMIT_REF_NAME}_${CI_JOB_ID}_symbols.zip"))" '*.pdb' CI-ID.txt
Push-Location ..
..\CI\Store-Symbols.ps1
7z a -tzip "..\$(Make-SafeFileName("OpenMW_MSVC2019_64_${config}_${CI_COMMIT_REF_NAME}_${CI_JOB_ID}_sym_store.zip"))" '.\SymStore\*' CI-ID.txt
Pop-Location
Get-ChildItem -Recurse *.pdb | Remove-Item
}
- 7z a -tzip "..\..\$(Make-SafeFileName("OpenMW_MSVC2019_64_${config}_${CI_COMMIT_REF_NAME}.zip"))" '*'

@ -0,0 +1,54 @@
if (-Not (Test-Path CMakeCache.txt))
{
Write-Error "This script must be run from the build directory."
}
if (-Not (Test-Path .cmake\api\v1\reply))
{
New-Item -Type File -Force .cmake\api\v1\query\codemodel-v2
cmake .
}
try
{
Push-Location .cmake\api\v1\reply
$index = Get-Content -Raw index-*.json | ConvertFrom-Json
$codemodel = Get-Content -Raw $index.reply."codemodel-v2".jsonFile | ConvertFrom-Json
$targets = @()
$codemodel.configurations | ForEach-Object {
$_.targets | ForEach-Object {
$target = Get-Content -Raw $_.jsonFile | ConvertFrom-Json
if ($target.type -eq "EXECUTABLE" -or $target.type -eq "SHARED_LIBRARY")
{
$targets += $target
}
}
}
$artifacts = @()
$targets | ForEach-Object {
$_.artifacts | ForEach-Object {
$artifacts += $_.path
}
}
}
finally
{
Pop-Location
}
$windowsSDKFolder = Get-ItemPropertyValue "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Microsoft SDKs\Windows\v10.0" InstallationFolder
try
{
$responseFile = New-TemporaryFile
$artifacts | Set-Content $responseFile
& "$windowsSDKFolder\debuggers\x64\symstore.exe" add /f @$responseFile /s .\SymStore /compress /t "I don't know why /t is needed"
}
finally
{
Remove-Item $responseFile
}
Loading…
Cancel
Save