1# ------------------------------------------------------------------------------
2# Makefile for documentation build
3# SPDX-License-Identifier: Apache-2.0
4
5BUILDDIR ?= _build
6DOC_TAG ?= development
7SPHINXOPTS ?= -j auto -W --keep-going -T
8SPHINXOPTS_EXTRA ?=
9LATEXMKOPTS ?= -halt-on-error -no-shell-escape
10DT_TURBO_MODE ?= 0
11
12# ------------------------------------------------------------------------------
13# Documentation targets
14
15.PHONY: configure clean html html-fast html-live html-live-fast latex pdf doxygen
16
17html-fast:
18	${MAKE} html DT_TURBO_MODE=1
19
20html-live-fast:
21	${MAKE} html-live DT_TURBO_MODE=1
22
23html html-live latex pdf linkcheck doxygen: configure
24	cmake --build ${BUILDDIR} --target $@
25
26configure:
27	cmake \
28		-GNinja \
29		-B${BUILDDIR} \
30		-S. \
31		-DDOC_TAG=${DOC_TAG} \
32		-DSPHINXOPTS="${SPHINXOPTS}" \
33		-DSPHINXOPTS_EXTRA="${SPHINXOPTS_EXTRA}" \
34		-DLATEXMKOPTS="${LATEXMKOPTS}" \
35		-DDT_TURBO_MODE=${DT_TURBO_MODE}
36
37clean:
38	cmake --build ${BUILDDIR} --target clean
39