X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Fdoc%2FMakefile;h=608df0a1baf70af154b109de9504738b1b4b0608;hb=f0797d130;hp=be070e1534689873e28966d6b58aa17ca4d95644;hpb=c9cb8f6d9c6e1f51dfdf3e9f4ba0c9f38d1ca6d6;p=vpp.git diff --git a/test/doc/Makefile b/test/doc/Makefile index be070e15346..608df0a1baf 100644 --- a/test/doc/Makefile +++ b/test/doc/Makefile @@ -1,25 +1,27 @@ -# Makefile for Sphinx documentation +# Makefile for VPP Test documentation # -# You can set these variables from the command line. SPHINXOPTS = SRC_DOC_DIR = $(TEST_DIR)/doc SPHINXBUILD = sphinx-build -PAPER = -BUILD_DOC_ROOT = $(TEST_DIR)/doc -BUILD_DOC_DIR = $(BUILD_DOC_ROOT)/build -API_DOC_GEN_DIR = $(BUILD_DOC_ROOT)/apidoc +HTML_DOC_GEN_DIR = $(TEST_DOC_BR)/html +API_DOC_GEN_DIR = $(TEST_DOC_BR)/api # Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILD_DOC_DIR)/.sphinx-cache $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(API_DOC_GEN_DIR) -c $(SRC_DOC_DIR) -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +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 @@ -30,214 +32,8 @@ regen-api-doc: verify-virtualenv @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" .. - -.PHONY: help -help: - @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " applehelp to make an Apple Help Book" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " epub3 to make an epub3" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " xml to make Docutils-native XML files" - @echo " pseudoxml to make pseudoxml-XML files for display purposes" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - @echo " coverage to run coverage check of the documentation (if enabled)" - @echo " dummy to check syntax errors of document sources" - -.PHONY: wipe -wipe: - rm -rf $(BUILD_DOC_ROOT) + 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) $(BUILD_DOC_DIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILD_DOC_DIR)/html." - -.PHONY: dirhtml -dirhtml: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILD_DOC_DIR)/dirhtml." - -.PHONY: singlehtml -singlehtml: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILD_DOC_DIR)/singlehtml." - -.PHONY: pickle -pickle: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -.PHONY: json -json: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -.PHONY: htmlhelp -htmlhelp: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILD_DOC_DIR)/htmlhelp." - -.PHONY: qthelp -qthelp: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILD_DOC_DIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILD_DOC_DIR)/qthelp/VPPtestframework.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILD_DOC_DIR)/qthelp/VPPtestframework.qhc" - -.PHONY: applehelp -applehelp: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/applehelp - @echo - @echo "Build finished. The help book is in $(BUILD_DOC_DIR)/applehelp." - @echo "N.B. You won't be able to view it unless you put it in" \ - "~/Library/Documentation/Help or install it in your application" \ - "bundle." - -.PHONY: devhelp -devhelp: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/VPPtestframework" - @echo "# ln -s $(BUILD_DOC_DIR)/devhelp $$HOME/.local/share/devhelp/VPPtestframework" - @echo "# devhelp" - -.PHONY: epub -epub: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILD_DOC_DIR)/epub." - -.PHONY: epub3 -epub3: - $(SPHINXBUILD) -b epub3 $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/epub3 - @echo - @echo "Build finished. The epub3 file is in $(BUILD_DOC_DIR)/epub3." - -.PHONY: latex -latex: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILD_DOC_DIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -.PHONY: latexpdf -latexpdf: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILD_DOC_DIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILD_DOC_DIR)/latex." - -.PHONY: latexpdfja -latexpdfja: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/latex - @echo "Running LaTeX files through platex and dvipdfmx..." - $(MAKE) -C $(BUILD_DOC_DIR)/latex all-pdf-ja - @echo "pdflatex finished; the PDF files are in $(BUILD_DOC_DIR)/latex." - -.PHONY: text -text: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/text - @echo - @echo "Build finished. The text files are in $(BUILD_DOC_DIR)/text." - -.PHONY: man -man: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILD_DOC_DIR)/man." - -.PHONY: texinfo -texinfo: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILD_DOC_DIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -.PHONY: info -info: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILD_DOC_DIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILD_DOC_DIR)/texinfo." - -.PHONY: gettext -gettext: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILD_DOC_DIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILD_DOC_DIR)/locale." - -.PHONY: changes -changes: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/changes - @echo - @echo "The overview file is in $(BUILD_DOC_DIR)/changes." - -.PHONY: linkcheck -linkcheck: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILD_DOC_DIR)/linkcheck/output.txt." - -.PHONY: doctest -doctest: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILD_DOC_DIR)/doctest/output.txt." - -.PHONY: coverage -coverage: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/coverage - @echo "Testing of coverage in the sources finished, look at the " \ - "results in $(BUILD_DOC_DIR)/coverage/python.txt." - -.PHONY: xml -xml: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/xml - @echo - @echo "Build finished. The XML files are in $(BUILD_DOC_DIR)/xml." - -.PHONY: pseudoxml -pseudoxml: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/pseudoxml - @echo - @echo "Build finished. The pseudo-XML files are in $(BUILD_DOC_DIR)/pseudoxml." - -.PHONY: dummy -dummy: regen-api-doc verify-virtualenv - $(SPHINXBUILD) -b dummy $(ALLSPHINXOPTS) $(BUILD_DOC_DIR)/dummy - @echo - @echo "Build finished. Dummy builder generates no files." + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(HTML_DOC_GEN_DIR)