diff --git a/CMakeLists.txt b/CMakeLists.txt index 9819235af760bd..6a45780d1b0303 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/common/bootstrap.cmake" NO_POLICY_SCOPE) @@ -6,7 +6,7 @@ project(obs-studio VERSION ${OBS_VERSION_CANONICAL}) if(CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/windows/architecture.cmake") - if(NOT OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) + if(NOT OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) return() endif() endif() diff --git a/CMakePresets.json b/CMakePresets.json index be85184b7ff3aa..4fd2afd2c4cc2d 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -1,8 +1,8 @@ { - "version": 3, + "version": 8, "cmakeMinimumRequired": { "major": 3, - "minor": 22, + "minor": 28, "patch": 0 }, "configurePresets": [ @@ -98,7 +98,7 @@ "lhs": "${hostSystemName}", "rhs": "Windows" }, - "architecture": "x64", + "architecture": "x64,version=10.0.20348", "binaryDir": "${sourceDir}/build_x64", "generator": "Visual Studio 17 2022", "cacheVariables": { diff --git a/UI/CMakeLists.txt b/UI/CMakeLists.txt index d793644a084e35..0917c82c8279ab 100644 --- a/UI/CMakeLists.txt +++ b/UI/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_subdirectory(obs-frontend-api) diff --git a/UI/frontend-plugins/aja-output-ui/CMakeLists.txt b/UI/frontend-plugins/aja-output-ui/CMakeLists.txt index da8db3cada24d1..37e4ba04de05a7 100644 --- a/UI/frontend-plugins/aja-output-ui/CMakeLists.txt +++ b/UI/frontend-plugins/aja-output-ui/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT ENABLE_AJA) target_disable(aja-output-ui) diff --git a/UI/frontend-plugins/decklink-captions/CMakeLists.txt b/UI/frontend-plugins/decklink-captions/CMakeLists.txt index 5e84b2a800d7af..53dab0da14d743 100644 --- a/UI/frontend-plugins/decklink-captions/CMakeLists.txt +++ b/UI/frontend-plugins/decklink-captions/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT ENABLE_DECKLINK) target_disable(decklink-captions) diff --git a/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt b/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt index 9df137b2d6b048..d72dac269ff5c5 100644 --- a/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt +++ b/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT ENABLE_DECKLINK) target_disable(decklink-output-ui) diff --git a/UI/frontend-plugins/frontend-tools/CMakeLists.txt b/UI/frontend-plugins/frontend-tools/CMakeLists.txt index 9f01a3d5721a78..f7ffa4ae34acc3 100644 --- a/UI/frontend-plugins/frontend-tools/CMakeLists.txt +++ b/UI/frontend-plugins/frontend-tools/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Widgets) diff --git a/UI/obs-frontend-api/CMakeLists.txt b/UI/obs-frontend-api/CMakeLists.txt index cd019c8d26a7be..a2fa52d34721a4 100644 --- a/UI/obs-frontend-api/CMakeLists.txt +++ b/UI/obs-frontend-api/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(obs-frontend-api SHARED) add_library(OBS::frontend-api ALIAS obs-frontend-api) diff --git a/UI/win-update/updater/CMakeLists.txt b/UI/win-update/updater/CMakeLists.txt index 2cba74e05d5028..dcd10bb4bdff96 100644 --- a/UI/win-update/updater/CMakeLists.txt +++ b/UI/win-update/updater/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(zstd) find_package(nlohmann_json 3 REQUIRED) diff --git a/cmake/common/bootstrap.cmake b/cmake/common/bootstrap.cmake index 493ef313ecda9f..e6caa7c841b392 100644 --- a/cmake/common/bootstrap.cmake +++ b/cmake/common/bootstrap.cmake @@ -40,9 +40,6 @@ if("${CMAKE_CURRENT_BINARY_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") file(REMOVE_RECURSE "${CMAKE_CURRENT_SOURCE_DIR}/CMakeCache.txt" "${CMAKE_CURRENT_SOURCE_DIR}/CMakeFiles") endif() -# Use folders for source file organization with IDE generators (Visual Studio/Xcode) -set_property(GLOBAL PROPERTY USE_FOLDERS TRUE) - # Set default global project variables set(OBS_COMPANY_NAME "OBS Project") set(OBS_PRODUCT_NAME "OBS Studio") diff --git a/cmake/common/buildspec_common.cmake b/cmake/common/buildspec_common.cmake index 18d1431476e2d2..c7844f0c27d91b 100644 --- a/cmake/common/buildspec_common.cmake +++ b/cmake/common/buildspec_common.cmake @@ -29,7 +29,7 @@ function(_check_deps_version version) ) list(REMOVE_ITEM CMAKE_PREFIX_PATH "${path}") list(APPEND CMAKE_PREFIX_PATH "${path}") - set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} PARENT_SCOPE) + continue() else() message( @@ -42,6 +42,8 @@ function(_check_deps_version version) endif() endif() endforeach() + + return(PROPAGATE found CMAKE_PREFIX_PATH) endfunction() # _check_dependencies: Fetch and extract pre-built OBS build dependencies diff --git a/cmake/common/compiler_common.cmake b/cmake/common/compiler_common.cmake index 731ecf6751dee9..e9b1d370fad2d3 100644 --- a/cmake/common/compiler_common.cmake +++ b/cmake/common/compiler_common.cmake @@ -6,11 +6,7 @@ option(OBS_COMPILE_DEPRECATION_AS_WARNING "Downgrade deprecation warnings to act mark_as_advanced(OBS_COMPILE_DEPRECATION_AS_WARNING) # Set C and C++ language standards to C17 and C++17 -if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.21) - set(CMAKE_C_STANDARD 17) -else() - set(CMAKE_C_STANDARD 11) -endif() +set(CMAKE_C_STANDARD 17) set(CMAKE_C_STANDARD_REQUIRED TRUE) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED TRUE) diff --git a/cmake/common/helpers_common.cmake b/cmake/common/helpers_common.cmake index a8ff5067c21a81..f5534ed6660ff8 100644 --- a/cmake/common/helpers_common.cmake +++ b/cmake/common/helpers_common.cmake @@ -203,14 +203,14 @@ function(find_dependencies) endforeach() if(NOT is_root) - set(found_libraries ${found_libraries} PARENT_SCOPE) # Exit recursive branch - return() + return(PROPAGATE found_libraries) endif() list(REMOVE_DUPLICATES found_libraries) list(APPEND ${var_FOUND_VAR} ${found_libraries}) - set(${var_FOUND_VAR} ${${var_FOUND_VAR}} PARENT_SCOPE) + + return(PROPAGATE ${var_FOUND_VAR}) endfunction() # find_qt_plugins: Find and add Qt plugin libraries associated with Qt component to target @@ -278,7 +278,8 @@ function(find_qt_plugins) endforeach() endif() - set(${var_FOUND_VAR} ${plugins_list} PARENT_SCOPE) + set(${var_FOUND_VAR} ${plugins_list}) + return(PROPAGATE ${var_FOUND_VAR}) endfunction() # target_export: Helper function to export target as CMake package @@ -432,7 +433,9 @@ function(check_uuid uuid_string return_value) set(valid_uuid FALSE) endif() message(DEBUG "UUID ${uuid_string} valid: ${valid_uuid}") - set(${return_value} ${valid_uuid} PARENT_SCOPE) + + set(${return_value} ${valid_uuid}) + return(PROPAGATE ${return_value}) endfunction() # add_obs_plugin: Add plugin subdirectory if host platform is in specified list of supported platforms and architectures @@ -465,7 +468,7 @@ function(add_obs_plugin target) else() foreach(architecture IN LISTS _AOP_ARCHITECTURES) if(OS_WINDOWS) - if("${architecture}" STREQUAL CMAKE_GENERATOR_PLATFORM) + if("${architecture}" STREQUAL CMAKE_VS_PLATFORM_NAME) set(found_architecture TRUE) endif() elseif(OS_MACOS) diff --git a/cmake/windows/architecture.cmake b/cmake/windows/architecture.cmake index 4b8a34f03a7b32..1fc9ed23fa5530 100644 --- a/cmake/windows/architecture.cmake +++ b/cmake/windows/architecture.cmake @@ -5,19 +5,20 @@ include_guard(GLOBAL) include(compilerconfig) if(NOT DEFINED OBS_PARENT_ARCHITECTURE) - if(CMAKE_GENERATOR_PLATFORM MATCHES "(Win32|x64)") - set(OBS_PARENT_ARCHITECTURE ${CMAKE_GENERATOR_PLATFORM}) + if(CMAKE_VS_PLATFORM_NAME MATCHES "(Win32|x64)") + set(OBS_PARENT_ARCHITECTURE ${CMAKE_VS_PLATFORM_NAME}) else() - message(FATAL_ERROR "Unsupported generator platform for Windows builds: ${CMAKE_GENERATOR_PLATFORM}!") + message(FATAL_ERROR "Unsupported generator platform for Windows builds: ${CMAKE_VS_PLATFORM_NAME}!") endif() endif() -if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) +if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) if(OBS_PARENT_ARCHITECTURE STREQUAL x64) execute_process( COMMAND - "${CMAKE_COMMAND}" -S ${CMAKE_CURRENT_SOURCE_DIR} -B ${CMAKE_SOURCE_DIR}/build_x86 -A Win32 -G - "${CMAKE_GENERATOR}" -DCMAKE_SYSTEM_VERSION:STRING='${CMAKE_SYSTEM_VERSION}' -DOBS_CMAKE_VERSION:STRING=3.0.0 + "${CMAKE_COMMAND}" -S ${CMAKE_CURRENT_SOURCE_DIR} -B ${CMAKE_SOURCE_DIR}/build_x86 -A + "Win32,version=${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}" -G "${CMAKE_GENERATOR}" + -DCMAKE_SYSTEM_VERSION:STRING='${CMAKE_SYSTEM_VERSION}' -DOBS_CMAKE_VERSION:STRING=3.0.0 -DVIRTUALCAM_GUID:STRING=${VIRTUALCAM_GUID} -DCMAKE_MESSAGE_LOG_LEVEL:STRING=${CMAKE_MESSAGE_LOG_LEVEL} -DENABLE_CCACHE:BOOL=${ENABLE_CCACHE} -DOBS_PARENT_ARCHITECTURE:STRING=x64 RESULT_VARIABLE _process_result diff --git a/cmake/windows/buildspec.cmake b/cmake/windows/buildspec.cmake index b15cbb2e2b8113..50f1a4e75d8a0d 100644 --- a/cmake/windows/buildspec.cmake +++ b/cmake/windows/buildspec.cmake @@ -14,11 +14,11 @@ function(_check_dependencies_windows) set(cef_filename "cef_binary_VERSION_windows_ARCH_REVISION.zip") set(cef_destination "cef_binary_VERSION_windows_ARCH") - if(CMAKE_GENERATOR_PLATFORM STREQUAL Win32) + if(CMAKE_VS_PLATFORM_NAME STREQUAL Win32) set(arch x86) set(dependencies_list prebuilt) else() - string(TOLOWER "${CMAKE_GENERATOR_PLATFORM}" arch) + string(TOLOWER "${CMAKE_VS_PLATFORM_NAME}" arch) set(dependencies_list prebuilt qt6 cef) endif() set(platform windows-${arch}) diff --git a/cmake/windows/cpackconfig.cmake b/cmake/windows/cpackconfig.cmake index bd82e4e8ba52c6..2191e34dccbf86 100644 --- a/cmake/windows/cpackconfig.cmake +++ b/cmake/windows/cpackconfig.cmake @@ -7,7 +7,7 @@ include(cpackconfig_common) # Add GPLv2 license file to CPack set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/UI/data/license/gplv2.txt") set(CPACK_PACKAGE_VERSION "${OBS_VERSION_CANONICAL}") -set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-windows-${CMAKE_GENERATOR_PLATFORM}") +set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-windows-${CMAKE_VS_PLATFORM_NAME}") set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY FALSE) set(CPACK_GENERATOR ZIP) set(CPACK_THREADS 0) diff --git a/cmake/windows/defaults.cmake b/cmake/windows/defaults.cmake index a9c4c1b1ac2d79..c2e141105ce6bf 100644 --- a/cmake/windows/defaults.cmake +++ b/cmake/windows/defaults.cmake @@ -23,15 +23,3 @@ set(CMAKE_FIND_PACKAGE_TARGETS_GLOBAL TRUE) include(buildspec) include(cpackconfig) - -if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) - execute_process( - COMMAND - "${CMAKE_COMMAND}" -S ${CMAKE_CURRENT_SOURCE_DIR} -B ${CMAKE_SOURCE_DIR}/build_x86 -A Win32 -G - "${CMAKE_GENERATOR}" -DCMAKE_SYSTEM_VERSION:STRING='${CMAKE_SYSTEM_VERSION}' -DOBS_CMAKE_VERSION:STRING=3.0.0 - -DVIRTUALCAM_GUID:STRING=${VIRTUALCAM_GUID} -DCMAKE_MESSAGE_LOG_LEVEL=${CMAKE_MESSAGE_LOG_LEVEL} - -DENABLE_CCACHE=${ENABLE_CCACHE} - RESULT_VARIABLE _process_result - COMMAND_ERROR_IS_FATAL ANY - ) -endif() diff --git a/deps/blake2/CMakeLists.txt b/deps/blake2/CMakeLists.txt index f6911749f6ad2b..894412e09268b9 100644 --- a/deps/blake2/CMakeLists.txt +++ b/deps/blake2/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(blake2 OBJECT) add_library(OBS::blake2 ALIAS blake2) diff --git a/deps/glad/CMakeLists.txt b/deps/glad/CMakeLists.txt index d62a7d85a14448..35a682e1e70d23 100644 --- a/deps/glad/CMakeLists.txt +++ b/deps/glad/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(OpenGL REQUIRED) diff --git a/deps/json11/CMakeLists.txt b/deps/json11/CMakeLists.txt index 9e1c6804b19fcf..cda8e1daf1416a 100644 --- a/deps/json11/CMakeLists.txt +++ b/deps/json11/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(json11 OBJECT) add_library(OBS::json11 ALIAS json11) diff --git a/deps/libcaption/CMakeLists.txt b/deps/libcaption/CMakeLists.txt index 8ee7431541e641..58baf806815206 100644 --- a/deps/libcaption/CMakeLists.txt +++ b/deps/libcaption/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(caption STATIC EXCLUDE_FROM_ALL) add_library(OBS::caption ALIAS caption) diff --git a/deps/w32-pthreads/CMakeLists.txt b/deps/w32-pthreads/CMakeLists.txt index 40c47c2298bf17..257e75249dd21a 100644 --- a/deps/w32-pthreads/CMakeLists.txt +++ b/deps/w32-pthreads/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(w32-pthreads SHARED EXCLUDE_FROM_ALL) add_library(OBS::w32-pthreads ALIAS w32-pthreads) diff --git a/libobs-d3d11/CMakeLists.txt b/libobs-d3d11/CMakeLists.txt index 89045322ef43db..5889e85015f0b3 100644 --- a/libobs-d3d11/CMakeLists.txt +++ b/libobs-d3d11/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(libobs-d3d11 MODULE) add_library(OBS::libobs-d3d11 ALIAS libobs-d3d11) diff --git a/libobs-opengl/CMakeLists.txt b/libobs-opengl/CMakeLists.txt index 61205f6478e344..c628283b663f29 100644 --- a/libobs-opengl/CMakeLists.txt +++ b/libobs-opengl/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(libobs-opengl SHARED) add_library(OBS::libobs-opengl ALIAS libobs-opengl) diff --git a/libobs-winrt/CMakeLists.txt b/libobs-winrt/CMakeLists.txt index 1926b5a56901c9..aee1fc62fbf10d 100644 --- a/libobs-winrt/CMakeLists.txt +++ b/libobs-winrt/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(libobs-winrt-headers INTERFACE) add_library(OBS::winrt-headers ALIAS libobs-winrt-headers) diff --git a/libobs/CMakeLists.txt b/libobs/CMakeLists.txt index 828a576ead6348..f55917da422f56 100644 --- a/libobs/CMakeLists.txt +++ b/libobs/CMakeLists.txt @@ -1,8 +1,8 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) include(cmake/obs-version.cmake) -if(OS_WINDOWS AND NOT OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) +if(OS_WINDOWS AND NOT OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) include(cmake/os-windows.cmake) return() endif() diff --git a/libobs/cmake/os-windows.cmake b/libobs/cmake/os-windows.cmake index 59d6ec35bb77f2..89a985b904efac 100644 --- a/libobs/cmake/os-windows.cmake +++ b/libobs/cmake/os-windows.cmake @@ -30,7 +30,7 @@ if(NOT TARGET OBS::w32-pthreads) add_subdirectory("${CMAKE_SOURCE_DIR}/deps/w32-pthreads" "${CMAKE_BINARY_DIR}/deps/w32-pthreads") endif() -if(NOT OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) +if(NOT OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) return() endif() diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index 1769a02a95733f..1af782adca3c70 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_PLUGINS "Enable building OBS plugins" ON) @@ -10,7 +10,7 @@ endif() set_property(GLOBAL APPEND PROPERTY OBS_FEATURES_ENABLED "Plugin Support") macro(check_obs_browser) - if((OS_WINDOWS AND CMAKE_GENERATOR_PLATFORM MATCHES "(Win32|x64)") OR OS_MACOS OR OS_LINUX) + if((OS_WINDOWS AND CMAKE_VS_PLATFORM_NAME MATCHES "(Win32|x64)") OR OS_MACOS OR OS_LINUX) if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/obs-browser/CMakeLists.txt") message(FATAL_ERROR "Required submodule 'obs-browser' not available.") else() diff --git a/plugins/aja/CMakeLists.txt b/plugins/aja/CMakeLists.txt index fdb96f76f5651f..88ef18cad3bd43 100644 --- a/plugins/aja/CMakeLists.txt +++ b/plugins/aja/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_AJA "Build OBS with aja support" ON) diff --git a/plugins/coreaudio-encoder/CMakeLists.txt b/plugins/coreaudio-encoder/CMakeLists.txt index 5eac410b297e86..099995d8919306 100644 --- a/plugins/coreaudio-encoder/CMakeLists.txt +++ b/plugins/coreaudio-encoder/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(OS_WINDOWS) option(ENABLE_COREAUDIO_ENCODER "Enable building with CoreAudio encoder (Windows)" ON) diff --git a/plugins/decklink/CMakeLists.txt b/plugins/decklink/CMakeLists.txt index 43e5078c60cbf6..99fa82725cf73e 100644 --- a/plugins/decklink/CMakeLists.txt +++ b/plugins/decklink/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_DECKLINK "Build OBS with Decklink support" ON) if(NOT ENABLE_DECKLINK) diff --git a/plugins/image-source/CMakeLists.txt b/plugins/image-source/CMakeLists.txt index 7a6edc07a90ee0..b5ce2b2b02ee6e 100644 --- a/plugins/image-source/CMakeLists.txt +++ b/plugins/image-source/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(image-source MODULE) add_library(OBS::image-source ALIAS image-source) diff --git a/plugins/linux-alsa/CMakeLists.txt b/plugins/linux-alsa/CMakeLists.txt index b90147da4acb64..7e7b2f5246ff17 100644 --- a/plugins/linux-alsa/CMakeLists.txt +++ b/plugins/linux-alsa/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_ALSA "Build OBS with ALSA support" ON) diff --git a/plugins/linux-capture/CMakeLists.txt b/plugins/linux-capture/CMakeLists.txt index 55415b2724b149..d498df2b34d212 100644 --- a/plugins/linux-capture/CMakeLists.txt +++ b/plugins/linux-capture/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(X11 REQUIRED) diff --git a/plugins/linux-jack/CMakeLists.txt b/plugins/linux-jack/CMakeLists.txt index 65aed52e49a2e3..4e58530a78b479 100644 --- a/plugins/linux-jack/CMakeLists.txt +++ b/plugins/linux-jack/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_JACK "Build OBS with JACK support" OFF) if(NOT ENABLE_JACK) diff --git a/plugins/linux-pipewire/CMakeLists.txt b/plugins/linux-pipewire/CMakeLists.txt index 5f93636d524c0f..3df1c24d0b0e21 100644 --- a/plugins/linux-pipewire/CMakeLists.txt +++ b/plugins/linux-pipewire/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_PIPEWIRE "Enable PipeWire support" ON) if(NOT ENABLE_PIPEWIRE) diff --git a/plugins/linux-pulseaudio/CMakeLists.txt b/plugins/linux-pulseaudio/CMakeLists.txt index 6e11f8b984a306..5ab582c163854a 100644 --- a/plugins/linux-pulseaudio/CMakeLists.txt +++ b/plugins/linux-pulseaudio/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT ENABLE_PULSEAUDIO) target_disable(linux-pulseaudio) diff --git a/plugins/linux-v4l2/CMakeLists.txt b/plugins/linux-v4l2/CMakeLists.txt index 7a36555f43805a..aafbc0d28b0e36 100644 --- a/plugins/linux-v4l2/CMakeLists.txt +++ b/plugins/linux-v4l2/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_V4L2 "Build OBS with v4l2 support" ON) option(ENABLE_UDEV "Build linux-v4l2 with UDEV support" ON) diff --git a/plugins/mac-avcapture/CMakeLists.txt b/plugins/mac-avcapture/CMakeLists.txt index 7a4f11c019d30b..da15892ca9f554 100644 --- a/plugins/mac-avcapture/CMakeLists.txt +++ b/plugins/mac-avcapture/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(mac-avcapture-legacy MODULE) add_library(OBS::avcapture-legacy ALIAS mac-avcapture-legacy) diff --git a/plugins/mac-avcapture/legacy/CMakeLists.txt b/plugins/mac-avcapture/legacy/CMakeLists.txt index c9695a0e826f86..81c8373175b794 100644 --- a/plugins/mac-avcapture/legacy/CMakeLists.txt +++ b/plugins/mac-avcapture/legacy/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(mac-avcapture MODULE) add_library(OBS::avcapture ALIAS mac-avcapture) diff --git a/plugins/mac-capture/CMakeLists.txt b/plugins/mac-capture/CMakeLists.txt index 8998141e4062e8..31d896a0130ae5 100644 --- a/plugins/mac-capture/CMakeLists.txt +++ b/plugins/mac-capture/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(mac-capture MODULE) add_library(OBS::capture ALIAS mac-capture) diff --git a/plugins/mac-syphon/CMakeLists.txt b/plugins/mac-syphon/CMakeLists.txt index eb7033e6cf4e30..a0d48604216d05 100644 --- a/plugins/mac-syphon/CMakeLists.txt +++ b/plugins/mac-syphon/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_SYPHON "Enable Syphon sharing support" ON) if(NOT ENABLE_SYPHON) diff --git a/plugins/mac-videotoolbox/CMakeLists.txt b/plugins/mac-videotoolbox/CMakeLists.txt index 4e8c5aa336106a..19bddaca381e3a 100644 --- a/plugins/mac-videotoolbox/CMakeLists.txt +++ b/plugins/mac-videotoolbox/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(mac-videotoolbox MODULE) add_library(OBS::mac-videotoolbox ALIAS mac-videotoolbox) diff --git a/plugins/mac-virtualcam/CMakeLists.txt b/plugins/mac-virtualcam/CMakeLists.txt index d4f9bc0086d7d0..cb76aff52ae9c0 100644 --- a/plugins/mac-virtualcam/CMakeLists.txt +++ b/plugins/mac-virtualcam/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_VIRTUALCAM "Build OBS Virtualcam" ON) diff --git a/plugins/mac-virtualcam/src/camera-extension/CMakeLists.txt b/plugins/mac-virtualcam/src/camera-extension/CMakeLists.txt index 9a52c5a94ee363..ff2bc441ca10dc 100644 --- a/plugins/mac-virtualcam/src/camera-extension/CMakeLists.txt +++ b/plugins/mac-virtualcam/src/camera-extension/CMakeLists.txt @@ -1,3 +1,5 @@ +cmake_minimum_required(VERSION 3.28...3.30) + foreach(_uuid IN ITEMS VIRTUALCAM_DEVICE_UUID VIRTUALCAM_SOURCE_UUID VIRTUALCAM_SINK_UUID) set(VALID_UUID FALSE) if(NOT ${_uuid}) diff --git a/plugins/mac-virtualcam/src/dal-plugin/CMakeLists.txt b/plugins/mac-virtualcam/src/dal-plugin/CMakeLists.txt index 40b9fbbf1bd9c3..5ca1ada19c4482 100644 --- a/plugins/mac-virtualcam/src/dal-plugin/CMakeLists.txt +++ b/plugins/mac-virtualcam/src/dal-plugin/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(obs-dal-plugin MODULE) add_library(OBS::dal-plugin ALIAS obs-dal-plugin) diff --git a/plugins/mac-virtualcam/src/obs-plugin/CMakeLists.txt b/plugins/mac-virtualcam/src/obs-plugin/CMakeLists.txt index ef083725c9e614..96f0128c533149 100644 --- a/plugins/mac-virtualcam/src/obs-plugin/CMakeLists.txt +++ b/plugins/mac-virtualcam/src/obs-plugin/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(mac-virtualcam MODULE) add_library(OBS::virtualcam ALIAS mac-virtualcam) diff --git a/plugins/nv-filters/CMakeLists.txt b/plugins/nv-filters/CMakeLists.txt index 9047e3ceef5800..0547963e139455 100644 --- a/plugins/nv-filters/CMakeLists.txt +++ b/plugins/nv-filters/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(OS_WINDOWS) add_library(nv-filters MODULE) add_library(OBS::nv-filters ALIAS nv-filters) diff --git a/plugins/obs-ffmpeg/CMakeLists.txt b/plugins/obs-ffmpeg/CMakeLists.txt index 818b64b28fa90f..6bc0ab087b47b3 100644 --- a/plugins/obs-ffmpeg/CMakeLists.txt +++ b/plugins/obs-ffmpeg/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_FFMPEG_LOGGING "Enables obs-ffmpeg logging" OFF) option(ENABLE_NEW_MPEGTS_OUTPUT "Use native SRT/RIST mpegts output" ON) diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt b/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt index 4d275ab70bfe41..c1f95297fd73e4 100644 --- a/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt +++ b/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_FFMPEG_MUX_DEBUG "Enable FFmpeg-mux debugging" OFF) diff --git a/plugins/obs-ffmpeg/obs-amf-test/CMakeLists.txt b/plugins/obs-ffmpeg/obs-amf-test/CMakeLists.txt index a08b6c0d8af58b..72cbfeaa05f159 100644 --- a/plugins/obs-ffmpeg/obs-amf-test/CMakeLists.txt +++ b/plugins/obs-ffmpeg/obs-amf-test/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(AMF 1.4.29 REQUIRED) diff --git a/plugins/obs-filters/CMakeLists.txt b/plugins/obs-filters/CMakeLists.txt index 269f9f512d9f1a..753ec87c5a9e45 100644 --- a/plugins/obs-filters/CMakeLists.txt +++ b/plugins/obs-filters/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(obs-filters MODULE) add_library(OBS::filters ALIAS obs-filters) diff --git a/plugins/obs-libfdk/CMakeLists.txt b/plugins/obs-libfdk/CMakeLists.txt index f171c6c7485303..c785a08db18c55 100644 --- a/plugins/obs-libfdk/CMakeLists.txt +++ b/plugins/obs-libfdk/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_LIBFDK "Enable FDK AAC support" OFF) if(NOT ENABLE_LIBFDK) diff --git a/plugins/obs-nvenc/CMakeLists.txt b/plugins/obs-nvenc/CMakeLists.txt index 0b4fe2b612dcd1..93053c1edb9e13 100644 --- a/plugins/obs-nvenc/CMakeLists.txt +++ b/plugins/obs-nvenc/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_NVENC "Build NVIDIA Hardware Encoder Plugin" ON) option(ENABLE_NVENC_FFMPEG_IDS "Register FFmpeg encoder IDs" ON) diff --git a/plugins/obs-nvenc/obs-nvenc-test/CMakeLists.txt b/plugins/obs-nvenc/obs-nvenc-test/CMakeLists.txt index 97ece87724da57..7f839256e39716 100644 --- a/plugins/obs-nvenc/obs-nvenc-test/CMakeLists.txt +++ b/plugins/obs-nvenc/obs-nvenc-test/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(FFnvcodec 12 REQUIRED) diff --git a/plugins/obs-outputs/CMakeLists.txt b/plugins/obs-outputs/CMakeLists.txt index e8b83d2fc13e87..21818d5685560d 100644 --- a/plugins/obs-outputs/CMakeLists.txt +++ b/plugins/obs-outputs/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(MbedTLS REQUIRED) find_package(ZLIB REQUIRED) diff --git a/plugins/obs-qsv11/CMakeLists.txt b/plugins/obs-qsv11/CMakeLists.txt index 7aa42585c1fd51..8966280e67f00d 100644 --- a/plugins/obs-qsv11/CMakeLists.txt +++ b/plugins/obs-qsv11/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_QSV11 "Build Intel QSV11 Hardware Encoder." TRUE) if(NOT ENABLE_QSV11) diff --git a/plugins/obs-qsv11/obs-qsv-test/CMakeLists.txt b/plugins/obs-qsv11/obs-qsv-test/CMakeLists.txt index 668bc9cffe8ab3..f46839899f5f31 100644 --- a/plugins/obs-qsv11/obs-qsv-test/CMakeLists.txt +++ b/plugins/obs-qsv11/obs-qsv-test/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_executable(obs-qsv-test) diff --git a/plugins/obs-text/CMakeLists.txt b/plugins/obs-text/CMakeLists.txt index 118157862732e1..0ae9cd4ef3c5eb 100644 --- a/plugins/obs-text/CMakeLists.txt +++ b/plugins/obs-text/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(obs-text MODULE) add_library(OBS::text ALIAS obs-text) diff --git a/plugins/obs-transitions/CMakeLists.txt b/plugins/obs-transitions/CMakeLists.txt index 6af13a2e61ffa6..2b5c1e3231cb4a 100644 --- a/plugins/obs-transitions/CMakeLists.txt +++ b/plugins/obs-transitions/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(obs-transitions MODULE) add_library(OBS::transition ALIAS obs-transitions) diff --git a/plugins/obs-vst/CMakeLists.txt b/plugins/obs-vst/CMakeLists.txt index 683be4e77ddaff..8a2b4eb7938733 100644 --- a/plugins/obs-vst/CMakeLists.txt +++ b/plugins/obs-vst/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_VST "Enable building OBS with VST plugin" ON) diff --git a/plugins/obs-webrtc/CMakeLists.txt b/plugins/obs-webrtc/CMakeLists.txt index 5a8a325ce65087..d57ca8af5297b5 100644 --- a/plugins/obs-webrtc/CMakeLists.txt +++ b/plugins/obs-webrtc/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_WEBRTC "Enable WebRTC Output support" ON) if(NOT ENABLE_WEBRTC) diff --git a/plugins/obs-x264/CMakeLists.txt b/plugins/obs-x264/CMakeLists.txt index 010f031b5d429d..958d553c89f056 100644 --- a/plugins/obs-x264/CMakeLists.txt +++ b/plugins/obs-x264/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Libx264 REQUIRED) diff --git a/plugins/oss-audio/CMakeLists.txt b/plugins/oss-audio/CMakeLists.txt index d753466a91ae45..5ae20e2cc7394a 100644 --- a/plugins/oss-audio/CMakeLists.txt +++ b/plugins/oss-audio/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_OSS "Enable building with OSS audio support" ON) diff --git a/plugins/rtmp-services/CMakeLists.txt b/plugins/rtmp-services/CMakeLists.txt index 78571eb06ea489..be0364cb780f39 100644 --- a/plugins/rtmp-services/CMakeLists.txt +++ b/plugins/rtmp-services/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_SERVICE_UPDATES "Checks for service updates" ON) diff --git a/plugins/sndio/CMakeLists.txt b/plugins/sndio/CMakeLists.txt index 0d7448a90e995c..f76e7c07e1f385 100644 --- a/plugins/sndio/CMakeLists.txt +++ b/plugins/sndio/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_SNDIO "Build OBS with sndio support" OFF) if(NOT ENABLE_SNDIO) diff --git a/plugins/text-freetype2/CMakeLists.txt b/plugins/text-freetype2/CMakeLists.txt index da768e7fd2c0f4..8643dd0b7bb6e9 100644 --- a/plugins/text-freetype2/CMakeLists.txt +++ b/plugins/text-freetype2/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_FREETYPE "Enable FreeType text plugin" ON) diff --git a/plugins/vlc-video/CMakeLists.txt b/plugins/vlc-video/CMakeLists.txt index 4cce9b0275d6b1..871036c9f52b38 100644 --- a/plugins/vlc-video/CMakeLists.txt +++ b/plugins/vlc-video/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) macro(check_vlc_path) find_package(PkgConfig QUIET) diff --git a/plugins/win-capture/CMakeLists.txt b/plugins/win-capture/CMakeLists.txt index 3e855943e141ac..8216ba5095df0a 100644 --- a/plugins/win-capture/CMakeLists.txt +++ b/plugins/win-capture/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT TARGET OBS::obfuscate) add_subdirectory("${CMAKE_SOURCE_DIR}/libobs" "${CMAKE_BINARY_DIR}/libobs") diff --git a/plugins/win-capture/get-graphics-offsets/CMakeLists.txt b/plugins/win-capture/get-graphics-offsets/CMakeLists.txt index f48f02803322bf..fffb3b4e6f4f7a 100644 --- a/plugins/win-capture/get-graphics-offsets/CMakeLists.txt +++ b/plugins/win-capture/get-graphics-offsets/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT TARGET OBS::d3d8-api) add_subdirectory("${CMAKE_SOURCE_DIR}/shared/obs-d3d8-api" obs-d3d8-api) @@ -19,8 +19,8 @@ target_link_libraries( PRIVATE OBS::hook-config OBS::d3d8-api d3d9.lib dxgi.lib d3d11.lib ) -if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) - if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) + if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) add_custom_command( TARGET get-graphics-offsets POST_BUILD @@ -32,7 +32,7 @@ if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) add_dependencies(win-capture get-graphics-offsets) endif() -if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) set(_OUTPUT_NAME get-graphics-offsets64) else() set(_OUTPUT_NAME get-graphics-offsets32) diff --git a/plugins/win-capture/graphics-hook/CMakeLists.txt b/plugins/win-capture/graphics-hook/CMakeLists.txt index 63f0fcc6145a65..caa1bc532ec2db 100644 --- a/plugins/win-capture/graphics-hook/CMakeLists.txt +++ b/plugins/win-capture/graphics-hook/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Detours REQUIRED) find_package(Vulkan REQUIRED) @@ -54,8 +54,8 @@ if(TARGET Vulkan::Vulkan) target_compile_definitions(graphics-hook PRIVATE COMPILE_VULKAN_HOOK) endif() -if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) - if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) + if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) add_custom_command( TARGET graphics-hook POST_BUILD @@ -67,7 +67,7 @@ if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) add_dependencies(win-capture graphics-hook) endif() -if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) set(_OUTPUT_NAME graphics-hook64) else() set(_OUTPUT_NAME graphics-hook32) diff --git a/plugins/win-capture/inject-helper/CMakeLists.txt b/plugins/win-capture/inject-helper/CMakeLists.txt index b73f672ef429d7..ae62a032a6d8c2 100644 --- a/plugins/win-capture/inject-helper/CMakeLists.txt +++ b/plugins/win-capture/inject-helper/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT TARGET OBS::obfuscate) add_subdirectory("${CMAKE_SOURCE_DIR}/libobs" "${CMAKE_BINARY_DIR}/libobs") @@ -14,8 +14,8 @@ target_sources(inject-helper PRIVATE inject-helper.c) target_link_libraries(inject-helper PRIVATE OBS::inject-library OBS::obfuscate) -if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) - if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) + if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) add_custom_command( TARGET inject-helper POST_BUILD @@ -27,7 +27,7 @@ if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) add_dependencies(win-capture inject-helper) endif() -if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) set(_OUTPUT_NAME inject-helper64) else() set(_OUTPUT_NAME inject-helper32) diff --git a/plugins/win-dshow/CMakeLists.txt b/plugins/win-dshow/CMakeLists.txt index c04c90fb074c6e..078151f6949d97 100644 --- a/plugins/win-dshow/CMakeLists.txt +++ b/plugins/win-dshow/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(FFmpeg REQUIRED avcodec avutil) diff --git a/plugins/win-dshow/virtualcam-module/CMakeLists.txt b/plugins/win-dshow/virtualcam-module/CMakeLists.txt index ac8f46e18039b4..bc77f8efbf8904 100644 --- a/plugins/win-dshow/virtualcam-module/CMakeLists.txt +++ b/plugins/win-dshow/virtualcam-module/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_VIRTUALCAM "Enable Windows Virtual Camera" ON) if(NOT ENABLE_VIRTUALCAM) @@ -104,8 +104,8 @@ target_link_libraries( winmm ) -if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) - if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_VS_PLATFORM_NAME) + if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) add_custom_command( TARGET obs-virtualcam-module POST_BUILD @@ -117,7 +117,7 @@ if(OBS_PARENT_ARCHITECTURE STREQUAL CMAKE_GENERATOR_PLATFORM) add_dependencies(win-dshow obs-virtualcam-module) endif() -if(CMAKE_GENERATOR_PLATFORM STREQUAL x64) +if(CMAKE_VS_PLATFORM_NAME STREQUAL x64) set(_OUTPUT_NAME virtualcam-module64) else() set(_OUTPUT_NAME virtualcam-module32) diff --git a/plugins/win-wasapi/CMakeLists.txt b/plugins/win-wasapi/CMakeLists.txt index 7b7298acb6afad..4d3da03fca6dcf 100644 --- a/plugins/win-wasapi/CMakeLists.txt +++ b/plugins/win-wasapi/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(win-wasapi MODULE) add_library(OBS::wasapi ALIAS win-wasapi) diff --git a/shared/bpm/CMakeLists.txt b/shared/bpm/CMakeLists.txt index 052736c7a15651..0f16408c77b4d1 100644 --- a/shared/bpm/CMakeLists.txt +++ b/shared/bpm/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(bpm OBJECT) add_library(OBS::bpm ALIAS bpm) diff --git a/shared/file-updater/CMakeLists.txt b/shared/file-updater/CMakeLists.txt index 0151974972b74e..5308c99601c07b 100644 --- a/shared/file-updater/CMakeLists.txt +++ b/shared/file-updater/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(CURL REQUIRED) diff --git a/shared/happy-eyeballs/CMakeLists.txt b/shared/happy-eyeballs/CMakeLists.txt index efbb2629497290..9da80a18067afb 100644 --- a/shared/happy-eyeballs/CMakeLists.txt +++ b/shared/happy-eyeballs/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(happy-eyeballs OBJECT) add_library(OBS::happy-eyeballs ALIAS happy-eyeballs) diff --git a/shared/ipc-util/CMakeLists.txt b/shared/ipc-util/CMakeLists.txt index cfcdc3c71585b3..5a4ad7a086c351 100644 --- a/shared/ipc-util/CMakeLists.txt +++ b/shared/ipc-util/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(ipc-util INTERFACE) add_library(OBS::ipc-util ALIAS ipc-util) diff --git a/shared/media-playback/CMakeLists.txt b/shared/media-playback/CMakeLists.txt index 5b2d4ebba0619b..711c09b11a4bf7 100644 --- a/shared/media-playback/CMakeLists.txt +++ b/shared/media-playback/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(FFmpeg REQUIRED avcodec avdevice avutil avformat) diff --git a/shared/obs-d3d8-api/CMakeLists.txt b/shared/obs-d3d8-api/CMakeLists.txt index 35546f25537be6..e6b6acae347bf0 100644 --- a/shared/obs-d3d8-api/CMakeLists.txt +++ b/shared/obs-d3d8-api/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(d3d8-api INTERFACE) add_library(OBS::d3d8-api ALIAS d3d8-api) diff --git a/shared/obs-hook-config/CMakeLists.txt b/shared/obs-hook-config/CMakeLists.txt index 347657cc563a52..14809656538700 100644 --- a/shared/obs-hook-config/CMakeLists.txt +++ b/shared/obs-hook-config/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(hook-config INTERFACE) add_library(OBS::hook-config ALIAS hook-config) diff --git a/shared/obs-inject-library/CMakeLists.txt b/shared/obs-inject-library/CMakeLists.txt index b80f43118e4649..e7cf7d071222f8 100644 --- a/shared/obs-inject-library/CMakeLists.txt +++ b/shared/obs-inject-library/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT TARGET OBS::obfuscate) add_subdirectory("${CMAKE_SOURCE_DIR}/libobs" "${CMAKE_BINARY_DIR}/libobs") diff --git a/shared/obs-scripting/CMakeLists.txt b/shared/obs-scripting/CMakeLists.txt index a6892194c19cbe..c609c257b395e7 100644 --- a/shared/obs-scripting/CMakeLists.txt +++ b/shared/obs-scripting/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT ENABLE_SCRIPTING) target_disable_feature(obs-scripting "Scripting support") diff --git a/shared/obs-scripting/cmake/lua.cmake b/shared/obs-scripting/cmake/lua.cmake index f46d90b15ceada..e7e8147e2f97bb 100644 --- a/shared/obs-scripting/cmake/lua.cmake +++ b/shared/obs-scripting/cmake/lua.cmake @@ -1,5 +1,3 @@ -cmake_minimum_required(VERSION 3.22...3.25) - option(ENABLE_SCRIPTING_LUA "Enable Lua scripting support" ON) if(ENABLE_SCRIPTING_LUA) diff --git a/shared/obs-scripting/cmake/python.cmake b/shared/obs-scripting/cmake/python.cmake index 9696d2b0e9ae1b..5ea5fda7793cea 100644 --- a/shared/obs-scripting/cmake/python.cmake +++ b/shared/obs-scripting/cmake/python.cmake @@ -1,5 +1,3 @@ -cmake_minimum_required(VERSION 3.22...3.25) - option(ENABLE_SCRIPTING_PYTHON "Enable Python scripting support" ON) if(ENABLE_SCRIPTING_PYTHON) diff --git a/shared/obs-scripting/obslua/CMakeLists.txt b/shared/obs-scripting/obslua/CMakeLists.txt index d579c00e95b471..3e617f43c5e126 100644 --- a/shared/obs-scripting/obslua/CMakeLists.txt +++ b/shared/obs-scripting/obslua/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(POLICY CMP0078) cmake_policy(SET CMP0078 NEW) diff --git a/shared/obs-scripting/obspython/CMakeLists.txt b/shared/obs-scripting/obspython/CMakeLists.txt index 072dea9209e821..837032f15db4da 100644 --- a/shared/obs-scripting/obspython/CMakeLists.txt +++ b/shared/obs-scripting/obspython/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(POLICY CMP0078) cmake_policy(SET CMP0078 NEW) diff --git a/shared/obs-shared-memory-queue/CMakeLists.txt b/shared/obs-shared-memory-queue/CMakeLists.txt index 2cc7538f021e67..c244420cbcf2db 100644 --- a/shared/obs-shared-memory-queue/CMakeLists.txt +++ b/shared/obs-shared-memory-queue/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) if(NOT TARGET OBS::tiny-nv12-scale) add_subdirectory("${CMAKE_SOURCE_DIR}/shared/obs-tiny-nv12-scale" obs-tiny-nv12-scale) diff --git a/shared/obs-tiny-nv12-scale/CMakeLists.txt b/shared/obs-tiny-nv12-scale/CMakeLists.txt index 4b25249756c5da..42f254dcdbaeba 100644 --- a/shared/obs-tiny-nv12-scale/CMakeLists.txt +++ b/shared/obs-tiny-nv12-scale/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(obs-tiny-nv12-scale INTERFACE) add_library(OBS::tiny-nv12-scale ALIAS obs-tiny-nv12-scale) diff --git a/shared/opts-parser/CMakeLists.txt b/shared/opts-parser/CMakeLists.txt index 4f74cb66df76c9..461c6d86a00d29 100644 --- a/shared/opts-parser/CMakeLists.txt +++ b/shared/opts-parser/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) add_library(opts-parser OBJECT) add_library(OBS::opts-parser ALIAS opts-parser) diff --git a/shared/properties-view/CMakeLists.txt b/shared/properties-view/CMakeLists.txt index 9769baa79c2d16..206455b95e9fb7 100644 --- a/shared/properties-view/CMakeLists.txt +++ b/shared/properties-view/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Core Widgets) diff --git a/shared/qt/icon-label/CMakeLists.txt b/shared/qt/icon-label/CMakeLists.txt index ff16e337653826..c5325d158f105f 100644 --- a/shared/qt/icon-label/CMakeLists.txt +++ b/shared/qt/icon-label/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Core Widgets) diff --git a/shared/qt/plain-text-edit/CMakeLists.txt b/shared/qt/plain-text-edit/CMakeLists.txt index 0abe0b56260073..f2977487e47827 100644 --- a/shared/qt/plain-text-edit/CMakeLists.txt +++ b/shared/qt/plain-text-edit/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Core Widgets) diff --git a/shared/qt/slider-ignorewheel/CMakeLists.txt b/shared/qt/slider-ignorewheel/CMakeLists.txt index 92dae97fb07d4f..5058f055b211f7 100644 --- a/shared/qt/slider-ignorewheel/CMakeLists.txt +++ b/shared/qt/slider-ignorewheel/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Core Widgets) diff --git a/shared/qt/vertical-scroll-area/CMakeLists.txt b/shared/qt/vertical-scroll-area/CMakeLists.txt index 16d301643be5f7..a68df5f3078982 100644 --- a/shared/qt/vertical-scroll-area/CMakeLists.txt +++ b/shared/qt/vertical-scroll-area/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Core Widgets) diff --git a/shared/qt/wrappers/CMakeLists.txt b/shared/qt/wrappers/CMakeLists.txt index e634e6f6112f20..00b6eb2a167211 100644 --- a/shared/qt/wrappers/CMakeLists.txt +++ b/shared/qt/wrappers/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) find_package(Qt6 REQUIRED Core Widgets) diff --git a/test/test-input/CMakeLists.txt b/test/test-input/CMakeLists.txt index 2e0a7f00c8d845..75e349e3518ddf 100644 --- a/test/test-input/CMakeLists.txt +++ b/test/test-input/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.22...3.25) +cmake_minimum_required(VERSION 3.28...3.30) option(ENABLE_TEST_INPUT "Build test sources" OFF)