Add 'waf linkcheck' to check external references.

This commit is contained in:
Amar Takhar
2016-01-19 23:00:32 -05:00
committed by Amar Takhar
parent 9b495a2980
commit ed3794ea39
11 changed files with 25 additions and 11 deletions

View File

@@ -29,12 +29,27 @@ def cmd_spell(ctx):
call(cmd)
def cmd_linkcheck(ctx, conf_dir=".", source_dir="."):
ctx(
rule = "${BIN_SPHINX_BUILD} -b linkcheck -c %s -j %d -d build/doctrees %s build/linkcheck" % (conf_dir, ctx.options.jobs, source_dir),
cwd = ctx.path.abspath(),
source = ctx.path.ant_glob('**/*.rst'),
target = "linkcheck/output.txt"
)
class spell(BuildContext):
__doc__ = "Check spelling. Supply a list of files or a glob (*.rst)"
cmd = 'spell'
fun = 'cmd_spell'
class linkcheck(BuildContext):
__doc__ = "Check all external URL references."
cmd = 'linkcheck'
fun = 'cmd_linkcheck'
def check_sphinx_version(ctx, minver):
version = ctx.cmd_and_log(ctx.env.BIN_SPHINX_BUILD + ['--version']).split(" ")[-1:][0]
ver = tuple(map(int, version.split(".")))
@@ -79,7 +94,6 @@ def doc_pdf(ctx, source_dir, conf_dir):
prompt = 0
)
def doc_singlehtml(ctx, source_dir, conf_dir):
if not ctx.env.BIN_INLINER:
ctx.fatal("Node inliner is required install with 'npm install -g inliner' (https://github.com/remy/inliner)")