Documentation

The official CENDARI is created using Sphinx. It is build from the code repository on GitHub.

Prerequisites

Make sure you have doxphp installed.

To build the CENDARI theme you need bower and grunt:

npm install -g bower
npm install -g grunt-cli

To build the PDF version, you need LaTeX installed, i.e.

package {
  'texlive-latex-recommended': ensure => installed;
  'texlive-latex-extra':       ensure => installed;
  'texlive-fonts-recommended': ensure => installed;
  'texlive-fonts-extra':       ensure => installed;
}

Preparing the build environemnt

To compile the documentation with parts included directly from submodules, make sure to have the lastest revision

git submodule update --init --recursive --remote

You may want to define the version and iteration:

VERSION=$(grep ^version source/conf.py | sed 's/version = '\''\([0-9.]*\)'\''/\1/g')
ITERATION=0
export CENDARI_RELEASE="${VERSION}-${ITERATION}"

Enable the inclusion of the submodules

export CENDARI_INCLUDE_SUBMODULE_DOCS="YES"

Install the requirements into a dedicated Python Vitualenv:

virtualenv venv
source venv/bin/activate
pip install -r requirements.txt
pip install -r dependency-requirements.txt

Compile the CENDARI theme in source/sphinx_rtd_theme by running

npm install

grunt exec:bower_update
grunt sass:dev
grunt clean:build
grunt exec:build_sphinx

In the Repositories main directory run

/bin/bash submodules-import.sh

to prepare the imported sources.

Compiling the Documentation

Finally build the documentation in HTML and PDF format.

make html
make latexpdf
cp build/latex/CENDARI.pdf build/html/

Make sure to serve the content of the build/html directory.