ci/cd: Windows goes vcpkg manifest + MSVC on the VS 2026 runner
The MinGW path kept fighting the environment (the GitHub image's MSVC INCLUDE/LIB poison the GNU compiles; ocio-sys' fork then dragged the MSVC-only headers into g++ and died on vcruntime.h). The Windows jobs on both workflows now: - run on warp-windows-2025-vs2026-x64-16x (preinstalled VS 2026) with the stable MSVC Rust toolchain; - install dependencies through vcpkg MANIFEST mode: vcpkg.json at the repo root carries FFmpeg with every free codec + hwaccel (mirroring build-ffmpeg.sh's configure), pkgconf and librsvg; the vcpkg_installed tree plus the binary-cache archives are cached on the manifest hash with save-always; - build OCIO bundled (ocio-sys' vendored sources are what MSVC wants — the MSYS2 package was the workaround, not the preference), so OCIO_RS_NO_MSVC_INCLUDES is gone; - ship the vcpkg runtime DLLs next to the binaries in the NSIS installer with a static-CRT release build (no vcruntime DLLs), replacing the ntldd-based MSYS2 bundling. FFmpeg version pinning via builtin-baseline is a documented follow-up: the Configure step logs vcpkg list so the first green run reports the resolved versions. docs/build.md keeps the MSYS2 flow as the local alternative and points at the CI path.
This commit is contained in:
@@ -15,6 +15,9 @@ CmakeSettings.json
|
||||
# clangd's index and likely other things that need not be in the repository
|
||||
.cache/
|
||||
|
||||
# vcpkg manifest-mode install tree (Windows CI/CD; see vcpkg.json)
|
||||
vcpkg_installed/
|
||||
|
||||
# Generated packaging assets (icons/icon.png is produced from Oak_Icon.svg
|
||||
# by rsvg-convert in the CD workflow; see .github/workflows/cd.yml)
|
||||
/icons/
|
||||
|
||||
Reference in New Issue
Block a user