mirror of
https://github.com/transmission/transmission
synced 2024-12-22 07:42:37 +00:00
7e68cfc7e9
Using ccache 4.9 leads to puzzling errors such as C1090 "PDB API call failed, error code '23'" when building for x64.
121 lines
3.5 KiB
YAML
121 lines
3.5 KiB
YAML
version: '{build}'
|
|
|
|
environment:
|
|
AWS_ACCESS_KEY_ID:
|
|
secure: WQRc7y9bDiWiLpjm9lXdw9Q7n4extWau3W1ztQdqMgU=
|
|
AWS_SECRET_ACCESS_KEY:
|
|
secure: pP+D6ZtfXLDcEnl8pk/n3KApaV1fdGns4VkSyebs0zHzCutlvWj7ee16PalCcnBY
|
|
AWS_S3_BUCKET_NAME:
|
|
secure: Bf3x1Iruxg+l3tp+an+g9oE36EHxvyWrE8GTJzZh4Ss=
|
|
|
|
matrix:
|
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
|
|
TR_ARCH: x86
|
|
QT_VERSION: '5'
|
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
|
|
TR_ARCH: x86
|
|
QT_VERSION: '6'
|
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
|
|
TR_ARCH: x64
|
|
QT_VERSION: '5'
|
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
|
|
TR_ARCH: x64
|
|
QT_VERSION: '6'
|
|
|
|
branches:
|
|
only:
|
|
- main
|
|
- /^\d+\.\d+.*/
|
|
|
|
for:
|
|
-
|
|
matrix:
|
|
only:
|
|
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
|
|
|
|
clone_folder: '%SystemDrive%\%TR_ARCH%-project'
|
|
|
|
cache:
|
|
- '%SystemDrive%\%TR_ARCH%-ccache'
|
|
|
|
init:
|
|
- pwsh: |
|
|
$Env:APPVEYOR_SAVE_CACHE_ON_ERROR = 'true'
|
|
|
|
install:
|
|
- pwsh: |
|
|
$Version = git describe --tags --abbrev=10 --always
|
|
if ($Version -ne $Env:APPVEYOR_REPO_BRANCH) {
|
|
$Version += "-${Env:APPVEYOR_REPO_BRANCH}"
|
|
}
|
|
|
|
$BuildIndex = 0
|
|
appveyor UpdateBuild -Version $Version
|
|
while ($LastExitCode -ne 0) {
|
|
$BuildIndex += 1
|
|
appveyor UpdateBuild -Version "${Version}+${BuildIndex}"
|
|
}
|
|
|
|
git submodule update --init --recursive
|
|
|
|
choco install python3 --pre
|
|
choco install nasm
|
|
choco install jom
|
|
choco install wixtoolset --version 3.11.2
|
|
choco install ccache --version 4.8.3
|
|
|
|
Remove-Item -Path (Join-Path $Env:SystemDrive OpenSSL-Win32) -Recurse
|
|
Remove-Item -Path (Join-Path $Env:SystemDrive OpenSSL-Win64) -Recurse
|
|
|
|
Install-Module -Name SignPath
|
|
|
|
build_script:
|
|
- pwsh: |
|
|
$Env:PATH = @(
|
|
(Join-Path $Env:SystemDrive Strawberry perl bin)
|
|
(Join-Path $Env:ProgramFiles NASM)
|
|
(Join-Path ${Env:ProgramFiles(x86)} 'WiX Toolset v3.11' bin)
|
|
$Env:PATH
|
|
) -join [System.IO.Path]::PathSeparator
|
|
|
|
$Env:CCACHE_DIR = "${Env:SystemDrive}\${Env:TR_ARCH}-ccache"
|
|
$Env:CCACHE_MAXSIZE = '500Mi'
|
|
|
|
Set-ExecutionPolicy -Scope Process Bypass
|
|
|
|
try {
|
|
& (Join-Path $Env:APPVEYOR_BUILD_FOLDER release windows main.ps1) `
|
|
-Mode Build `
|
|
-BuildArch $env:TR_ARCH `
|
|
-CCachePart App `
|
|
-UseQtVersion $Env:QT_VERSION `
|
|
-PackDebugSyms:$($Env:APPVEYOR_REPO_BRANCH -eq "main" -or $Env:APPVEYOR_REPO_TAG -eq "true")
|
|
} catch {
|
|
Write-Error ("{1}{0}{2}{0}{3}" -f [Environment]::NewLine, $_.ToString(), $_.InvocationInfo.PositionMessage, $_.ScriptStackTrace) -ErrorAction Continue
|
|
exit 1
|
|
}
|
|
|
|
test_script:
|
|
- pwsh: |
|
|
Set-ExecutionPolicy -Scope Process Bypass
|
|
|
|
try {
|
|
& (Join-Path $Env:APPVEYOR_BUILD_FOLDER release windows main.ps1) `
|
|
-Mode Test `
|
|
-BuildArch $env:TR_ARCH
|
|
} catch {
|
|
Write-Error ("{1}{0}{2}{0}{3}" -f [Environment]::NewLine, $_.ToString(), $_.InvocationInfo.PositionMessage, $_.ScriptStackTrace) -ErrorAction Continue
|
|
exit 1
|
|
}
|
|
|
|
artifacts:
|
|
- path: '*.msi'
|
|
- path: '*-pdb.7z'
|
|
|
|
deploy:
|
|
- provider: Webhook
|
|
url: https://app.signpath.io/API/v1/8c96c8c9-a72c-4b46-a53c-80aad617f6bc/Integrations/AppVeyor?ProjectKey=transmission&SigningPolicyKey=release-signing
|
|
authorization:
|
|
secure: PrvcykaHmPgJ0ENht1q58tCfjRcmybiOeHYrvtQtAGsfahWvniAfP66DqHxv872acpyf3FpJn2ETCeszoVuFGA==
|
|
on:
|
|
APPVEYOR_REPO_TAG: true
|