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

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 project(print-manager)
0004 set(PROJECT_VERSION "6.0.80")
0005 
0006 set(PROJECT_DEP_VERSION "6.0.80")
0007 set(QT_MIN_VERSION "6.6.0")
0008 set(KF6_MIN_VERSION "5.240.0")
0009 
0010 set(CMAKE_CXX_STANDARD 20)
0011 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0012 
0013 ################# set KDE specific information #################
0014 
0015 find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE)
0016 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ${ECM_MODULE_PATH})
0017 
0018 include(KDEInstallDirs)
0019 include(KDECMakeSettings)
0020 include(KDECompilerSettings NO_POLICY_SCOPE)
0021 include(KDEGitCommitHooks)
0022 include(KDEClangFormat)
0023 
0024 include(ECMQmlModule)
0025 include(ECMOptionalAddSubdirectory)
0026 include(ECMQtDeclareLoggingCategory)
0027 include(FeatureSummary)
0028 
0029 find_package(Qt6 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
0030     Core
0031     DBus
0032     Network
0033     Widgets
0034     Qml
0035     Quick
0036 )
0037 find_package(Qt6Core5Compat)
0038 
0039 find_package(Cups "1.5" REQUIRED)
0040 
0041 find_package(KF6 ${KF6_MIN_VERSION} REQUIRED 
0042     Config 
0043     ConfigWidgets 
0044     CoreAddons 
0045     DBusAddons 
0046     IconThemes 
0047     I18n 
0048     KCMUtils 
0049     Kirigami
0050     KIO
0051     Notifications 
0052     WidgetsAddons 
0053     WindowSystem 
0054 )
0055 
0056 find_package(Plasma ${PROJECT_DEP_VERSION} REQUIRED)
0057 
0058 set_package_properties(KF6Kirigami PROPERTIES
0059     TYPE REQUIRED
0060     PURPOSE "Kirigami application UI framework"
0061 )
0062 
0063 find_package(CupsSmb)
0064 set_package_properties(CupsSmb PROPERTIES
0065     TYPE RUNTIME
0066     DESCRIPTION "SMB backend for CUPS (aka smbspool)"
0067     PURPOSE "Required for CUPS to be able to print to printers shared over SMB"
0068     URL "https://samba.org"
0069 )
0070 
0071 add_definitions(
0072     -DQT_DISABLE_DEPRECATED_BEFORE=0x050900
0073     -DQT_USE_FAST_OPERATOR_PLUS
0074     -DQT_NO_URL_CAST_FROM_STRING
0075     -DQT_NO_CAST_FROM_BYTEARRAY
0076     -DQT_NO_CAST_FROM_ASCII
0077 )
0078 
0079 remove_definitions(-DQT_NO_KEYWORDS)
0080 
0081 # Generate config.h
0082 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake
0083                ${CMAKE_CURRENT_BINARY_DIR}/config.h)
0084 
0085 
0086 include_directories(${CMAKE_BINARY_DIR}) # config.h
0087 
0088 install(FILES org.kde.print-manager.metainfo.xml DESTINATION "${KDE_INSTALL_METAINFODIR}")
0089 
0090 add_definitions(-DTRANSLATION_DOMAIN="print-manager")
0091 
0092 add_subdirectory(src)
0093 
0094 ecm_qt_install_logging_categories(
0095     EXPORT PMLOGS
0096     DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0097 )
0098 
0099 ki18n_install(po)
0100 
0101 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0102 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0103 
0104 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0105 
0106 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)