ci/cd: build vcpkg ports release-only via an overlay triplet
vcpkg builds every port twice (release + debug) in manifest mode and the VCPKG_BUILD_TYPE environment variable is ignored there; pin the build type in overlay triplets instead (tooling/vcpkg-triplets/release, one per supported triplet). The release configuration is what both workflows consume: FFMPEG_DIR drives the release layout (lib/pkgconfig) and the C ABI is identical for the debug binary CI tests. Verified locally in debian:12: a release-only overlay builds zlib/libpng/openssl/pkgconf/ libsndfile with zero debug trees. Debug-only is not an option: ports like zlib patch files in the release layout and fail when only the debug configuration is built.
This commit is contained in:
@@ -274,7 +274,7 @@ jobs:
|
||||
# whole install — vcpkg refuses to retry that class of curl
|
||||
# error — so retry here.
|
||||
for attempt in 1 2 3; do
|
||||
vcpkg install --triplet ${{ matrix.triplet }} && exit 0
|
||||
vcpkg install --triplet ${{ matrix.triplet }} --overlay-triplets tooling/vcpkg-triplets/release && exit 0
|
||||
echo "vcpkg install failed (attempt $attempt); retrying"
|
||||
sleep 15
|
||||
done
|
||||
@@ -285,7 +285,7 @@ jobs:
|
||||
shell: pwsh
|
||||
run: |
|
||||
for ($i = 1; $i -le 3; $i++) {
|
||||
vcpkg install --triplet ${{ matrix.triplet }}
|
||||
vcpkg install --triplet ${{ matrix.triplet }} --overlay-triplets tooling/vcpkg-triplets/release
|
||||
if ($LASTEXITCODE -eq 0) { exit 0 }
|
||||
Write-Host "vcpkg install failed (attempt $i); retrying"
|
||||
Start-Sleep -Seconds 15
|
||||
|
||||
Reference in New Issue
Block a user