60 lines
1.6 KiB
Makefile
60 lines
1.6 KiB
Makefile
# Copyright (c) 2020-now by the Zeek Project. See LICENSE for details.
|
|
|
|
# Minimal makefile for Sphinx documentation
|
|
#
|
|
|
|
# You can set these variables from the command line.
|
|
SPHINXOPTS = -W --keep-going -n
|
|
SPHINXBUILD = sphinx-build
|
|
SPHINXPROJ = Spicy
|
|
BUILDDIR = $(PWD)/../build
|
|
SOURCEDIR = $(PWD)
|
|
DESTDIR = $(BUILDDIR)/html
|
|
|
|
.PHONY: all
|
|
all: html
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -rf $(DESTDIR)
|
|
|
|
.PHONY: html
|
|
html: autogen-docs sphinx
|
|
|
|
.PHONY: livehtml
|
|
livehtml: autogen-docs sphinx-auto
|
|
|
|
.PHONY: sphinx-setup
|
|
sphinx-setup:
|
|
@rm -f "$(BUILDDIR)/doc-root" && ln -s "../doc" "$(BUILDDIR)/doc-root"
|
|
@ # Since Sphinx expects the Doxygen output directory, create it here to
|
|
@ # allow users to build without Doxygen, but still have Sphinx succeed.
|
|
@mkdir -p doxygen-output
|
|
|
|
.PHONY: sphinx
|
|
sphinx: sphinx-setup
|
|
@ # The RTD theme might be producing RemovedInSphinx30Warning
|
|
@PYTHONWARNINGS="ignore" PATH=$(BUILDDIR)/bin:$$PATH $(SPHINXBUILD) -M html "$(SOURCEDIR)" "$(DESTDIR)" $(SPHINXOPTS) $(O)
|
|
@echo Built documentation in $(realpath $(DESTDIR)/html/index.html)
|
|
|
|
.PHONY: sphinx-auto
|
|
sphinx-auto: sphinx-setup
|
|
sphinx-autobuild --ignore "*.git/*" --ignore "*.lock" --ignore "*.pyc" --ignore "*.swp" --ignore "*.swpx" --ignore "*.swx" -b html -d "$(DESTDIR)/doctrees" "$(SOURCEDIR)" "$(DESTDIR)/html"
|
|
|
|
.PHONY: autogen-docs
|
|
autogen-docs:
|
|
@echo Auto-generating reference documentation ...
|
|
(cd $(BUILDDIR)/.. && ./doc/scripts/autogen-docs)
|
|
|
|
.PHONY: doxygen
|
|
doxygen:
|
|
mkdir -p ../build/html/html/doxygen
|
|
doxygen
|
|
|
|
.PHONY: check
|
|
check:
|
|
@$(SPHINXBUILD) -q -b linkcheck $(SOURCEDIR) $(DESTDIR)/linkcheck
|
|
|
|
spicy-%:
|
|
git clone https://github.com/zeek/$@
|