summaryrefslogtreecommitdiff
path: root/graph/docs.mk
diff options
context:
space:
mode:
authorDibyendu Majumdar <mobile@majumdar.org.uk>2023-08-19 08:52:57 -0700
committerDibyendu Majumdar <mobile@majumdar.org.uk>2026-10-04 13:30:41 -0700
commit787a37d6b1753bb7c6abd36cba293737ad6b9a0a (patch)
treed26601274ec93203ca8df7bd2e71cf8b52d12d9b /graph/docs.mk
downloadSimple-787a37d6b1753bb7c6abd36cba293737ad6b9a0a.tar.gz
Simple-787a37d6b1753bb7c6abd36cba293737ad6b9a0a.zip
Chapter 1: Introduction
Co-authored-by: Cliff Click <cliffc@acm.org> Co-authored-by: Thalia Archibald <thalia@archibald.dev> Co-authored-by: hadha <helsgithub15@gmail.com> Co-authored-by: XmiliaH <45106915+XmiliaH@users.noreply.github.com> Co-authored-by: Tamás Hadházy <85063808+Hels15@users.noreply.github.com>
Diffstat (limited to 'graph/docs.mk')
-rw-r--r--graph/docs.mk24
1 files changed, 24 insertions, 0 deletions
diff --git a/graph/docs.mk b/graph/docs.mk
new file mode 100644
index 00000000..ad792ff5
--- /dev/null
+++ b/graph/docs.mk
@@ -0,0 +1,24 @@
+# Included from a chapter's docs/Makefile.
+# A viewer snapshot takes precedence over a legacy DOT source of the same name.
+GRAPH_DOCS := ../../graph
+PYTHON ?= python3
+DOC_BROWSER ?= chromium
+JSON := $(wildcard *.json)
+VIEW_SVG := $(JSON:.json=.svg)
+GV := $(filter-out $(JSON:.json=.gv),$(wildcard *.gv))
+SVG := $(VIEW_SVG) $(GV:.gv=.svg)
+.DELETE_ON_ERROR:
+
+.PHONY: all
+all: $(SVG)
+
+$(VIEW_SVG): %.svg: %.json $(GRAPH_DOCS)/render_docs.py $(wildcard $(GRAPH_DOCS)/web/*.js) $(wildcard $(GRAPH_DOCS)/web/*.css)
+ $(PYTHON) $(GRAPH_DOCS)/render_docs.py --browser $(DOC_BROWSER) $<
+
+$(GV:.gv=.svg): %.svg: %.gv
+ dot -Tsvg $< > $@
+ @sed -i 's/\r$$//' $@
+
+.PHONY: clean
+clean:
+ @rm -f $(SVG)