This describes how to build the documentation found in the
org.eclipse.tracecompass.*.doc.* plugins.


Your Eclipse environment first needs to have the "Mylyn Wikitext" plugin
installed. It can be found in the default Eclipse repository, under
"Collaboration".

Once that is installed, you should be able to use the manual Eclipse builder to
generate the doc : select the and individual doc plugin and choose, in the
top-menu, "Project -> Build Project".

It uses the build.xml Ant script, but it's recommended to run it from within
Eclipse, since the builder will pass some environment variables that the script
needs.

You might get a warning from build.properties because of a missing file. This
file gets generated with the rest of the doc, so once you have run these steps
(and refreshed the project if needed), the warning should disappear.
