Warning, /libraries/kuserfeedback/docs/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 if(QT_MAJOR_VERSION STREQUAL "5")
0002     query_qmake(QT_INSTALL_DOCS "QT_INSTALL_DOCS")
0003     query_qmake(QT_INSTALL_DATA "QT_INSTALL_DATA")
0004     find_file(QDOC_TEMPLATE global/qt-html-templates-offline.qdocconf
0005         HINTS ${QT_INSTALL_DOCS}
0006         HINTS ${QT_INSTALL_DATA}
0007         HINTS ${QT_INSTALL_DATA}/doc
0008     )
0009 elseif(QT_MAJOR_VERSION STREQUAL "6")
0010     find_file(QDOC_TEMPLATE global/qt-html-templates-offline.qdocconf
0011         HINTS ${QT6_INSTALL_PREFIX}/${QT6_INSTALL_DOCS}
0012     )
0013 endif()
0014 
0015 get_filename_component(QDOC_TEMPLATE_DIR ${QDOC_TEMPLATE} DIRECTORY)
0016 if(NOT QDOC_TEMPLATE_DIR)
0017     message(STATUS "Could not build .qch because the qdoc template directory could not be found")
0018 endif()
0019 
0020 function(_qdoc_status_report)
0021     message(STATUS "Unable to build .qch user manual:")
0022 
0023     if(TARGET Qt${QT_MAJOR_VERSION}::qdoc)
0024         get_property(_path TARGET Qt${QT_MAJOR_VERSION}::qdoc PROPERTY LOCATION)
0025         message(STATUS "qdoc executable: ${_path}")
0026     else()
0027         message(STATUS "qdoc executable not found")
0028     endif()
0029 
0030     if(TARGET Qt${QT_MAJOR_VERSION}::qhelpgenerator)
0031         get_property(_path TARGET Qt${QT_MAJOR_VERSION}::qhelpgenerator PROPERTY LOCATION)
0032         message(STATUS "qhelpgenerator executable: ${_path}")
0033     else()
0034         message(STATUS "qhelpgenerator not found")
0035     endif()
0036 endfunction()
0037 
0038 set(_qdoc_available FALSE)
0039 if(QDOC_TEMPLATE_DIR AND TARGET Qt${QT_MAJOR_VERSION}::qdoc AND TARGET Qt${QT_MAJOR_VERSION}::qhelpgenerator)
0040     set(_qdoc_available TRUE)
0041 endif()
0042 
0043 # If qdoc and qhelpgenerator are found build .qch
0044 if(NOT _qdoc_available)
0045     _qdoc_status_report()
0046 else()
0047     configure_file(${CMAKE_CURRENT_SOURCE_DIR}/user-feedback-manual.qdocconf.in ${CMAKE_CURRENT_BINARY_DIR}/user-feedback-manual.qdocconf)
0048     file(GLOB_RECURSE _qdoc_srcs ${CMAKE_CURRENT_SOURCE_DIR} "*.qdoc")
0049     set(_qdoc_output_dir ${CMAKE_CURRENT_BINARY_DIR}/manual)
0050     add_custom_command(
0051         OUTPUT ${_qdoc_output_dir}/user-feedback-manual.qhp
0052         COMMAND Qt${QT_MAJOR_VERSION}::qdoc
0053             --outputdir ${_qdoc_output_dir}
0054             ${CMAKE_CURRENT_BINARY_DIR}/user-feedback-manual.qdocconf
0055         DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/user-feedback-manual.qdocconf ${_qdoc_srcs}
0056     )
0057     add_custom_command(
0058         OUTPUT ${_qdoc_output_dir}/user-feedback-manual.qch
0059         COMMAND Qt${QT_MAJOR_VERSION}::qhelpgenerator ${_qdoc_output_dir}/user-feedback-manual.qhp
0060         DEPENDS ${_qdoc_output_dir}/user-feedback-manual.qhp
0061     )
0062     add_custom_target(user_feedback_manual_qch ALL DEPENDS ${_qdoc_output_dir}/user-feedback-manual.qch)
0063     install(FILES ${_qdoc_output_dir}/user-feedback-manual.qch DESTINATION ${KDE_INSTALL_DATAROOTDIR}/KDE/UserFeedbackConsole)
0064 endif()
0065 
0066 # If qcollectiongenerator is found build .qhc
0067 if(NOT TARGET Qt${QT_MAJOR_VERSION}::qcollectiongenerator OR NOT _qdoc_available)
0068     message(STATUS "Unable to build .qhc user manual:")
0069     if(TARGET Qt${QT_MAJOR_VERSION}::qcollectiongenerator)
0070         get_property(_path TARGET Qt${QT_MAJOR_VERSION}::qcollectiongenerator PROPERTY LOCATION)
0071         message(STATUS "qcollectiongenerator executable: ${_path}")
0072     else()
0073         message(STATUS "qcollectiongenerator not found")
0074     endif()
0075 
0076     _qdoc_status_report()
0077 else()
0078     configure_file(${CMAKE_CURRENT_SOURCE_DIR}/user-feedback.qhcp.in ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhcp)
0079     add_custom_command(
0080         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhc
0081         COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/manual/user-feedback-manual.qch ${CMAKE_CURRENT_BINARY_DIR}
0082         COMMAND Qt${QT_MAJOR_VERSION}::qcollectiongenerator ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhcp -o ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhc
0083         DEPENDS
0084             ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhcp
0085             user_feedback_manual_qch
0086         WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
0087     )
0088     add_custom_target(user_feedback_qhc ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhc)
0089     install(FILES ${CMAKE_CURRENT_BINARY_DIR}/user-feedback.qhc DESTINATION ${KDE_INSTALL_DATAROOTDIR}/KDE/UserFeedbackConsole)
0090 endif()