Commit Graph

19 Commits

Author SHA1 Message Date
PatTheMav
b146ca3dcd cmake: Use precise 4-component SDK version for Windows SDK
CMake internally manages the Windows SDK version as a 4-component
version string. If only provided with 3 components, CMake will
implicitly add a "0" as the fourth component and the internal
CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION variable will represent that
4-component string.

As this variable is used to set up sub-projects for other platforms,
re-creating them will fail if the original version is only provided
in its 3-component form.
2025-08-28 15:38:55 -04:00
Ryan Foster
86036c6dd9 CI: Update macOS deployment target to macOS 12
Qt 6.8.3 only supports macOS 12+. It does not support macOS 11, and OBS
Studio will fail to launch on macOS 11 as a result. We should reflect
that with our deployment target.

https://doc.qt.io/qt-6.8/supported-platforms.html
2025-06-30 14:50:14 -04:00
Matt Gajownik
de61fd5756 CI: Add CEF & enable obs-browser for Windows on ARM 2025-05-20 12:50:41 -04:00
PatTheMav
df97bddd87 cmake: Update cross-platform build project management for Windows
Enables creation of x64 and x86 child projects when building on ARM64
and decouples functionality from legacy_check function
2025-03-12 16:33:00 -04:00
Ryan Foster
d7c798c60d CI: Use Windows 11 SDK 10.0.22621.0
Some checks failed
Push / Format 🔍 (push) Has been cancelled
Push / Build 🧱 (push) Has been cancelled
Push / Validate Compatibility 🕵️ (push) Has been cancelled
Push / Validate Services 🕵️ (push) Has been cancelled
Push / Update Documentation 📖 (push) Has been cancelled
Push / Deploy Documentation to Cloudflare ☁️ (push) Has been cancelled
Push / Create Sparkle Appcast 🎙️ (arm64) (push) Has been cancelled
Push / Create Sparkle Appcast 🎙️ (x86_64) (push) Has been cancelled
Push / merge-appcasts (push) Has been cancelled
Push / Windows Signing ✍️ (push) Has been cancelled
Push / Create Release 🛫 (push) Has been cancelled
Before 6c590805e8, builds on Windows would
automatically select a Windows SDK using CMake's rules:

https://cmake.org/cmake/help/v3.25/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.html
https://cmake.org/cmake/help/v3.30/variable/CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.html
https://cmake.org/cmake/help/v3.30/policy/CMP0149.html

This meant that CI Windows builds would end up using SDK 10.0.20348.0
because that matched the runner's OS version exactly. Locally, if a
Windows SDK version that exactly matched the host system version was not
installed, CMake would select the latest Windows SDK available. This
caused some observed differences in build success between CI and local
builds if a newer SDK was used locally.

The Windows runners have the 10.0.22621.0 SDK installed, so let's
specifically select that.
2024-09-13 19:08:22 -04:00
PatTheMav
6c590805e8 cmake: Update supported CMake version range to 3.28 and 3.30 2024-09-13 14:42:32 -04:00
PatTheMav
cfc12d0543 cmake: Disable CCache for local builds and enable by default for CI 2024-09-12 17:45:29 -04:00
Norihiro Kamae
14aaaa325b cmake/linux: Move color diagnostics setting to preset for ubuntu-ci
This also removes color diagnostics setting for cmake < 3.24.
2024-09-10 14:30:17 -04:00
tytan652
72428ccd97 Remove CMake legacy code path
Except submodules and legacy_check macro since the former depend on it.
2024-08-28 13:53:25 -04:00
derrod
2613b6a6f4 cmake: Do not disable native NVENC in Ubuntu preset 2024-08-23 13:44:04 -04:00
PatTheMav
2f1379aa64 cmake: Default to modern CMake build system for Windows 2024-08-22 15:39:00 -04:00
derrod
6e435dbe2e cmake: Update ubuntu preset with NVENC changes 2024-08-08 22:52:40 +02:00
PatTheMav
e77b12820f cmake: Add Linux component to CMake build framework 3.0 2024-04-13 23:48:38 -04:00
gxalpha
9d611a064f cmake: Remove Qt version selection and Qt 5 support 2023-07-19 11:56:54 -04:00
PatTheMav
bda58bfb8e cmake: Add services preset with OAuth configurations
Allows the use of OAuth credentials set up via environment variables
(as used on CI) without the need for extra plumbing via build scripts.

Also sets GPU_PRIORITY_VAL via preset on Windows.
2023-07-06 20:20:05 +02:00
PatTheMav
850976eba9 cmake: Add Windows component to CMake build framework 3.0 2023-06-29 10:11:32 -04:00
PatTheMav
887b537d56 cmake: Update buildspec and presets for macOS 2023-06-17 12:23:33 -04:00
PatTheMav
3f85e447a8 mac-virtualcam: Add Camera Extension to main CMake plugin project
Camera Extensions require specific entitlements for the hosting app,
which also require a provisioning profile. To avoid breaking local
builds that do not require the camera extension, an additional
entitlements file that will not trigger the provisioning profile
requirement will be used if the virtualcam (but not the Camera
Extension) is configured.
2023-05-18 14:41:08 -04:00
PatTheMav
f0dee071c1 CI: Update macOS build scripts to use new CMake presets 2023-03-26 18:20:38 -04:00