You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.5 KiB
42 lines
1.5 KiB
![]()
2 years ago
|
#!/usr/bin/env python
|
||
|
|
||
|
def build(bld):
|
||
|
dox_to_sphinx = bld.path.find_node("../../scripts/dox_to_sphinx.py")
|
||
|
index_xml = bld.path.get_bld().make_node("xml/index.xml")
|
||
|
|
||
|
files = [
|
||
|
("../_static/custom.css", "sphinx/_static/custom.css"),
|
||
|
("../_templates/about.html", "sphinx/_templates/about.html"),
|
||
|
("../sratom.rst", "sphinx/sratom.rst"),
|
||
|
("index.rst", "sphinx/index.rst"),
|
||
|
("overview.rst", "sphinx/overview.rst"),
|
||
|
("reference.rst", "sphinx/reference.rst"),
|
||
|
]
|
||
|
|
||
|
# Run Doxygen to generate XML documentation
|
||
|
bld(features="doxygen", doxyfile="Doxyfile")
|
||
|
|
||
|
# Substitute variables to make Sphinx configuration file
|
||
|
bld(features="subst",
|
||
|
source="../conf.py.in",
|
||
|
target="sphinx/conf.py",
|
||
|
SERD_VERSION=bld.env.SERD_VERSION)
|
||
|
|
||
|
# Copy static documentation files to Sphinx build directory
|
||
|
for f in files:
|
||
|
bld(features="subst", is_copy=True, source=f[0], target=f[1])
|
||
|
|
||
|
# Generate Sphinx markup from Doxygen XML
|
||
|
bld.add_group()
|
||
|
bld(rule="${PYTHON} " + dox_to_sphinx.abspath() + " -f ${SRC} ${TGT}",
|
||
|
source=index_xml,
|
||
|
target="sphinx/api/")
|
||
|
|
||
|
# Run Sphinx to generate HTML documentation
|
||
|
doc_dir = bld.env.DOCDIR + "/sratom-%s/" % bld.env.SRATOM_MAJOR_VERSION
|
||
|
bld(features="sphinx",
|
||
|
sphinx_source=bld.path.get_bld().make_node("sphinx"),
|
||
|
sphinx_output_format="singlehtml",
|
||
|
sphinx_options=["-E", "-q"],
|
||
|
install_path=doc_dir + "c/singlehtml/")
|