diff --git a/coin/platform_configs/cmake_platforms.yaml b/coin/platform_configs/cmake_platforms.yaml index ef3a15c2..20806a9c 100644 --- a/coin/platform_configs/cmake_platforms.yaml +++ b/coin/platform_configs/cmake_platforms.yaml @@ -171,7 +171,7 @@ Configurations: Id: 'windows-11_23h2-arm64-msvc2022' Template: 'qtci-windows-11_23H2-aarch64-53' Compiler: 'MSVC2022' - Features: ['Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM'] + Features: ['Sccache', 'Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM'] Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer' Environment variables: [ 'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..', diff --git a/coin/platform_configs/cmake_platforms_static_release.yaml b/coin/platform_configs/cmake_platforms_static_release.yaml index 68a635ff..ace2bb80 100644 --- a/coin/platform_configs/cmake_platforms_static_release.yaml +++ b/coin/platform_configs/cmake_platforms_static_release.yaml @@ -17,7 +17,7 @@ Configurations: Id: 'windows-11_23h2-arm64-msvc2022-minimal-static-test' Template: 'qtci-windows-11_23H2-aarch64-53' Compiler: 'MSVC2022' - Features: ['UseConfigure', 'InsignificantTests', 'Packaging', 'MinimalStaticTests'] + Features: ['Sccache', 'UseConfigure', 'InsignificantTests', 'Packaging', 'MinimalStaticTests'] Configure arguments: '-static -release -headersclean -nomake examples -qt-libjpeg -no-icu -qt-doubleconversion -qt-zlib -c++std c++17 -no-sql-psql' Environment variables: [ 'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..', @@ -38,7 +38,7 @@ Configurations: Id: 'ubuntu-24.04-arm64' Template: 'qtci-linux-Ubuntu-24.04-aarch64-52' Compiler: 'GCC' - Features: ['Packaging', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests'] + Features: ['Sccache', 'Packaging', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests'] Configure arguments: '-static -nomake examples -release -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -no-libudev -bundled-xcb-xinput -no-icu -qt-doubleconversion' Environment variables: [ 'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY', diff --git a/coin/platform_configs/macos.yaml b/coin/platform_configs/macos.yaml index dc4ce7db..d67da200 100644 --- a/coin/platform_configs/macos.yaml +++ b/coin/platform_configs/macos.yaml @@ -48,19 +48,19 @@ Configurations: Id: 'macos-13-arm64-tests' Template: 'qtci-macos-13-arm-107' Compiler: 'Clang' - Features: ['TestOnly', 'Packaging'] + Features: ['Sccache', 'TestOnly', 'Packaging'] Platform dependency: 'macos-universal-on-arm64' - Id: 'macos-14-arm64-tests' Template: 'qtci-macos-14-arm-106' Compiler: 'Clang' - Features: ['TestOnly', 'Packaging'] + Features: ['Sccache', 'TestOnly', 'Packaging'] Platform dependency: 'macos-universal-on-arm64' - Id: 'macos-15-arm64-tests' Template: 'qtci-macos-15-arm-104' Compiler: 'Clang' - Features: ['TestOnly', 'Packaging'] + Features: ['Sccache', 'TestOnly', 'Packaging'] Platform dependency: 'macos-universal-on-arm64' # ========================================================================= @@ -83,7 +83,7 @@ Configurations: Id: 'macos-arm64-developer-build' Template: 'qtci-macos-15-arm-104' Compiler: 'Clang' - Features: ['DoNotRunTests', 'WarningsAreErrors', 'UseConfigure'] + Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure'] Configure arguments: '-developer-build -nomake examples -debug -framework' Environment variables: [ 'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}', diff --git a/coin/provisioning/common/linux/sccache.sh b/coin/provisioning/common/linux/sccache.sh index b7e60187..73894902 100755 --- a/coin/provisioning/common/linux/sccache.sh +++ b/coin/provisioning/common/linux/sccache.sh @@ -6,14 +6,13 @@ set -ex source "${BASH_SOURCE%/*}/../unix/sccache.sh" -targetVersion=0.2.14 - +targetVersion=v0.11.0 if [[ $(uname -m) == 'aarch64' ]]; then targetArch=aarch64-unknown-linux-musl - sha1=0f9b57c423d77f7aa89bb642864ac7689d84d6a0 + sha1=b7606d0fb461c0aa7351f511d9223416a322d52a else targetArch=x86_64-unknown-linux-musl - sha1=281680c0fc2c09173e94d12ba45d9f1b8e62e5b3 + sha1=ef389a20c85b732cccd48436a5e28ed40bed2806 fi installSccache "$targetArch" "$targetVersion" "$sha1" diff --git a/coin/provisioning/common/macos/sccache.sh b/coin/provisioning/common/macos/sccache.sh index 7896edb6..29845727 100755 --- a/coin/provisioning/common/macos/sccache.sh +++ b/coin/provisioning/common/macos/sccache.sh @@ -6,12 +6,12 @@ set -ex source "${BASH_SOURCE%/*}/../unix/sccache.sh" -targetVersion=0.2.14 +targetVersion=v0.11.0 if [[ `arch` == arm* ]]; then targetArch=aarch64-apple-darwin - sha1=ad10cd4b8889fa08e193a4165ac664876a27c0dc + sha1=3261ab99e5bb1f9f36eafa597d11491bd85da5ec else targetArch=x86_64-apple-darwin - sha1=764bc1664c0ff616d9980a6d127175d0a2041781 + sha1=57810789bf2813dfa9bf5da26a712dc30b56ce16 fi installSccache "$targetArch" "$targetVersion" "$sha1" diff --git a/coin/provisioning/common/windows/install-sccache.ps1 b/coin/provisioning/common/windows/install-sccache.ps1 index b8f1605c..95b4ac1c 100644 --- a/coin/provisioning/common/windows/install-sccache.ps1 +++ b/coin/provisioning/common/windows/install-sccache.ps1 @@ -3,14 +3,34 @@ # Install mozilla sccache -param( - [string]$arch="x86_64-pc-windows-msvc", - [string]$version="0.2.14", - [string]$sha1="bbdceb59d6fd7b6a3af02fb36f65c8bf324757b0" -) . "$PSScriptRoot\helpers.ps1" +$version="v0.11.0-jimis3" +$cpu_arch = Get-CpuArchitecture +switch ($cpu_arch) { + arm64 { + $arch="aarch64-pc-windows-msvc" + $sha1="be429b6c33da9408bba827815d04fceeadf6dbd1" + break + } + x64 { + $arch="x86_64-pc-windows-msvc" + $sha1="bcce35f6b39e2d1d0829f2277fd749767e057486" + break + } + x86 { + $arch="x86-pc-windows-gnu" + $sha1="287f4c3b7db21b72138704b8fe96827e6b1643a8" + $version="0.2.13-alpha-0" + break + } + + default { + throw "Unknown architecture $cpu_arch" + } +} + $basename = "sccache-" + $version + "-" + $arch $zipfile = $basename + ".tar.gz" $tempfile = "C:\Windows\Temp\" + $zipfile @@ -28,6 +48,9 @@ Remove-Item -Path $tempfile # Turnoff idle timeout to avoid sccache shutting down Set-EnvironmentVariable "SCCACHE_IDLE_TIMEOUT" "0" +# Prevents build job dying from random network I/O errors +Set-EnvironmentVariable "SCCACHE_IGNORE_SERVER_IO_ERROR" "1" + # add sccache to PATH Set-EnvironmentVariable "PATH" "C:\Program Files\$basename\;$([Environment]::GetEnvironmentVariable('PATH', 'Machine'))" diff --git a/coin/provisioning/qtci-windows-10-x86/20-install-sccache.ps1 b/coin/provisioning/qtci-windows-10-x86/20-install-sccache.ps1 index 9fc79ec1..0794bff3 100644 --- a/coin/provisioning/qtci-windows-10-x86/20-install-sccache.ps1 +++ b/coin/provisioning/qtci-windows-10-x86/20-install-sccache.ps1 @@ -1 +1 @@ -. "$PSScriptRoot\..\common\windows\install-sccache.ps1" "x86-pc-windows-gnu" "0.2.13-alpha-0" "287f4c3b7db21b72138704b8fe96827e6b1643a8" +. "$PSScriptRoot\..\common\windows\install-sccache.ps1" diff --git a/coin/provisioning/qtci-windows-11_22H2-aarch64/20-install-sccache.ps1 b/coin/provisioning/qtci-windows-11_22H2-aarch64/20-install-sccache.ps1 new file mode 100644 index 00000000..0794bff3 --- /dev/null +++ b/coin/provisioning/qtci-windows-11_22H2-aarch64/20-install-sccache.ps1 @@ -0,0 +1 @@ +. "$PSScriptRoot\..\common\windows\install-sccache.ps1" diff --git a/coin/provisioning/qtci-windows-11_23H2-aarch64/20-install-sccache.ps1 b/coin/provisioning/qtci-windows-11_23H2-aarch64/20-install-sccache.ps1 new file mode 100644 index 00000000..0794bff3 --- /dev/null +++ b/coin/provisioning/qtci-windows-11_23H2-aarch64/20-install-sccache.ps1 @@ -0,0 +1 @@ +. "$PSScriptRoot\..\common\windows\install-sccache.ps1"