aboutsummaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorJim Newsome <jnewsome@torproject.org>2023-11-09 18:45:08 -0600
committerJim Newsome <jnewsome@torproject.org>2023-11-09 18:45:20 -0600
commitf275aa9f638ddef1f83006260ac27c609a426a45 (patch)
tree69b82b46f3d933aafe3a052e644644dd4c97bbb7 /bin
parent601ecfe41ebd10e69f3fdecc85febdc75581f0ff (diff)
downloadtorspec-f275aa9f638ddef1f83006260ac27c609a426a45.tar.gz
torspec-f275aa9f638ddef1f83006260ac27c609a426a45.zip
build_html: add some hints about build deps
Diffstat (limited to 'bin')
-rwxr-xr-xbin/build_html12
1 files changed, 12 insertions, 0 deletions
diff --git a/bin/build_html b/bin/build_html
index 0a3d7f6..67fc067 100755
--- a/bin/build_html
+++ b/bin/build_html
@@ -32,6 +32,7 @@ if test -n "${MMDC:-}" || command -v "mmdc" >&/dev/null; then
# (The conversion involves npm and a headless chrome browser,
# to it is understandable that not everybody would want to do it
# this way.)
+ echo "Using mermaid-cli to pre-render mermaid diagrams"
TMPDIR=$(mktemp -d "${TOPLEVEL}/tmp_mmdc.XXXXXXXX")
trap 'rm -rf "$TMPDIR"' 0
@@ -47,6 +48,8 @@ elif test -n "${MDBOOK_MERMAID:-}" || command -v "mdbook-mermaid" >&/dev/null; t
# This is much easier to run locally, but it requires that your
# browser has enough client-side javascript in order to run
# mermaid. It doesn't touch npm.
+ echo "Using mdbook-mermaid to set up dynamic rendering of mermaid diagrams"
+
MDBOOK_MERMAID=${MDBOOK_MERMAID:=mdbook-mermaid}
TMPDIR=$(mktemp -d "${TOPLEVEL}/tmp_mdbook_mermaid.XXXXXXXX")
trap 'rm -rf "$TMPDIR"' 0
@@ -60,10 +63,19 @@ else
#
# In this case we run mdbook on our inputs unchanged.
# The mermaid blocks will render as code.
+ echo "No mermaid support found; mermaid diagrams will be unrendered"
+
MDBOOK_OUTPUT_DIR=""
MDBOOK_DIR="$TOPLEVEL/mdbook"
fi
+# mdbook-linkcheck is a non-obvious dependency, and the mdbook output when it's
+# not found doesn't spell out how to install it.
+if ! command -v mdbook-linkcheck; then
+ echo 'ERROR: mdbook-linkcheck not found. You should probably install it with `cargo install mdbook-linkcheck`'
+ exit 1
+fi
+
$MDBOOK build "${MDBOOK_DIR}/spec"
$MDBOOK build "${MDBOOK_DIR}/proposals"