diff --git a/CMakeLists.txt b/CMakeLists.txt index 8b63558..d6c750a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,95 +1,92 @@ cmake_minimum_required(VERSION 3.5) set(KF5_VERSION "5.68.0") # handled by release scripts project(Sonnet VERSION ${KF5_VERSION}) include(FeatureSummary) find_package(ECM 5.67.0 NO_MODULE) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://commits.kde.org/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake ) include(KDEInstallDirs) include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) include(KDECMakeSettings) include(ECMQtDeclareLoggingCategory) include(ECMGenerateExportHeader) include(ECMSetupVersion) include(ECMGenerateHeaders) include(ECMAddQch) include(ECMPoQmTools) set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") set(REQUIRED_QT_VERSION 5.12.0) option(SONNET_USE_WIDGETS "Build components using Qt5Widgets" ON) if(SONNET_USE_WIDGETS) find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets) endif() find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core) ecm_setup_version(PROJECT VARIABLE_PREFIX SONNET VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/sonnet_version.h" PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5SonnetConfigVersion.cmake" SOVERSION 5) option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") if(SONNET_USE_WIDGETS) option(BUILD_DESIGNERPLUGIN "Build plugin for Qt Designer" ON) add_feature_info(DESIGNERPLUGIN ${BUILD_DESIGNERPLUGIN} "Build plugin for Qt Designer") endif() add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050d00) if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") ecm_install_po_files_as_qm(po) endif() add_definitions(-DQT_NO_FOREACH) add_subdirectory(data) add_subdirectory(src) if (BUILD_TESTING) add_subdirectory(autotests) endif() if(TARGET Qt5::Widgets) add_subdirectory(examples) endif() # create a Config.cmake and a ConfigVersion.cmake file and install them set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF5Sonnet") if (BUILD_QCH) ecm_install_qch_export( TARGETS KF5SonnetCore_QCH KF5SonnetUi_QCH FILE KF5SonnetQchTargets.cmake DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF5SonnetQchTargets.cmake\")") endif() include(CMakePackageConfigHelpers) configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/KF5SonnetConfig.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/KF5SonnetConfig.cmake" INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/KF5SonnetConfig.cmake" "${CMAKE_CURRENT_BINARY_DIR}/KF5SonnetConfigVersion.cmake" DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) install(EXPORT KF5SonnetTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5SonnetTargets.cmake NAMESPACE KF5:: ) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/sonnet_version.h DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5} COMPONENT Devel ) -# contains list of debug categories, for kdebugsettings -install(FILES sonnet.categories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}) - feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/sonnet.categories b/sonnet.categories deleted file mode 100644 index fdf96cb..0000000 --- a/sonnet.categories +++ /dev/null @@ -1,8 +0,0 @@ -# Logging categories (for kdebugsettings) -sonnet.plugins.hunspell Sonnet HUnspell plugin IDENTIFIER [SONNET_HUNSPELL] -sonnet.plugins.hspell Sonnet Hspell plugin IDENTIFIER [SONNET_LOG_HSPELL] -sonnet.plugins.aspell Sonnet Aspell plugin IDENTIFIER [SONNET_LOG_ASPELL] -sonnet.plugins.voikko Sonnet Voikko plugin IDENTIFIER [SONNET_VOIKKO] -sonnet.core Sonnet Core IDENTIFIER [SONNET_LOG_CORE] -sonnet.ui Sonnet UI IDENTIFIER [SONNET_LOG_UI] - diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e6e4212..10f066a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,5 +1,11 @@ add_subdirectory(core) add_subdirectory(plugins) if(TARGET Qt5::Widgets) add_subdirectory(ui) endif() + +ecm_qt_install_logging_categories( + EXPORT SONNET + FILE sonnet.categories + DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} +) diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index d44f1f9..d94a8cb 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -1,98 +1,104 @@ project(sonnetcore) set(sonnetcore_SRCS loader.cpp client.cpp spellerplugin.cpp speller.cpp settings.cpp backgroundchecker.cpp guesslanguage.cpp textbreaks.cpp tokenizer.cpp languagefilter.cpp ) # create trigrams file + add trigrams resource if (TARGET KF5::parsetrigrams) add_custom_command(OUTPUT "${CMAKE_BINARY_DIR}/data/trigrams.map" COMMAND KF5::parsetrigrams "${CMAKE_SOURCE_DIR}/data/trigrams" > "${CMAKE_BINARY_DIR}/data/trigrams.map") configure_file(${CMAKE_SOURCE_DIR}/data/trigrams.qrc.in ${CMAKE_BINARY_DIR}/data/trigrams.qrc @ONLY) qt5_add_resources(sonnetcore_SRCS "${CMAKE_BINARY_DIR}/data/trigrams.qrc") endif() -ecm_qt_declare_logging_category(sonnetcore_SRCS HEADER core_debug.h IDENTIFIER SONNET_LOG_CORE CATEGORY_NAME sonnet.core) +ecm_qt_declare_logging_category(sonnetcore_SRCS + HEADER core_debug.h + IDENTIFIER SONNET_LOG_CORE + CATEGORY_NAME sonnet.core + DESCRIPTION "Sonnet Core" + EXPORT SONNET +) # Dear packagers, this is just used as an extra search paths for plugins. Don't get your panties in a twist. add_definitions(-DINSTALLATION_PLUGIN_PATH="${CMAKE_INSTALL_PREFIX}/${KDE_INSTALL_PLUGINDIR}") add_library(KF5SonnetCore ${sonnetcore_SRCS}) ecm_generate_export_header(KF5SonnetCore BASE_NAME SonnetCore GROUP_BASE_NAME KF VERSION ${KF5_VERSION} DEPRECATED_BASE_VERSION 0 #DEPRECATION_VERSIONS 5.65 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} ) add_library(KF5::SonnetCore ALIAS KF5SonnetCore) ecm_generate_headers(SonnetCore_CamelCase_HEADERS HEADER_NAMES BackgroundChecker Speller GuessLanguage PREFIX Sonnet REQUIRED_HEADERS SonnetCore_HEADERS ) target_link_libraries(KF5SonnetCore PUBLIC Qt5::Core) set_target_properties(KF5SonnetCore PROPERTIES VERSION ${SONNET_VERSION_STRING} SOVERSION ${SONNET_SOVERSION} EXPORT_NAME SonnetCore ) # CMAKE_CURRENT_BINARY_DIR: for camelcase headers and lowercase forwarders target_include_directories(KF5SonnetCore INTERFACE "$") target_include_directories(KF5SonnetCore PUBLIC "$") install(TARGETS KF5SonnetCore EXPORT KF5SonnetTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS}) install(FILES ${SonnetCore_CamelCase_HEADERS} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/SonnetCore/Sonnet COMPONENT Devel) install(FILES ${SonnetCore_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/sonnetcore_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/SonnetCore/sonnet COMPONENT Devel) if (BUILD_QCH) ecm_add_qch( KF5SonnetCore_QCH NAME SonnetCore BASE_NAME KF5SonnetCore VERSION ${KF5_VERSION} ORG_DOMAIN org.kde SOURCES # using only public headers, to cover only public API ${SonnetCore_HEADERS} LINK_QCHS Qt5Core_QCH INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} BLANK_MACROS SONNETCORE_EXPORT SONNETCORE_DEPRECATED_EXPORT SONNETCORE_DEPRECATED "SONNETCORE_DEPRECATED_VERSION(x, y, t)" TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} COMPONENT Devel ) endif() include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME SonnetCore LIB_NAME KF5SonnetCore DEPS "core" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF5}/SonnetCore) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) diff --git a/src/plugins/aspell/CMakeLists.txt b/src/plugins/aspell/CMakeLists.txt index a29aab4..231d369 100644 --- a/src/plugins/aspell/CMakeLists.txt +++ b/src/plugins/aspell/CMakeLists.txt @@ -1,14 +1,20 @@ include_directories( ${ASPELL_INCLUDE_DIR}) ########### next target ############### set(sonnet_aspell_PART_SRCS aspellclient.cpp aspelldict.cpp) -ecm_qt_declare_logging_category(sonnet_aspell_PART_SRCS HEADER aspell_debug.h IDENTIFIER SONNET_LOG_ASPELL CATEGORY_NAME sonnet.plugins.aspell) +ecm_qt_declare_logging_category(sonnet_aspell_PART_SRCS + HEADER aspell_debug.h + IDENTIFIER SONNET_LOG_ASPELL + CATEGORY_NAME sonnet.plugins.aspell + DESCRIPTION "Sonnet Aspell plugin" + EXPORT SONNET +) add_library(sonnet_aspell MODULE ${sonnet_aspell_PART_SRCS}) target_link_libraries(sonnet_aspell PRIVATE KF5::SonnetCore ${ASPELL_LIBRARIES}) install(TARGETS sonnet_aspell DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/sonnet/) diff --git a/src/plugins/hspell/CMakeLists.txt b/src/plugins/hspell/CMakeLists.txt index c2dc2d4..2aea795 100644 --- a/src/plugins/hspell/CMakeLists.txt +++ b/src/plugins/hspell/CMakeLists.txt @@ -1,22 +1,28 @@ find_package(ZLIB) set_package_properties(ZLIB PROPERTIES DESCRIPTION "Support for gzip compressed files and data streams" URL "http://www.zlib.net" TYPE REQUIRED PURPOSE "Required by the hspell sonnet plugin" ) include_directories(${HSPELL_INCLUDE_DIR}) ########### next target ############### set(sonnet_hspell_PART_SRCS hspellclient.cpp hspelldict.cpp) -ecm_qt_declare_logging_category(sonnet_hspell_PART_SRCS HEADER hspell_debug.h IDENTIFIER SONNET_LOG_HSPELL CATEGORY_NAME sonnet.plugins.hspell) +ecm_qt_declare_logging_category(sonnet_hspell_PART_SRCS + HEADER hspell_debug.h + IDENTIFIER SONNET_LOG_HSPELL + CATEGORY_NAME sonnet.plugins.hspell + DESCRIPTION "Sonnet Hspell plugin" + EXPORT SONNET +) add_library(sonnet_hspell MODULE ${sonnet_hspell_PART_SRCS}) target_link_libraries(sonnet_hspell PRIVATE KF5::SonnetCore ${HSPELL_LIBRARIES} ${ZLIB_LIBRARY}) install(TARGETS sonnet_hspell DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/sonnet/) diff --git a/src/plugins/hunspell/CMakeLists.txt b/src/plugins/hunspell/CMakeLists.txt index 8fd9081..83b64dc 100644 --- a/src/plugins/hunspell/CMakeLists.txt +++ b/src/plugins/hunspell/CMakeLists.txt @@ -1,21 +1,27 @@ set(sonnet_hunspell_PART_SRCS hunspellclient.cpp hunspelldict.cpp ) -ecm_qt_declare_logging_category(sonnet_hunspell_PART_SRCS HEADER hunspelldebug.h IDENTIFIER SONNET_HUNSPELL CATEGORY_NAME sonnet.plugins.hunspell) +ecm_qt_declare_logging_category(sonnet_hunspell_PART_SRCS + HEADER hunspelldebug.h + IDENTIFIER SONNET_HUNSPELL + CATEGORY_NAME sonnet.plugins.hunspell + DESCRIPTION "Sonnet HUnspell plugin" + EXPORT SONNET +) # see: https://phabricator.kde.org/R246:0a96acf251baa5c9dd042d093ab2bf8fcee10502 set(USE_OLD_HUNSPELL_API TRUE) if (PKG_HUNSPELL_VERSION GREATER "1.5.0") set(USE_OLD_HUNSPELL_API FALSE) # new API introduced in v1.5.1 (cf. https://github.com/hunspell/hunspell/commit/8006703dafeebce19f2144c5cf180812eb99693a) endif() message(STATUS "Using old hunspell API: ${USE_OLD_HUNSPELL_API}") configure_file(config-hunspell.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-hunspell.h) add_library(sonnet_hunspell MODULE ${sonnet_hunspell_PART_SRCS}) target_include_directories(sonnet_hunspell SYSTEM PUBLIC ${HUNSPELL_INCLUDE_DIRS}) target_link_libraries(sonnet_hunspell PRIVATE KF5::SonnetCore ${HUNSPELL_LIBRARIES}) target_compile_definitions(sonnet_hunspell PRIVATE DEFINITIONS SONNET_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}") install(TARGETS sonnet_hunspell DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/sonnet/) diff --git a/src/plugins/ispellchecker/CMakeLists.txt b/src/plugins/ispellchecker/CMakeLists.txt index cef25a1..b024f6d 100644 --- a/src/plugins/ispellchecker/CMakeLists.txt +++ b/src/plugins/ispellchecker/CMakeLists.txt @@ -1,14 +1,20 @@ # needs windows 8 or higher add_definitions(-DWINVER=0x0602 -D_WIN32_WINNT=0x0602) set(sonnet_ispellchecker_PART_SRCS ispellcheckerclient.cpp ispellcheckerdict.cpp ) -ecm_qt_declare_logging_category(sonnet_ispellchecker_PART_SRCS HEADER ispellcheckerdebug.h IDENTIFIER SONNET_ISPELLCHECKER CATEGORY_NAME sonnet.plugins.ispellchecker) +ecm_qt_declare_logging_category(sonnet_ispellchecker_PART_SRCS + HEADER ispellcheckerdebug.h + IDENTIFIER SONNET_ISPELLCHECKER + CATEGORY_NAME sonnet.plugins.ispellchecker + DESCRIPTION "Sonnet ISpellChecker plugin" + EXPORT SONNET +) add_library(sonnet_ispellchecker MODULE ${sonnet_ispellchecker_PART_SRCS}) target_link_libraries(sonnet_ispellchecker PRIVATE KF5::SonnetCore) target_compile_definitions(sonnet_ispellchecker PRIVATE DEFINITIONS SONNET_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}") install(TARGETS sonnet_ispellchecker DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/sonnet/) diff --git a/src/plugins/nsspellchecker/CMakeLists.txt b/src/plugins/nsspellchecker/CMakeLists.txt index f79f745..c7f8696 100644 --- a/src/plugins/nsspellchecker/CMakeLists.txt +++ b/src/plugins/nsspellchecker/CMakeLists.txt @@ -1,15 +1,18 @@ set(sonnet_nsspellchecker_PART_SRCS nsspellcheckerclient.mm nsspellcheckerdict.mm ) ecm_qt_declare_logging_category(sonnet_nsspellchecker_PART_SRCS HEADER nsspellcheckerdebug.h IDENTIFIER SONNET_NSSPELLCHECKER - CATEGORY_NAME sonnet.plugins.nsspellchecker) + CATEGORY_NAME sonnet.plugins.nsspellchecker + DESCRIPTION "Sonnet NSSpellChecker plugin" + EXPORT SONNET +) add_library(sonnet_nsspellchecker MODULE ${sonnet_nsspellchecker_PART_SRCS}) target_link_libraries(sonnet_nsspellchecker PRIVATE KF5::SonnetCore "-framework AppKit") install(TARGETS sonnet_nsspellchecker DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/sonnet/) diff --git a/src/plugins/voikko/CMakeLists.txt b/src/plugins/voikko/CMakeLists.txt index ca22424..845523f 100644 --- a/src/plugins/voikko/CMakeLists.txt +++ b/src/plugins/voikko/CMakeLists.txt @@ -1,13 +1,19 @@ include_directories(${VOIKKO_INCLUDE_DIR}) ########### next target ############### set(sonnet_voikko_PART_SRCS voikkoclient.cpp voikkodict.cpp) -ecm_qt_declare_logging_category(sonnet_voikko_PART_SRCS HEADER voikkodebug.h IDENTIFIER SONNET_VOIKKO CATEGORY_NAME sonnet.plugins.voikko) +ecm_qt_declare_logging_category(sonnet_voikko_PART_SRCS + HEADER voikkodebug.h + IDENTIFIER SONNET_VOIKKO + CATEGORY_NAME sonnet.plugins.voikko + DESCRIPTION "Sonnet Voikko plugin" + EXPORT SONNET +) add_library(sonnet_voikko MODULE ${sonnet_voikko_PART_SRCS}) target_link_libraries(sonnet_voikko PRIVATE KF5::SonnetCore ${VOIKKO_LIBRARIES}) install(TARGETS sonnet_voikko DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/sonnet/) diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index bb407b8..8ddcf34 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -1,104 +1,110 @@ project(sonnetui) ecm_create_qm_loader(sonnet_QM_LOADER sonnet5_qt) set(sonnetui_SRCS configdialog.cpp configwidget.cpp dialog.cpp dictionarycombobox.cpp highlighter.cpp spellcheckdecorator.cpp ${sonnet_QM_LOADER} ) -ecm_qt_declare_logging_category(sonnetui_SRCS HEADER ui_debug.h IDENTIFIER SONNET_LOG_UI CATEGORY_NAME sonnet.ui) +ecm_qt_declare_logging_category(sonnetui_SRCS + HEADER ui_debug.h + IDENTIFIER SONNET_LOG_UI + CATEGORY_NAME sonnet.ui + DESCRIPTION "Sonnet UI" + EXPORT SONNET +) set(sonnetui_UI configui.ui sonnetui.ui ) ecm_generate_headers(SonnetUi_CamelCase_HEADERS HEADER_NAMES Dialog Highlighter ConfigDialog ConfigWidget DictionaryComboBox SpellCheckDecorator PREFIX Sonnet REQUIRED_HEADERS SonnetUi_HEADERS ) qt5_wrap_ui(sonnetui_SRCS ${sonnetui_UI}) add_library(KF5SonnetUi ${sonnetui_SRCS}) ecm_generate_export_header(KF5SonnetUi BASE_NAME SonnetUi GROUP_BASE_NAME KF VERSION ${KF5_VERSION} DEPRECATED_BASE_VERSION 0 DEPRECATION_VERSIONS 5.65 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} ) add_library(KF5::SonnetUi ALIAS KF5SonnetUi) target_link_libraries(KF5SonnetUi PUBLIC Qt5::Widgets PRIVATE KF5::SonnetCore ) set_target_properties(KF5SonnetUi PROPERTIES VERSION ${SONNET_VERSION_STRING} SOVERSION ${SONNET_SOVERSION} EXPORT_NAME SonnetUi ) # CMAKE_CURRENT_BINARY_DIR: for camelcase headers and lowercase forwarders target_include_directories(KF5SonnetUi INTERFACE "$") target_include_directories(KF5SonnetUi PUBLIC "$") install(TARGETS KF5SonnetUi EXPORT KF5SonnetTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS}) install(FILES ${SonnetUi_CamelCase_HEADERS} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/SonnetUi/Sonnet COMPONENT Devel) install(FILES ${SonnetUi_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/sonnetui_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/SonnetUi/sonnet COMPONENT Devel) if(BUILD_DESIGNERPLUGIN) add_subdirectory(designer) endif() if (BUILD_QCH) ecm_add_qch( KF5SonnetUi_QCH NAME SonnetUi BASE_NAME KF5SonnetUi VERSION ${KF5_VERSION} ORG_DOMAIN org.kde SOURCES # using only public headers, to cover only public API ${SonnetUi_HEADERS} LINK_QCHS Qt5Core_QCH Qt5Gui_QCH Qt5Widgets_QCH INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} BLANK_MACROS SONNETUI_EXPORT SONNETUI_DEPRECATED_EXPORT SONNETUI_DEPRECATED "SONNETUI_DEPRECATED_VERSION(x, y, t)" TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} COMPONENT Devel ) endif() include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME SonnetUi LIB_NAME KF5SonnetUi DEPS "widgets" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF5}/SonnetUi) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})