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

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