47 lines
1.3 KiB
Makefile
47 lines
1.3 KiB
Makefile
# Minimal makefile for Sphinx documentation
|
|
#
|
|
|
|
# You can set these variables from the command line, and also
|
|
# from the environment for the first two.
|
|
SOURCEDIR = .
|
|
SOURCES =
|
|
BUILDDIR = _build
|
|
PYTHON = python3
|
|
VENVDIR = ./venv
|
|
SPHINXBUILD = PATH=$(VENVDIR)/bin:$$PATH sphinx-build
|
|
|
|
ALLSPHINXOPTS = -b $(BUILDER) -d build/doctrees $(SPHINXOPTS) . build/$(BUILDER) $(SOURCES)
|
|
|
|
.PHONY: help clean build html text venv Makefile
|
|
|
|
# Put it first so that "make" without argument is like "make help".
|
|
help:
|
|
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
|
|
clean:
|
|
-rm -rf build/* $(VENVDIR)/*
|
|
|
|
build:
|
|
-mkdir -p build
|
|
$(SPHINXBUILD) $(ALLSPHINXOPTS)
|
|
@echo
|
|
|
|
html: BUILDER = html
|
|
html: build
|
|
@echo "Build finished. The HTML pages are in build/html."
|
|
|
|
text: BUILDER = text
|
|
text: build
|
|
@echo "Build finished; the text files are in build/text."
|
|
|
|
venv:
|
|
$(PYTHON) -m venv $(VENVDIR)
|
|
$(VENVDIR)/bin/python3 -m pip install -U pip setuptools
|
|
$(VENVDIR)/bin/python3 -m pip install -r requirements.txt
|
|
@echo "The venv has been created in the $(VENVDIR) directory"
|
|
|
|
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
%: Makefile
|
|
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|