summaryrefslogtreecommitdiffstats
path: root/docs/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/CMakeLists.txt')
-rw-r--r--docs/CMakeLists.txt34
1 files changed, 34 insertions, 0 deletions
diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt
new file mode 100644
index 0000000..a03333e
--- /dev/null
+++ b/docs/CMakeLists.txt
@@ -0,0 +1,34 @@
+find_package(Sphinx REQUIRED)
+
+if(SPHINX_FOUND)
+ if(NOT DEFINED SPHINX_THEME)
+ set(SPHINX_THEME default)
+ endif()
+
+ if(NOT DEFINED SPHINX_THEME_DIR)
+ set(SPHINX_THEME_DIR)
+ endif()
+
+ # configured documentation tools and intermediate build results
+ set(BINARY_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/_build")
+
+ # Sphinx cache with pickled ReST documents
+ set(SPHINX_CACHE_DIR "${CMAKE_CURRENT_BINARY_DIR}/_doctrees")
+
+ # HTML output directory
+ set(SPHINX_HTML_DIR "${CMAKE_CURRENT_BINARY_DIR}/../build-root/html")
+
+ configure_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/conf.py.in"
+ "${BINARY_BUILD_DIR}/conf.py"
+ @ONLY)
+
+ add_custom_target(docs
+ ${SPHINX_EXECUTABLE}
+ -q -b html
+ -c "${BINARY_BUILD_DIR}"
+ -d "${SPHINX_CACHE_DIR}"
+ "${CMAKE_CURRENT_SOURCE_DIR}"
+ "${SPHINX_HTML_DIR}"
+ COMMENT "Building HTML documentation with Sphinx")
+endif()