Index: CMakeLists.txt =================================================================== --- CMakeLists.txt +++ CMakeLists.txt @@ -16,11 +16,14 @@ include(ECMSetupVersion) include(ECMGenerateHeaders) include(ECMQtDeclareLoggingCategory) +include(ECMAddQCH) include(KDEInstallDirs) include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) include(KDECMakeSettings) +option(BUILD_QCH "Build API documentation in QCH format" ON) + set(REQUIRED_QT_VERSION 5.5.0) find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Core) @@ -80,6 +83,12 @@ install(EXPORT KF5CoreAddonsTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5CoreAddonsTargets.cmake NAMESPACE KF5:: ) install(EXPORT KF5CoreAddonsToolingTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5CoreAddonsToolingTargets.cmake NAMESPACE KF5:: ) +ecm_install_qch_export( + TARGETS KF5CoreAddons_QCH + FILE KF5CoreAddonsQCHTargets.cmake + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel +) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kcoreaddons_version.h DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5} COMPONENT Devel ) Index: KF5CoreAddonsConfig.cmake.in =================================================================== --- KF5CoreAddonsConfig.cmake.in +++ KF5CoreAddonsConfig.cmake.in @@ -14,5 +14,6 @@ endif() endif() include("${CMAKE_CURRENT_LIST_DIR}/KF5CoreAddonsTargets.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/KF5CoreAddonsQCHTargets.cmake") include("${CMAKE_CURRENT_LIST_DIR}/KF5CoreAddonsMacros.cmake") Index: src/lib/CMakeLists.txt =================================================================== --- src/lib/CMakeLists.txt +++ src/lib/CMakeLists.txt @@ -211,6 +211,25 @@ # Includes CMake code to install open-source license texts for KAboutData. add_subdirectory(licenses) +if(BUILD_QCH) +ecm_add_qch( + KF5CoreAddons_QCH + OUTPUT_BASENAME KF5CoreAddons + VERSION ${KF5_VERSION} + ORG_DOMAIN org.kde + SOURCES ${KCoreAddons_HEADERS} + MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md" + LINK_QCH + Qt5Core_QCH + BLANK_MACROS + KCOREADDONS_EXPORT + KCOREADDONS_DEPRECATED + KCOREADDONS_DEPRECATED_EXPORT + TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_FULL_DATADIR}/qch + QCH_INSTALL_DESTINATION ${KDE_INSTALL_FULL_DATADIR}/qch +) +endif() + include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KCoreAddons LIB_NAME KF5CoreAddons DEPS "core" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF5}/KCoreAddons) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})