aerothemeplasma/plasma/atpootb/CMakeLists.txt
wackyideas 8d6fbd7bdb overhaul: prepare repo for Plasma 6.6 release
This commit overhauls the repository structure such that it separates
the project into multiple repositories, one for each subproject. This
repository will be moved to the AeroShell group, and most importantly,
the installation method changes from locally installed modifications, to
CMake-based installation, in preparation for AUR packages, and possibly
packages for other distros.

Migration details are in INSTALL.md, which are highly recommended, if
not required to uninstall any old instance of AeroThemePlasma.
2026-02-21 21:15:07 +01:00

63 lines
1.9 KiB
CMake

# SPDX-FileCopyrightText: 2025 WackyIdeas <wackyideas@disroot.org>
# SPDX-License-Identifier: BSD-3-Clause
cmake_minimum_required(VERSION 3.16)
project(atpootb VERSION 0.1)
include(FeatureSummary)
set(QT6_MIN_VERSION 6.5.0)
set(KF6_MIN_VERSION 6.12.0)
find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH})
include(FeatureSummary)
include(KDEInstallDirs)
include(KDECMakeSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
include(ECMSetupVersion)
include(ECMFindQmlModule)
include(KDEGitCommitHooks)
include(KDEClangFormat)
ecm_setup_version(${PROJECT_VERSION}
VARIABLE_PREFIX ATPOOTB
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/version-atpootb.h"
)
remove_definitions(-DQT_NO_CAST_FROM_ASCII)
set(QT_EXTRA_COMPONENTS)
list(APPEND QT_EXTRA_COMPONENTS Widgets)
find_package(Qt6 ${QT6_MIN_VERSION} REQUIRED COMPONENTS Core Gui Qml QuickControls2 Svg ${QT_EXTRA_COMPONENTS})
find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS Kirigami KCMUtils Package CoreAddons Config I18n Auth)
find_package(KWin REQUIRED COMPONENTS
kwin
)
qt_policy(SET QTP0001 NEW)
ecm_find_qmlmodule(org.kde.kirigamiaddons.formcard 1.0)
kauth_install_actions(io.gitgud.wackyideas.ootb kauth.actions)
add_executable(ootbcursor_authhelper src/ootbauthhelper.cpp src/ootbauthhelper.h)
target_link_libraries(ootbcursor_authhelper KF6::AuthCore KF6::ConfigCore KF6::I18n Qt6::DBus Qt6::Core)
install(TARGETS ootbcursor_authhelper DESTINATION ${KAUTH_HELPER_INSTALL_DIR})
kauth_install_helper_files(ootbcursor_authhelper io.gitgud.wackyideas.ootb root)
add_subdirectory(src)
ki18n_install(po)
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES src/*.cpp src/*.h)
kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)