a60c4def00
* readthedocs updates * Adding License * correcting table of contents path * Move doc requirements to sphinx dir * Compile requirements.txt * Update path to reqs * Adding missing python module * changing sphinx version * changing docutils version * enabling sphinx extensions * trying sphinx-rtd-theme * Remove unused doc configs * Remove unused html theme options * Add files to toc * temp commit to test * updating environment.yml for CI build * Update doc requirements To include rocprofiler-sdk in projects.yaml * Set external_projects_current_project as rocprofiler-sdk * Exclude external projects * Fix warning for missing static path * updating conf.py * Removing reST syntax * Use rocm-docs-core doxygen integration * Remove RST syntax from Markdown files * Generate doxyfile post checkout on RTD * Use custom RTD env * Specify mambaforge * Put conda before post checkout cmd * Add doxyfile for RTD * Run cmake from conf.py * Update environment.yml * Use mambaforge * Fix path to environment.yml * Call build doxyfile * Add Developer API title to Doxyfile * Config version header * Fix typo in conf.py * Format fix for conf.py * Increasing timeout for build-docs-from-source * Remove README as mainpage for doxyfile * Fix formatting in conf.py --------- Co-authored-by: Sam Wu <22262939+samjwu@users.noreply.github.com>
108 línte
3.3 KiB
Python
108 línte
3.3 KiB
Python
# Configuration file for the Sphinx documentation builder.
|
|
#
|
|
# This file only contains a selection of the most common options. For a full
|
|
# list see the documentation:
|
|
# http://www.sphinx-doc.org/en/master/config
|
|
|
|
# -- Path setup --------------------------------------------------------------
|
|
|
|
# If extensions (or modules to document with autodoc) are in another directory,
|
|
# add these directories to sys.path here. If the directory is relative to the
|
|
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
|
|
import os
|
|
import sys
|
|
import subprocess as sp
|
|
|
|
# If extensions (or modules to document with autodoc) are in another directory,
|
|
# add these directories to sys.path here. If the directory is relative to the
|
|
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
sys.path.insert(0, os.path.abspath(".."))
|
|
|
|
|
|
def install(package):
|
|
sp.call([sys.executable, "-m", "pip", "install", package])
|
|
|
|
|
|
# Check if we're running on Read the Docs' servers
|
|
read_the_docs_build = os.environ.get("READTHEDOCS", None) == "True"
|
|
|
|
_srcdir = os.path.realpath(os.path.join(os.getcwd(), "../.."))
|
|
|
|
|
|
def build_doxyfile():
|
|
sp.run(
|
|
[
|
|
"cmake",
|
|
f"-DSOURCE_DIR={_srcdir}",
|
|
"-DPROJECT_NAME='Rocprofiler SDK'",
|
|
f"-P {_srcdir}/source/docs/generate-doxyfile.cmake",
|
|
]
|
|
)
|
|
|
|
|
|
def configure_version_header():
|
|
sp.run(
|
|
[
|
|
"cmake",
|
|
f"-S {_srcdir}/source/include/rocprofiler-sdk",
|
|
f"-B {_srcdir}/source/include/rocprofiler-sdk",
|
|
]
|
|
)
|
|
|
|
|
|
configure_version_header()
|
|
build_doxyfile()
|
|
|
|
# -- Project information -----------------------------------------------------
|
|
project = "Rocprofiler SDK"
|
|
copyright = "2023-2024, Advanced Micro Devices, Inc."
|
|
author = "Advanced Micro Devices, Inc."
|
|
|
|
project_root = os.path.normpath(os.path.join(os.getcwd(), "..", ".."))
|
|
version = open(os.path.join(project_root, "VERSION")).read().strip()
|
|
# The full version, including alpha/beta/rc tags
|
|
release = version
|
|
|
|
# -- General configuration ---------------------------------------------------
|
|
|
|
# Add any Sphinx extension module names here, as strings. They can be
|
|
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
# ones.
|
|
extensions = [
|
|
"rocm_docs",
|
|
"rocm_docs.doxygen",
|
|
]
|
|
|
|
doxygen_root = "."
|
|
doxysphinx_enabled = True
|
|
doxygen_project = {
|
|
"name": "rocprofiler-sdk",
|
|
"path": "_doxygen/xml",
|
|
}
|
|
doxyfile = "rocprofiler-sdk.dox"
|
|
|
|
external_projects_current_project = "rocprofiler-sdk"
|
|
external_projects = []
|
|
|
|
master_doc = "index"
|
|
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store", "README.md"]
|
|
external_toc_path = "./_toc.yml"
|
|
|
|
# Add any paths that contain templates here, relative to this directory.
|
|
templates_path = ["_templates"]
|
|
suppress_warnings = ["etoc.toctree"]
|
|
|
|
# -- Options for HTML output -------------------------------------------------
|
|
|
|
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
# a list of builtin themes.
|
|
|
|
html_theme = "rocm_docs_theme"
|
|
html_theme_options = {"flavor": "rocm"}
|
|
|
|
# Add any paths that contain custom static files (such as style sheets) here,
|
|
# relative to this directory. They are copied after the builtin static files,
|
|
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
html_title = f"ROCprofiler-SDK {version} Documentation"
|