# Shared with .gitea/workflows/build.yml and .gitea/workflows/release.yml -- # this is the actual Windows configure/build/test/verify sequence. Edit once, # here, so both workflows stay in sync instead of drifting copies. # # The default Visual Studio generator is required, not Ninja: # cmake/windows/buildspec.cmake keys the dependency slice off # CMAKE_VS_PLATFORM_NAME, which only a VS generator sets. # # Same fallback as macOS, and the same warning: a green job that quietly # stopped building the plugin is worse than a red one. PowerShell, not bash: # self-hosted Windows runners here cannot be assumed to have a working bash # (WSL as local system is refused). cmake -S . -B build -A x64 if ($LASTEXITCODE -ne 0) { Write-Host "::warning::OBS SDK bootstrap failed on Windows; building the core library only. The plugin module was NOT built." Remove-Item -Recurse -Force build -ErrorAction SilentlyContinue cmake -S . -B build -A x64 -DSTPLUGIN_BOOTSTRAP_OBS=OFF if ($LASTEXITCODE -ne 0) { exit 1 } } cmake --build build --config Release ctest --test-dir build -C Release --output-on-failure # Show what was built. # # This is not purely informational: the from-source libobs bootstrap is # expected to work reliably on this runner (that is the whole point of the # buildspec bootstrap + find_package fix), so a missing module here is a # regression to fail loudly on, not the old silent fallback. $module = "build\package\bin\64bit\streamer-tools-camera.dll" if (Test-Path $module) { Get-ChildItem build\package\bin\64bit } else { Write-Host "::error::no plugin module was built -- $module is missing. The Windows from-source libobs bootstrap is expected to succeed; treat this as a build failure, not a core-library-only fallback." exit 1 }