Warning, /libraries/ktextaddons/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-FileCopyrightText: 2022-2024 Laurent Montel <montel@kde.org> 0002 # SPDX-License-Identifier: BSD-3-Clause 0003 cmake_minimum_required(VERSION 3.16 FATAL_ERROR) 0004 set(KTEXTADDONS_CURRENT_VERSION "1.5.45") 0005 project(KTextAddons VERSION ${KTEXTADDONS_CURRENT_VERSION}) 0006 0007 include(FeatureSummary) 0008 set(KF_MIN_VERSION "5.115.0") 0009 find_package(ECM ${KF_MIN_VERSION} NO_MODULE) 0010 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://invent.kde.org/frameworks/extra-cmake-modules") 0011 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) 0012 0013 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/ ${ECM_MODULE_PATH}) 0014 0015 set(REQUIRED_QT_VERSION 5.15.2) 0016 0017 0018 include(KDEInstallDirs) 0019 include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) 0020 include(KDECMakeSettings) 0021 include(KDEGitCommitHooks) 0022 0023 include(ECMGenerateExportHeader) 0024 include(ECMSetupVersion) 0025 include(ECMGenerateHeaders) 0026 include(CMakePackageConfigHelpers) 0027 include(ECMAddQch) 0028 include(ECMAddTests) 0029 include(ECMDeprecationSettings) 0030 include(CMakeDependentOption) 0031 include(ECMQtDeclareLoggingCategory) 0032 0033 if (QT_MAJOR_VERSION STREQUAL "6") 0034 set(QT_REQUIRED_VERSION "6.6.0") 0035 set(KF_MIN_VERSION "5.246.0") 0036 set(KF_MAJOR_VERSION "6") 0037 else() 0038 set(KF_MAJOR_VERSION "5") 0039 endif() 0040 0041 find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets Core Network) 0042 0043 find_package(KF${KF_MAJOR_VERSION} ${KF_MIN_VERSION} REQUIRED COMPONENTS 0044 I18n 0045 ConfigWidgets 0046 Archive 0047 CoreAddons 0048 Sonnet 0049 KIO 0050 SyntaxHighlighting 0051 ) 0052 0053 option(BUILD_DESIGNERPLUGIN "Build plugin for Qt Designer" ON) 0054 add_feature_info(DESIGNERPLUGIN ${BUILD_DESIGNERPLUGIN} "Build plugin for Qt Designer") 0055 0056 find_package(Qt${QT_MAJOR_VERSION}Keychain CONFIG) 0057 set_package_properties(Qt${QT_MAJOR_VERSION}Keychain PROPERTIES 0058 DESCRIPTION "Provides support for secure credentials storage" 0059 URL "https://github.com/frankosterfeld/qtkeychain" 0060 TYPE REQUIRED) 0061 0062 if(BUILD_TESTING) 0063 find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} REQUIRED COMPONENTS Test) 0064 add_definitions(-DBUILD_TESTING) 0065 endif(BUILD_TESTING) 0066 0067 option(USE_UNITY_CMAKE_SUPPORT "Use UNITY cmake support (speedup compile time)" OFF) 0068 0069 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT OFF) 0070 if (USE_UNITY_CMAKE_SUPPORT) 0071 set(COMPILE_WITH_UNITY_CMAKE_SUPPORT ON) 0072 endif() 0073 0074 option(BERGAMOT_TRANSLATOR_PLUGIN "Build bergamot translator plugin" OFF) 0075 add_feature_info(BERGAMOT_TRANSLATOR_PLUGIN ${BERGAMOT_TRANSLATOR_PLUGIN} "Bergamot translator plugin (local translation) (Experimental. Need to download bergamot source code first)") 0076 0077 option(SPEAK_TO_TEXT_VOSK_PLUGIN "Build vosk speak to text support" OFF) 0078 add_feature_info(SPEAK_TO_TEXT_VOSK_PLUGIN ${SPEAK_TO_TEXT_VOSK_PLUGIN} "Vosk speak to text plugin (local text to speak) (Experimental)") 0079 0080 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) 0081 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") 0082 0083 option(DISABLE_AUTOTEST_BROKEN_CI "Disable autotest broken on CI (work locally)" OFF) 0084 0085 add_definitions(-DQT_NO_CONTEXTLESS_CONNECT) 0086 ecm_set_disabled_deprecation_versions( 0087 QT 6.6.0 0088 KF 5.248.0 0089 ) 0090 0091 if (BERGAMOT_TRANSLATOR_PLUGIN) 0092 find_package(slimt) 0093 set_package_properties(slimt PROPERTIES DESCRIPTION 0094 "Add local translation based on Bergamot" 0095 TYPE OPTIONAL 0096 ) 0097 endif() 0098 0099 0100 add_subdirectory(textaddonswidgets) 0101 add_subdirectory(textautocorrection) 0102 add_subdirectory(textgrammarcheck) 0103 add_subdirectory(texttranslator) 0104 add_subdirectory(textemoticons) 0105 add_subdirectory(textutils) 0106 if (QT_MAJOR_VERSION STREQUAL "6") 0107 find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} CONFIG REQUIRED MultimediaWidgets) 0108 add_subdirectory(textspeechtotext) 0109 endif() 0110 0111 find_package(Qt${QT_MAJOR_VERSION}TextToSpeech ${QT_REQUIRED_VERSION} CONFIG) 0112 set_package_properties(Qt${QT_MAJOR_VERSION}TextToSpeech PROPERTIES DESCRIPTION 0113 "Add support for text to speech" 0114 TYPE OPTIONAL 0115 ) 0116 if(TARGET Qt${QT_MAJOR_VERSION}::TextToSpeech) 0117 add_subdirectory(textedittexttospeech) 0118 endif() 0119 0120 add_subdirectory(textcustomeditor) 0121 ecm_qt_install_logging_categories( 0122 EXPORT KTEXTADDONS 0123 FILE ktextaddons.categories 0124 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} 0125 ) 0126 0127 0128 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 0129 ki18n_install(po) 0130 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)