diff --git a/CMakePresets.json b/CMakePresets.json index d7dbf3b00..184d1cfd8 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -71,7 +71,6 @@ "cacheVariables": { "ENABLE_WAYLAND": true, "ENABLE_VLC": true, - "QT_VERSION": "6", "CMAKE_BUILD_TYPE": "Debug" } }, @@ -108,7 +107,6 @@ "cacheVariables": { "ENABLE_WAYLAND": true, "ENABLE_VLC": true, - "QT_VERSION": {"type": "STRING", "value": "6"}, "CMAKE_BUILD_TYPE": {"type": "STRING", "value": "Debug"} } }, diff --git a/UI/cmake/legacy.cmake b/UI/cmake/legacy.cmake index 0650d3d3a..b1145f725 100644 --- a/UI/cmake/legacy.cmake +++ b/UI/cmake/legacy.cmake @@ -82,7 +82,7 @@ set_target_properties( AUTORCC ON AUTOUIC_SEARCH_PATHS "forms;forms/source-toolbar") -if(_QT_VERSION EQUAL 6 AND OS_WINDOWS) +if(OS_WINDOWS) set_target_properties(obs PROPERTIES AUTORCC_OPTIONS "--format-version;1") endif() @@ -357,11 +357,6 @@ if(OS_WINDOWS) update/crypto-helpers.hpp ${CMAKE_BINARY_DIR}/obs.rc) - if(_QT_VERSION EQUAL 5) - find_qt(COMPONENTS WinExtras) - target_link_libraries(obs PRIVATE Qt::WinExtras) - endif() - find_package(MbedTLS) target_link_libraries(obs PRIVATE Mbedtls::Mbedtls OBS::blake2 Detours::Detours) diff --git a/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake b/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake index 1cdc54459..3e0a46589 100644 --- a/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake +++ b/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake @@ -18,7 +18,7 @@ set_target_properties( AUTORCC ON AUTOUIC_SEARCH_PATHS "forms") -if(_QT_VERSION EQUAL 6 AND OS_WINDOWS) +if(OS_WINDOWS) set_target_properties(aja-output-ui PROPERTIES AUTORCC_OPTIONS "--format-version;1") endif() diff --git a/UI/frontend-plugins/decklink-captions/cmake/legacy.cmake b/UI/frontend-plugins/decklink-captions/cmake/legacy.cmake index f914a7f85..50a4d33cc 100644 --- a/UI/frontend-plugins/decklink-captions/cmake/legacy.cmake +++ b/UI/frontend-plugins/decklink-captions/cmake/legacy.cmake @@ -18,7 +18,7 @@ set_target_properties( AUTORCC ON AUTOUIC_SEARCH_PATHS "forms") -if(_QT_VERSION EQUAL 6 AND OS_WINDOWS) +if(OS_WINDOWS) set_target_properties(decklink-captions PROPERTIES AUTORCC_OPTIONS "--format-version;1") endif() diff --git a/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake b/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake index 924766135..40de2d1eb 100644 --- a/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake +++ b/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake @@ -16,7 +16,7 @@ set_target_properties( AUTORCC ON AUTOUIC_SEARCH_PATHS "forms") -if(_QT_VERSION EQUAL 6 AND OS_WINDOWS) +if(OS_WINDOWS) set_target_properties(decklink-output-ui PROPERTIES AUTORCC_OPTIONS "--format-version;1") endif() diff --git a/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake b/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake index 575138efe..0524ca042 100644 --- a/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake +++ b/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake @@ -12,7 +12,7 @@ set_target_properties( AUTORCC ON AUTOUIC_SEARCH_PATHS "forms") -if(_QT_VERSION EQUAL 6 AND OS_WINDOWS) +if(OS_WINDOWS) set_target_properties(frontend-tools PROPERTIES AUTORCC_OPTIONS "--format-version;1") endif() diff --git a/cmake/Modules/CopyMSVCBins.cmake b/cmake/Modules/CopyMSVCBins.cmake index 295bd5975..368a60dda 100644 --- a/cmake/Modules/CopyMSVCBins.cmake +++ b/cmake/Modules/CopyMSVCBins.cmake @@ -166,7 +166,7 @@ endif() file(GLOB RNNOISE_BIN_FILES "${RNNOISE_INCLUDE_DIR}/../bin${_bin_suffix}/rnnoise*.dll" "${RNNOISE_INCLUDE_DIR}/../bin/rnnoise*.dll") -set(QtCore_DIR "${Qt${_QT_VERSION}Core_DIR}") +set(QtCore_DIR "${Qt6Core_DIR}") cmake_path(SET QtCore_DIR_NORM NORMALIZE "${QtCore_DIR}/../../..") set(QtCore_BIN_DIR "${QtCore_DIR_NORM}bin") set(QtCore_PLUGIN_DIR "${QtCore_DIR_NORM}plugins") @@ -176,13 +176,12 @@ obs_status(STATUS "QtCore_PLUGIN_DIR: ${QtCore_PLUGIN_DIR}") file( GLOB QT_DEBUG_BIN_FILES - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Cored.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Guid.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Widgetsd.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}WinExtrasd.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Svgd.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Xmld.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Networkd.dll" + "${QtCore_BIN_DIR}/Qt6Cored.dll" + "${QtCore_BIN_DIR}/Qt6Guid.dll" + "${QtCore_BIN_DIR}/Qt6Widgetsd.dll" + "${QtCore_BIN_DIR}/Qt6Svgd.dll" + "${QtCore_BIN_DIR}/Qt6Xmld.dll" + "${QtCore_BIN_DIR}/Qt6Networkd.dll" "${QtCore_BIN_DIR}/libGLESv2d.dll" "${QtCore_BIN_DIR}/libEGLd.dll") file(GLOB QT_DEBUG_PLAT_BIN_FILES "${QtCore_PLUGIN_DIR}/platforms/qwindowsd.dll") @@ -194,13 +193,12 @@ file(GLOB QT_DEBUG_IMAGEFORMATS_BIN_FILES "${QtCore_PLUGIN_DIR}/imageformats/qsv file( GLOB QT_BIN_FILES - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Core.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Gui.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Widgets.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}WinExtras.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Svg.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Xml.dll" - "${QtCore_BIN_DIR}/Qt${_QT_VERSION}Network.dll" + "${QtCore_BIN_DIR}/Qt6Core.dll" + "${QtCore_BIN_DIR}/Qt6Gui.dll" + "${QtCore_BIN_DIR}/Qt6Widgets.dll" + "${QtCore_BIN_DIR}/Qt6Svg.dll" + "${QtCore_BIN_DIR}/Qt6Xml.dll" + "${QtCore_BIN_DIR}/Qt6Network.dll" "${QtCore_BIN_DIR}/libGLESv2.dll" "${QtCore_BIN_DIR}/libEGL.dll") file(GLOB QT_PLAT_BIN_FILES "${QtCore_PLUGIN_DIR}/platforms/qwindows.dll") diff --git a/cmake/Modules/ObsHelpers.cmake b/cmake/Modules/ObsHelpers.cmake index 5dc75b8ef..0a7d25241 100644 --- a/cmake/Modules/ObsHelpers.cmake +++ b/cmake/Modules/ObsHelpers.cmake @@ -309,78 +309,29 @@ function(define_graphic_modules target) endforeach() endfunction() -if(NOT QT_VERSION) - set(QT_VERSION - AUTO - CACHE STRING "OBS Qt version [AUTO, 5, 6]" FORCE) - set_property(CACHE QT_VERSION PROPERTY STRINGS AUTO 5 6) -endif() - macro(find_qt) set(multiValueArgs COMPONENTS COMPONENTS_WIN COMPONENTS_MAC COMPONENTS_LINUX) cmake_parse_arguments(FIND_QT "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) set(QT_NO_CREATE_VERSIONLESS_TARGETS ON) - find_package( - Qt5 - COMPONENTS Core - QUIET) find_package( Qt6 COMPONENTS Core - QUIET) - - if(NOT _QT_VERSION AND QT_VERSION STREQUAL AUTO) - if(TARGET Qt6::Core) - set(_QT_VERSION - 6 - CACHE INTERNAL "") - elseif(TARGET Qt5::Core) - set(_QT_VERSION - 5 - CACHE INTERNAL "") - endif() - obs_status(STATUS "Qt version: ${_QT_VERSION}") - elseif(NOT _QT_VERSION) - if(TARGET Qt${QT_VERSION}::Core) - set(_QT_VERSION - ${QT_VERSION} - CACHE INTERNAL "") - else() - if(QT_VERSION EQUAL 6) - set(FALLBACK_QT_VERSION 5) - else() - set(FALLBACK_QT_VERSION 6) - endif() - message(WARNING "Qt${QT_VERSION} was not found, falling back to Qt${FALLBACK_QT_VERSION}") - - if(TARGET Qt${FALLBACK_QT_VERSION}::Core) - set(_QT_VERSION - ${FALLBACK_QT_VERSION} - CACHE INTERNAL "") - endif() - endif() - obs_status(STATUS "Qt version: ${_QT_VERSION}") - endif() - + REQUIRED) set(QT_NO_CREATE_VERSIONLESS_TARGETS OFF) - if(NOT _QT_VERSION) - message(FATAL_ERROR "Neither Qt5 or Qt6 were found") - endif() - if(OS_WINDOWS) find_package( - Qt${_QT_VERSION} + Qt6 COMPONENTS ${FIND_QT_COMPONENTS} ${FIND_QT_COMPONENTS_WIN} REQUIRED) elseif(OS_MACOS) find_package( - Qt${_QT_VERSION} + Qt6 COMPONENTS ${FIND_QT_COMPONENTS} ${FIND_QT_COMPONENTS_MAC} REQUIRED) else() find_package( - Qt${_QT_VERSION} + Qt6 COMPONENTS ${FIND_QT_COMPONENTS} ${FIND_QT_COMPONENTS_LINUX} REQUIRED) endif() @@ -392,10 +343,10 @@ macro(find_qt) endif() foreach(_COMPONENT IN LISTS FIND_QT_COMPONENTS FIND_QT_COMPONENTS_WIN FIND_QT_COMPONENTS_MAC FIND_QT_COMPONENTS_LINUX) - if(NOT TARGET Qt::${_COMPONENT} AND TARGET Qt${_QT_VERSION}::${_COMPONENT}) + if(NOT TARGET Qt::${_COMPONENT} AND TARGET Qt6::${_COMPONENT}) add_library(Qt::${_COMPONENT} INTERFACE IMPORTED) - set_target_properties(Qt::${_COMPONENT} PROPERTIES INTERFACE_LINK_LIBRARIES "Qt${_QT_VERSION}::${_COMPONENT}") + set_target_properties(Qt::${_COMPONENT} PROPERTIES INTERFACE_LINK_LIBRARIES "Qt6::${_COMPONENT}") endif() endforeach() endmacro() diff --git a/cmake/common/helpers_common.cmake b/cmake/common/helpers_common.cmake index a7562752d..48c583264 100644 --- a/cmake/common/helpers_common.cmake +++ b/cmake/common/helpers_common.cmake @@ -110,16 +110,6 @@ function(target_disable target) set_property(GLOBAL APPEND PROPERTY OBS_MODULES_DISABLED ${target}) endfunction() -# * Use QT_VERSION value as a hint for desired Qt version -# * If "AUTO" was specified, prefer Qt6 over Qt5 -# * Creates versionless targets of desired component if none had been created by Qt itself (Qt versions < 5.15) -if(NOT QT_VERSION) - set(QT_VERSION - AUTO - CACHE STRING "OBS Qt version [AUTO, 5, 6]" FORCE) - set_property(CACHE QT_VERSION PROPERTY STRINGS AUTO 5 6) -endif() - # find_qt: Macro to find best possible Qt version for use with the project: macro(find_qt) set(multiValueArgs COMPONENTS COMPONENTS_WIN COMPONENTS_MAC COMPONENTS_LINUX) @@ -129,38 +119,11 @@ macro(find_qt) # find_package runs set(QT_NO_CREATE_VERSIONLESS_TARGETS TRUE) - message(DEBUG "Start Qt version discovery...") - # Loop until _QT_VERSION is set or FATAL_ERROR aborts script execution early - while(NOT _QT_VERSION) - message(DEBUG "QT_VERSION set to ${QT_VERSION}") - if(QT_VERSION STREQUAL AUTO AND NOT qt_test_version) - set(qt_test_version 6) - elseif(NOT QT_VERSION STREQUAL AUTO) - set(qt_test_version ${QT_VERSION}) - endif() - message(DEBUG "Attempting to find Qt${qt_test_version}") - - find_package( - Qt${qt_test_version} - COMPONENTS Core - QUIET) - - if(TARGET Qt${qt_test_version}::Core) - set(_QT_VERSION - ${qt_test_version} - CACHE INTERNAL "") - message(STATUS "Qt version found: ${_QT_VERSION}") - unset(qt_test_version) - break() - elseif(QT_VERSION STREQUAL AUTO) - if(qt_test_version EQUAL 6) - message(WARNING "Qt6 was not found, falling back to Qt5") - set(qt_test_version 5) - continue() - endif() - endif() - message(FATAL_ERROR "Neither Qt6 nor Qt5 found.") - endwhile() + message(DEBUG "Attempting to find Qt 6") + find_package( + Qt6 + COMPONENTS Core + REQUIRED) # Enable versionless targets for the remaining Qt components set(QT_NO_CREATE_VERSIONLESS_TARGETS FALSE) @@ -175,7 +138,7 @@ macro(find_qt) endif() message(DEBUG "Trying to find Qt components ${qt_components}...") - find_package(Qt${_QT_VERSION} REQUIRED ${qt_components}) + find_package(Qt6 REQUIRED ${qt_components}) list(APPEND qt_components Core) @@ -186,9 +149,9 @@ macro(find_qt) # Check for versionless targets of each requested component and create if necessary foreach(component IN LISTS qt_components) message(DEBUG "Checking for target Qt::${component}") - if(NOT TARGET Qt::${component} AND TARGET Qt${_QT_VERSION}::${component}) + if(NOT TARGET Qt::${component} AND TARGET Qt6::${component}) add_library(Qt::${component} INTERFACE IMPORTED) - set_target_properties(Qt::${component} PROPERTIES INTERFACE_LINK_LIBRARIES Qt${_QT_VERSION}::${component}) + set_target_properties(Qt::${component} PROPERTIES INTERFACE_LINK_LIBRARIES Qt6::${component}) endif() endforeach() endmacro() diff --git a/plugins/obs-vst/cmake/legacy.cmake b/plugins/obs-vst/cmake/legacy.cmake index c5e886aaa..a60566497 100644 --- a/plugins/obs-vst/cmake/legacy.cmake +++ b/plugins/obs-vst/cmake/legacy.cmake @@ -21,7 +21,7 @@ set_target_properties( AUTOUIC ON AUTORCC ON) -if(_QT_VERSION EQUAL 6 AND OS_WINDOWS) +if(OS_WINDOWS) set_target_properties(obs-vst PROPERTIES AUTORCC_OPTIONS "--format-version;1") endif()