Add the sphinx docs build options

Change-Id: If7ac5b41ca4ac602a100b616b37d07f658fd6a90
Signed-off-by: jdenisco <jdenisco@cisco.com>
This commit is contained in:
jdenisco
2018-09-24 14:59:33 -04:00
committed by Damjan Marion
parent edb3a9bca8
commit 3138d72309
4 changed files with 46 additions and 9 deletions

2
.gitignore vendored
View File

@ -82,7 +82,7 @@ GTAGS
/build-root/.doxygen-bootstrap.ok /build-root/.doxygen-bootstrap.ok
/build-root/.doxygen-siphon.dep /build-root/.doxygen-siphon.dep
/docs/_build /docs/_build
/env /sphinx_venv
!/docs/Makefile !/docs/Makefile
# indent backup files # indent backup files

View File

@ -217,6 +217,9 @@ help:
@echo " doxygen - (re)generate documentation" @echo " doxygen - (re)generate documentation"
@echo " bootstrap-doxygen - setup Doxygen dependencies" @echo " bootstrap-doxygen - setup Doxygen dependencies"
@echo " wipe-doxygen - wipe all generated documentation" @echo " wipe-doxygen - wipe all generated documentation"
@echo " docs - Build the Sphinx documentation"
@echo " docs-venv - Build the virtual environment for the Sphinx docs"
@echo " docs-clean - Remove the generated files from the Sphinx docs"
@echo " test-doc - generate documentation for test framework" @echo " test-doc - generate documentation for test framework"
@echo " test-wipe-doc - wipe documentation for test framework" @echo " test-wipe-doc - wipe documentation for test framework"
@echo " test-cov - generate code coverage report for test framework" @echo " test-cov - generate code coverage report for test framework"
@ -537,6 +540,22 @@ doxygen:
wipe-doxygen: wipe-doxygen:
$(call make-doxy) $(call make-doxy)
# Sphinx Documents
export DOCS_DIR = $(WS_ROOT)/docs
export VENV_DIR = $(WS_ROOT)/sphinx_venv
export SPHINX_SCRIPTS_DIR = $(WS_ROOT)/docs/scripts
.PHONY: docs-venv docs docs-clean
docs-venv:
@($(SPHINX_SCRIPTS_DIR)/sphinx-make.sh venv)
docs: $(DOCS_DIR)
@($(SPHINX_SCRIPTS_DIR)/sphinx-make.sh html)
docs-clean:
@($(SPHINX_SCRIPTS_DIR)/sphinx-make.sh clean)
verify: install-dep $(BR)/.deps.ok install-ext-deps verify: install-dep $(BR)/.deps.ok install-ext-deps
$(call banner,"Building for PLATFORM=vpp using gcc") $(call banner,"Building for PLATFORM=vpp using gcc")
@make -C build-root PLATFORM=vpp TAG=vpp wipe-all install-packages @make -C build-root PLATFORM=vpp TAG=vpp wipe-all install-packages

View File

@ -32,11 +32,7 @@ In the vpp root directory on your system, run:
.. code-block:: console .. code-block:: console
$ python -m pip install --user virtualenv $ make docs-venv
$ python -m virtualenv env
$ source env/bin/activate
$ pip install -r docs/etc/requirements.txt
$ cd docs
Which installs all the required applications into it's own, isolated, virtual environment, so as to not Which installs all the required applications into it's own, isolated, virtual environment, so as to not
interfere with other builds that may use different versions of software. interfere with other builds that may use different versions of software.
@ -44,12 +40,20 @@ interfere with other builds that may use different versions of software.
Build the html files Build the html files
====================== ======================
Be sure you are in your vpp-docs/docs directory, since that is where Sphinx will look for your **conf.py** Build the html **index.html** file:
file, and build the **.rst** files into an **index.html** file:
.. code-block:: console .. code-block:: console
$ make html $ make docs
Clean the environment
======================
Delete all the generated files with the following:
.. code-block:: console
$ make docs-clean
View the results View the results
================= =================

14
docs/scripts/sphinx-make.sh Executable file
View File

@ -0,0 +1,14 @@
#!/bin/bash
if [ "$1" == "venv" ]
then
python -m pip install --user virtualenv
python -m virtualenv $VENV_DIR
source $VENV_DIR/bin/activate;
pip install -r $DOCS_DIR/etc/requirements.txt
else
source $VENV_DIR/bin/activate;
make -C $DOCS_DIR $1
fi
deactivate