Building documentation

To build the documentation from scratch you will need mkdocs and doxygen.

If you have pip you can run pip install mkdocs. To install pip on a Debian/Ubuntu system run apt-get install python-pip.

To install Doxygen, run apt-get install doxygen on Ubuntu/Debian. If you also want code graphs install graphviz apt-get install graphviz.

Running MkDocs

After installing MkDocs, if you want to run a local webserver to see the documentation simply type mkdocs serve from the root directory of the source code. To generate the documentation inside the directory called site run make mkdocs.

To know more about mkdocs visit their webpage.

Running doxygen

In order to generate the doxygen code simply run make doxygen from the root directory and it will be generated for you. This naturally requires doxygen to be installed on the build machine. It will generate the doxygen files in the directory site/doxygen/.

Hosting on git-hub pages

The generated documentation is hosted on git-hub pages. This happens in a special branch called gh-pages. The link for git-hub pages is (http://kthplaceholder.github.io/GraphTool/). The gh-pages branch does not include any of the source code or any other files apart from the documentation site to be hosted on github.io. To learn more about this system read the GitHub.io documentation.

To updated the pages hosted on github first run mkdocs: make mkdocs

If you also want to update doxygen run: make doxygen

Then change to the branch gh-pages: git checkout gh-pages

Then move all files from the site directory to the root directory. Finally remove the site directory and run git commit -a. Write a commit message and then run git push origin.

There is also a Makefile target called publish_docs which publish an updated version at once when you run make publish_docs. Before doing this, however, make sure that you have run make documentation

Your changes will now be published to GitHub Pages.