| if(LLVM_ENABLE_SPHINX) |
| include(AddSphinxTarget) |
| if(SPHINX_FOUND AND SPHINX_OUTPUT_HTML) |
| # Generate offload-api.rst from OffloadAPI.td |
| set(LLVM_TARGET_DEFINITIONS |
| ${OFFLOAD_SOURCE_DIR}/liboffload/API/OffloadAPI.td) |
| tablegen(OFFLOAD source/offload-api.rst -gen-doc |
| EXTRA_INCLUDES ${OFFLOAD_SOURCE_DIR}/liboffload/API) |
| add_public_tablegen_target(OffloadDocsGenerate) |
| |
| # Due to Sphinx only allowing a single source direcotry and the fact we |
| # only generate a single file, copy offload-api.rst to the source directory |
| # to be included in the generated documentation. |
| # Additionally, copy the llvm-theme into the Sphinx source directory. |
| # A .gitignore file ensures the copied files will not be added to the |
| # repository. |
| add_custom_target(OffloadDocsCopy |
| COMMAND ${CMAKE_COMMAND} -E copy |
| ${CMAKE_CURRENT_BINARY_DIR}/source/offload-api.rst |
| ${CMAKE_CURRENT_SOURCE_DIR}/offload-api.rst |
| COMMAND ${CMAKE_COMMAND} -E copy |
| ${OFFLOAD_SOURCE_DIR}/../clang/www/favicon.ico |
| ${CMAKE_CURRENT_SOURCE_DIR}/_static/favicon.ico |
| COMMAND ${CMAKE_COMMAND} -E copy |
| ${OFFLOAD_SOURCE_DIR}/../llvm/docs/_static/llvm.css |
| ${CMAKE_CURRENT_SOURCE_DIR}/_static/llvm.css |
| COMMAND ${CMAKE_COMMAND} -E copy_directory |
| ${OFFLOAD_SOURCE_DIR}/../llvm/docs/_themes |
| ${CMAKE_CURRENT_SOURCE_DIR}/_themes |
| ) |
| add_dependencies(OffloadDocsCopy OffloadDocsGenerate) |
| |
| # Generate the HTML documentation, the docs-offload-html target. |
| add_sphinx_target(html offload) |
| add_dependencies(docs-offload-html OffloadDocsCopy) |
| endif() |
| endif() |