# Makefile for VPP Test documentation # SPHINXOPTS = SRC_DOC_DIR = $(TEST_DIR)/doc SPHINXBUILD = sphinx-build HTML_DOC_GEN_DIR = $(TEST_DOC_BR)/html API_DOC_GEN_DIR = $(TEST_DOC_BR)/api # Internal variables. ALLSPHINXOPTS = -d $(TEST_DOC_BR)/.sphinx-cache $(SPHINXOPTS) $(API_DOC_GEN_DIR) -c $(SRC_DOC_DIR) IN_VENV:=$(shell if pip -V | grep "venv" 2>&1 > /dev/null; then echo 1; else echo 0; fi) .PHONY: verify-virtualenv verify-virtualenv: ifndef TEST_DIR $(error TEST_DIR is not set) endif ifndef TEST_DOC_BR $(error TEST_DOC_BR is not set) endif ifndef BUILD_TEST_SRC $(error BUILD_TEST_SRC is not set) endif ifeq ($(IN_VENV),0) $(error "Not running inside virtualenv (are you running 'make test-doc' from root?)") endif .PHONY: regen-api-doc regen-api-doc: verify-virtualenv @mkdir -p $(API_DOC_GEN_DIR) @cp $(SRC_DOC_DIR)/index.rst $(API_DOC_GEN_DIR) @cp $(SRC_DOC_DIR)/indices.rst $(API_DOC_GEN_DIR) @cp $(SRC_DOC_DIR)/overview.rst $(API_DOC_GEN_DIR) sphinx-apidoc -o $(API_DOC_GEN_DIR) -H "Module documentation" $(BUILD_TEST_SRC) .PHONY: html html: regen-api-doc verify-virtualenv $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(HTML_DOC_GEN_DIR)