aboutsummaryrefslogtreecommitdiffstats
path: root/doc/CMakeLists.txt
blob: 48d0e22e72b8ceb3b1686a8a99fac820aa85b2cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
if (QBS_INSTALL_HTML_DOCS OR QBS_INSTALL_QCH_DOCS)
    get_target_property(_QBS_OUTPUT_DIR qbs RUNTIME_OUTPUT_DIRECTORY)

    if (QBS_INSTALL_HTML_DOCS)
        set(_INSTALL_HTML_DOCS true)
    else()
        set(_INSTALL_HTML_DOCS false)
    endif()

    if (QBS_INSTALL_QCH_DOCS)
        set(_INSTALL_QCH_DOCS true)
    else()
        set(_INSTALL_QCH_DOCS false)
    endif()

    get_update_path_command(UPDATE_PATH_COMMAND)
    add_custom_target(
        BuildQbsDocumentation ALL
        COMMAND ${UPDATE_PATH_COMMAND}
        COMMAND ${_QBS_OUTPUT_DIR}/qbs
            resolve
            --settings-dir ${PROJECT_BINARY_DIR}/settings
            -f ${PROJECT_SOURCE_DIR}/qbs.qbs
            -d ${PROJECT_BINARY_DIR}/
            config:doc-build
            qbs.installPrefix:undefined
            project.withCode:false
            project.withDocumentation:true
            profile:none
            modules.qbsbuildconfig.installHtml:${_INSTALL_HTML_DOCS}
            modules.qbsbuildconfig.installQch:${_INSTALL_QCH_DOCS}
            moduleProviders.Qt.qmakeFilePaths:${QT_QMAKE_EXECUTABLE}
        COMMAND ${_QBS_OUTPUT_DIR}/qbs
            build
            --settings-dir ${PROJECT_BINARY_DIR}/settings
            -f ${PROJECT_SOURCE_DIR}/qbs.qbs
            -d ${PROJECT_BINARY_DIR}/
            config:doc-build
            -p "qbs documentation"
        DEPENDS qbs copy-runtime-files-qbs qbs_processlauncher
      )
  install(
      DIRECTORY ${PROJECT_BINARY_DIR}/doc-build/install-root/share/doc/qbs/html/
      DESTINATION "${QBS_DOC_INSTALL_DIR}"
      )
endif()