Warning, /plasma-mobile/raven/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # Copyright 2021 Carl Schwan <carl@carlschwan.eu> 0002 # Copyright 2022 Devin Lin <devin@kde.org> 0003 # SPDX-License-Identifier: GPL-2.0-or-later 0004 0005 cmake_minimum_required(VERSION 3.16) 0006 0007 project(raven) 0008 0009 set (CMAKE_CXX_STANDARD 17) 0010 set(PROJECT_VERSION "0.1") 0011 set(QT_MIN_VERSION "5.15.0") 0012 set(KF5_MIN_VERSION "5.70.0") 0013 set(LIBKDEPIM_VERSION "5.19.0") 0014 0015 0016 0017 include(FeatureSummary) 0018 0019 ################# set KDE specific information ################# 0020 find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) 0021 0022 # where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked 0023 set(CMAKE_MODULE_PATH 0024 ${CMAKE_MODULE_PATH} 0025 ${ECM_MODULE_PATH} 0026 ) 0027 0028 include(KDEInstallDirs) 0029 include(KDECMakeSettings) 0030 include(KDECompilerSettings NO_POLICY_SCOPE) 0031 include(ECMSetupVersion) 0032 include(ECMGenerateHeaders) 0033 include(ECMPoQmTools) 0034 include(KDEClangFormat) 0035 include(ECMQmlModule) 0036 0037 ecm_setup_version(${PROJECT_VERSION} 0038 VARIABLE_PREFIX RAVEN 0039 VERSION_HEADER ${CMAKE_CURRENT_BINARY_DIR}/version.h 0040 ) 0041 0042 ################# Find dependencies ################# 0043 find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS 0044 Core 0045 Gui 0046 Qml 0047 QuickControls2 0048 Svg 0049 Sql 0050 WebEngineWidgets 0051 ) 0052 0053 find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS 0054 Kirigami2 0055 I18n 0056 CoreAddons 0057 Declarative 0058 ItemModels 0059 KCMUtils 0060 KIO 0061 ) 0062 0063 find_package(KF5 ${LIBKDEPIM_VERSION} REQUIRED COMPONENTS 0064 Akonadi 0065 AkonadiContact 0066 MailCommon 0067 PimCommonAkonadi 0068 Libkdepim 0069 AkonadiMime 0070 Ldap 0071 Mime 0072 MailTransport 0073 MailTransportAkonadi 0074 PimCommon 0075 PimCommonAkonadi 0076 MessageList 0077 I18n 0078 ) 0079 0080 find_package(KF5KirigamiAddons 0.6 REQUIRED) 0081 0082 set(CMAKE_CXX_STANDARD 17) 0083 0084 ################# build and install ################# 0085 0086 add_definitions(-DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII -DQT_NO_URL_CAST_FROM_STRING) 0087 add_definitions(-DQT_USE_QSTRINGBUILDER) 0088 add_definitions(-DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT) 0089 add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050d00) 0090 add_definitions(-DQT_STRICT_ITERATORS) 0091 0092 add_subdirectory(src) 0093 0094 install(PROGRAMS org.kde.raven.desktop DESTINATION ${KDE_INSTALL_APPDIR}) 0095 install(FILES org.kde.raven.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR}) 0096 install(FILES org.kde.raven.svg DESTINATION ${KDE_INSTALL_FULL_ICONDIR}/hicolor/scalable/apps/) 0097 0098 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) 0099 0100 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES src/*.cpp src/*.h) 0101 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0102