Documentation
This is the new build system for the various wolfSSL products' manuals, please see the READMEs each directory for more information. The advantages of this over previous wolfSSL manuals are:
- Has a possible code review process
- Can automatically generate PDF and HTML output
- Has cross links between parts of the documentation
- Has links to the required API parts
Building Documentation
To build the documentation you will need Docker running on your system. In this documentation root directory run make to build the documentation for every project which will output in a build subdirectory of this root directory (note: on some systems you may need to use sudo before make). You can also build individual project manuals by doing:
make wolfsslmake wolfsshmake wolfbootmake wolfclumake wolfcrypt-jnimake wolfmqttmake wolfsentrymake wolfssl-jnimake wolftpm
Contributing
There is a CONTRIBUTING.md document which outlines how to add manuals to the tree.
Building without Docker
Pre-requisites
If you are not building using the Docker build system above you can build using Ubuntu, this will require around 3GB of packages to be installed:
sudo apt install pandoc texlive-full mkdocs doxygenYou also need Doxybook2 installed which can be found at: https://github.com/matusnovak/doxybook2. Unfortunately there is no package for this. Installation instructions can be found at: https://github.com/matusnovak/doxybook2#Install
If Doxybook2 is installed in a non-stardard path you can use the environment variable DOXYBOOK_PATH to set it.
Building
When in each manual directory to build the PDF:
make pdfTo build the HTML:
make htmlTo build both:
makeTo run a local HTML server (HTML is built to a temporary area for this):
make serve