@echo " doxygen - (re)generate documentation"
@echo " bootstrap-doxygen - setup Doxygen dependencies"
@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-wipe-doc - wipe documentation for test framework"
@echo " test-cov - generate code coverage report for test framework"
wipe-doxygen:
$(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
$(call banner,"Building for PLATFORM=vpp using gcc")
@make -C build-root PLATFORM=vpp TAG=vpp wipe-all install-packages
.. code-block:: console
- $ python -m pip install --user virtualenv
- $ python -m virtualenv env
- $ source env/bin/activate
- $ pip install -r docs/etc/requirements.txt
- $ cd docs
+ $ make docs-venv
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.
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**
-file, and build the **.rst** files into an **index.html** file:
+Build the html **index.html** file:
.. 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
=================
--- /dev/null
+#!/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