Files
QtPotato/CMakeLists.txt
T
2026-10-28 09:26:12 +07:00

45 lines
1.3 KiB
CMake

cmake_minimum_required(VERSION 3.25)
project(qtpotato VERSION 0.1.0 LANGUAGES CXX)
set(QT_MIN_VERSION "6.8.0")
set(KF_MIN_VERSION "6.10.0")
find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
include(KDEInstallDirs)
include(KDECMakeSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
include(ECMQmlModule)
include(ECMAddTests)
include(FeatureSummary)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Gui Qml Quick QuickControls2 Widgets Network Concurrent DBus)
find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS Kirigami I18n CoreAddons Crash Config)
find_package(MpvQt 1.0 REQUIRED)
find_package(QCoro6 0.10 REQUIRED COMPONENTS Core Network)
find_package(Qt6Keychain 0.14 REQUIRED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(FFMPEG REQUIRED IMPORTED_TARGET libavformat libavcodec libavutil)
qcoro_enable_coroutines()
find_package(KF6KirigamiAddons 1.0)
set_package_properties(KF6KirigamiAddons PROPERTIES
TYPE RUNTIME
PURPOSE "FormCard settings and About pages")
add_subdirectory(src)
if(BUILD_TESTING)
find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS Test)
add_subdirectory(autotests)
endif()
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)