Warning, /plasma/kinfocenter/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 project(kinfocenter)
0002 set(PROJECT_VERSION "6.0.80")
0003 
0004 cmake_minimum_required(VERSION 3.16)
0005 set(QT_MIN_VERSION "6.6.0")
0006 
0007 set(KF6_MIN_VERSION "5.240")
0008 find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
0009 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}  ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
0010 
0011 set(CMAKE_CXX_STANDARD 20)
0012 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0013 
0014 include(KDEInstallDirs)
0015 include(KDECMakeSettings)
0016 include(KDECompilerSettings NO_POLICY_SCOPE)
0017 include(FeatureSummary)
0018 include(KDEClangFormat)
0019 include(ECMFindQmlModule)
0020 include(KDEGitCommitHooks)
0021 include(ECMSetupQtPluginMacroNames)
0022 include(ECMQueryQt)
0023 
0024 find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Gui Widgets)
0025 
0026 find_package(KF6 ${KF6_MIN_VERSION} REQUIRED COMPONENTS
0027     Config
0028     CoreAddons
0029     DocTools
0030     I18n
0031     KCMUtils
0032     KIO
0033     Service
0034     Solid
0035     WidgetsAddons
0036     Solid
0037     Auth
0038 )
0039 
0040 ecm_find_qmlmodule(org.kde.kirigami 2.5)
0041 
0042 macro(kinfocenter_add_kcm target)
0043     kcmutils_add_qml_kcm(${target} DISABLE_DESKTOP_FILE_GENERATION SOURCES ${ARGN} INSTALL_NAMESPACE plasma/kcms/kinfocenter)
0044 endmacro()
0045 
0046 find_package(SystemSettings QUIET)
0047 set_package_properties(SystemSettings PROPERTIES
0048     DESCRIPTION "Plasma's SystemSettings"
0049     TYPE RUNTIME
0050     PURPOSE "Absolutely required because the KInfoCenter binary is a symlink to it!"
0051 )
0052 
0053 include_directories(${CMAKE_CURRENT_BINARY_DIR})
0054 
0055 remove_definitions(-DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_KEYWORDS)
0056 add_definitions(-DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT)
0057 add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
0058 add_definitions(-DQT_USE_QSTRINGBUILDER)
0059 
0060 ecm_query_qt(QtBinariesDir QT_INSTALL_BINS)
0061 
0062 add_subdirectory( appiumtests )
0063 add_subdirectory( Categories )
0064 add_subdirectory( kcontrol/menus )
0065 add_subdirectory( Modules )
0066 add_subdirectory(src)
0067 
0068 include(ECMOptionalAddSubdirectory)
0069 ecm_optional_add_subdirectory( doc )
0070 kdoctools_install(po)
0071 
0072 # add clang-format target for all our real source files
0073 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0074 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0075 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0076 
0077 ##install
0078 
0079 install( FILES org.kde.kinfocenter.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
0080 install( PROGRAMS org.kde.kinfocenter.desktop  DESTINATION  ${KDE_INSTALL_APPDIR} )
0081 
0082 ADD_CUSTOM_TARGET(kinfocenter_link ALL
0083                   COMMAND ${CMAKE_COMMAND} -E create_symlink ${KDE_INSTALL_FULL_BINDIR}/systemsettings ${CMAKE_CURRENT_BINARY_DIR}/kinfocenter)
0084 
0085 install( FILES ${CMAKE_CURRENT_BINARY_DIR}/kinfocenter DESTINATION ${KDE_INSTALL_FULL_BINDIR}/ )
0086 
0087 ki18n_install(po)
0088 
0089 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)