076f4d8427
* 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>
[ROCm/rocprofiler-sdk commit: a60c4def00]
108 lignes
3.3 KiB
Python
108 lignes
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"
|