From f719fa678fb1e89d65fb640f3c5bc90406f5c818 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Mon, 31 Mar 2025 20:48:39 +0200 Subject: [PATCH] Fix: [CI] force a CMake minimum version of 3.5 for all dependencies (#13936) With CMake 4.0.0, any project < 3.5 is no longer supported. Yet, some projects indicate 3.0 or 3.1 (while fully compatible with 3.5+). But CMake doesn't know, so it bails. --- .github/workflows/release-docs.yml | 5 ++++- .github/workflows/release-linux.yml | 5 ++++- .github/workflows/release-macos.yml | 15 ++++++++++++--- .github/workflows/release-windows.yml | 15 ++++++++++++--- 4 files changed, 32 insertions(+), 8 deletions(-) diff --git a/.github/workflows/release-docs.yml b/.github/workflows/release-docs.yml index c811e01e18..3f1de96629 100644 --- a/.github/workflows/release-docs.yml +++ b/.github/workflows/release-docs.yml @@ -43,7 +43,10 @@ jobs: cd ${GITHUB_WORKSPACE}/build echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DOPTION_DOCS_ONLY=ON \ # EOF diff --git a/.github/workflows/release-linux.yml b/.github/workflows/release-linux.yml index d6f79057d2..8711bf373a 100644 --- a/.github/workflows/release-linux.yml +++ b/.github/workflows/release-linux.yml @@ -136,7 +136,10 @@ jobs: cd build echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -DCMAKE_TOOLCHAIN_FILE=/vcpkg/scripts/buildsystems/vcpkg.cmake \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \ diff --git a/.github/workflows/release-macos.yml b/.github/workflows/release-macos.yml index db063ab8c4..97de21ece3 100644 --- a/.github/workflows/release-macos.yml +++ b/.github/workflows/release-macos.yml @@ -74,7 +74,10 @@ jobs: cd build-host echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DOPTION_TOOLS_ONLY=ON \ # EOF @@ -101,7 +104,10 @@ jobs: cd build-arm64 echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -DCMAKE_OSX_ARCHITECTURES=arm64 \ -DVCPKG_TARGET_TRIPLET=arm64-osx \ -DCMAKE_TOOLCHAIN_FILE=${{ runner.temp }}/vcpkg/scripts/buildsystems/vcpkg.cmake \ @@ -122,7 +128,10 @@ jobs: cd build-x64 echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -DCMAKE_OSX_ARCHITECTURES=x86_64 \ -DVCPKG_TARGET_TRIPLET=x64-osx \ -DCMAKE_TOOLCHAIN_FILE=${{ runner.temp }}/vcpkg/scripts/buildsystems/vcpkg.cmake \ diff --git a/.github/workflows/release-windows.yml b/.github/workflows/release-windows.yml index d47b3645e5..bde737469f 100644 --- a/.github/workflows/release-windows.yml +++ b/.github/workflows/release-windows.yml @@ -84,7 +84,10 @@ jobs: cd build-host echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -GNinja \ -DOPTION_TOOLS_ONLY=ON \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ @@ -108,7 +111,10 @@ jobs: cd build echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -GNinja \ -DVCPKG_TARGET_TRIPLET=${{ matrix.arch }}-windows-static \ -DCMAKE_TOOLCHAIN_FILE="${{ runner.temp }}\vcpkg\scripts\buildsystems\vcpkg.cmake" \ @@ -138,7 +144,10 @@ jobs: cd build echo "::group::CMake" - cmake ${GITHUB_WORKSPACE} \ + # CMake 4.0.0 deprecated < 3.5, but some vcpkg packages still use it. + # Yet, they are fully compatible with 3.5, and so there is no problem + # forcing them to upgrade. + CMAKE_POLICY_VERSION_MINIMUM=3.5 cmake ${GITHUB_WORKSPACE} \ -GNinja \ -DVCPKG_TARGET_TRIPLET=${{ matrix.arch }}-windows-static \ -DCMAKE_TOOLCHAIN_FILE="${{ runner.temp }}\vcpkg\scripts\buildsystems\vcpkg.cmake" \