From 5daabd23cfd13662e74ce8d069204882eb1fbad9 Mon Sep 17 00:00:00 2001 From: Amar Takhar Date: Fri, 15 Jan 2016 23:41:06 -0500 Subject: Initial reST documentation using Sphinx. --- common/waf.py | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 common/waf.py (limited to 'common/waf.py') diff --git a/common/waf.py b/common/waf.py new file mode 100644 index 0000000..bd5243a --- /dev/null +++ b/common/waf.py @@ -0,0 +1,37 @@ +import sys, os + +def cmd_configure(ctx): + ctx.find_program("sphinx-build", var="SPHINX_BUILD") + +def cmd_build(ctx, sub, source_dir="."): + srcnode = ctx.srcnode.abspath() + + file_conf = ctx.path.parent.find_node("common/conf.py") + tg = ctx( + features = "subst", + source = file_conf, + target = file_conf.name + ) + + tg.__dict__.update(sub) + + + # Copy resources. + for dir in ["_static", "_templates"]: + files = ctx.path.parent.find_node("common").ant_glob("%s/*" % dir) + ctx.path.get_bld().make_node(dir).mkdir() # dirs + + ctx( + features = "subst", + is_copy = True, + source = files, + target = [ctx.bldnode.find_node(dir).get_bld().make_node(x.name) for x in files] + ) + + ctx( + rule = "${SPHINX_BUILD} -b html -c build -j %s -d build/doctrees %s build/html" % (ctx.options.jobs, source_dir), + cwd = ctx.path.abspath(), + source = ctx.path.ant_glob('**/*.rst') + ctx.path.ant_glob('conf.py'), + target = ctx.path.find_or_declare('html/index.html') + ) + -- cgit v1.2.3