[cfe-dev] [LLVMdev] [libcxx] How to update libcxx.llvm.org to use Sphinx generated doc?

Dan Liew dan at su-root.co.uk
Fri Jul 31 00:01:42 PDT 2015


Hi Eric,

On 20 July 2015 at 10:41, Eric Fiselier <eric at efcs.ca> wrote:
> Hi All,
>
> I'm working on rewriting libc++'s documentation using Sphinx.
> Hopefully it will be easier to write and maintain documentation using
> restructured text and not HTML.
>
> What steps do I need to take to get libc++ a Sphinx builder and get
> the required changes made for libcxx.llvm.org?

To add a documentation builder for the buildbot infrastructure here
are the basic steps.

0. Check with Dmitri Gribenko (CC'ed) that he is happy to host another
builder for the libcxx documentation on his build slave. If not you
will have to find another buildbot slave to use when you add an entry
to ``_get_documentation_builders()`` in step 3.

1. Add support for building the docs in the CMake build for libcxx.
Use the ``add_sphinx_target()`` function [1]. This is necessary
because the buildbot relies on the CMake generated targets for
building the documentation.

2. Teach getSphinxDocsBuildFactory() in Zorg [2] to also checkout
libcxx and build the documentation. This should be controlled by
boolean argument(s) to the function which should be false by default.

3. Finally add a builder by adding an entry to
``_get_documentation_builders()`` [3] that uses your modifications in
``getSphinxDocsBuildFactory()``.

4. Ask Galina to restart the buildbot master

[1] https://github.com/llvm-mirror/llvm/blob/master/cmake/modules/AddSphinxTarget.cmake
[2] https://github.com/llvm-mirror/zorg/blob/master/zorg/buildbot/builders/SphinxDocsBuilder.py
[3] https://github.com/llvm-mirror/zorg/blob/master/buildbot/osuosl/master/config/builders.py#L1083

Hope that helps.

Thanks,
Dan.



More information about the cfe-dev mailing list