blob: 9f43b03b5e0213c7825d79cb0197397441eb21d4 [file] [log] [blame]
Soby Mathewb4c6df42022-11-09 11:13:29 +00001#-------------------------------------------------------------------------------
2# SPDX-License-Identifier: BSD-3-Clause
3# SPDX-FileCopyrightText: Copyright TF-RMM Contributors.
4#
5#
6#-------------------------------------------------------------------------------
7
8add_custom_target(docs)
9
10find_package(Python3)
11find_package(Sphinx)
12find_package(PythonModules COMPONENTS sphinx-rtd-theme sphinxcontrib.plantuml)
13find_package(PlantUML)
14
15set(SPHINXCFG_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/user_guide)
16
17configure_file(${CMAKE_CURRENT_SOURCE_DIR}/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/conf.py @ONLY)
18
19if (SPHINX_FOUND AND PLANTUML_FOUND AND PY_SPHINX-RTD-THEME_FOUND AND PY_SPHINXCONTRIB.PLANTUML)
20
21 file(GLOB_RECURSE SPHINXCFG_DOC_FILES ${CMAKE_CURRENT_SOURCE_DIR} *.rst)
22
23 add_custom_command(OUTPUT "${SPHINXCFG_OUTPUT_PATH}/html/index.html"
24 OUTPUT "${SPHINXCFG_OUTPUT_PATH}/html/"
25 COMMAND "${SPHINX_EXECUTABLE}" -W -b html "${CMAKE_CURRENT_SOURCE_DIR}" "${SPHINXCFG_OUTPUT_PATH}/html" -c ${CMAKE_CURRENT_BINARY_DIR}
26 WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
27 DEPENDS ${SPHINXCFG_DOC_FILES}
28 )
29 add_custom_target(rmm_docs_userguide_html
30 DEPENDS "${SPHINXCFG_OUTPUT_PATH}/html/index.html"
31 DEPENDS "${SPHINXCFG_OUTPUT_PATH}/html/"
32 )
33 add_dependencies(docs rmm_docs_userguide_html)
34endif()