Boost logo

Boost :

Subject: Re: [boost] doxygen doc / STL container unit test
From: Joachim Faulhaber (afojgo_at_[hidden])
Date: 2009-09-11 10:52:46


2009/9/11 Stefan Strasser <strasser_at_[hidden]>:
> I have two questions regarding boost library development:
>
> 1.
> this page:
> http://www.boost.org/doc/libs/1_35_0/doc/html/boostbook/getting/started.html
>
> explains how to set up the boost documentation system and write BoostBooks.
> what I find missing is how to generate the typical boost class synposis with
> doxygen. I also can't find doxygen configuration files or anything of that
> sort in the boost tree.
> how do you go about integrating automatically generated documentation into a
> BoostBook?

I had the same problem when I started my quickbook docs a couple of
months ago. May be the documentation is incomplete at this point
or a few links could be helpful to find the docs about doxygen integration,
if they already exist elsewhere.

The good thing about boost is ... it's open source ;-)
So I browsed the doc directories of other recent quickbook
documented libraries and copied their code:

You have to code the required information in two files for a library
somelib: Jamfile.v2 and somelib.qbk. These files should both
be located in
<boost_root>/libs/somelib/doc

# ----------------------------------------------------------
# Jamfile.v2
import doxygen ;
import quickbook ;

# ----------------------------------------------------------
# Doxygen

doxygen somelibdoc
    :
        [ glob ../../../boost/somelib/*.hpp ]
    :
        <doxygen:param>EXTRACT_ALL=YES
        <doxygen:param>HIDE_UNDOC_MEMBERS=NO
        <doxygen:param>EXTRACT_PRIVATE=NO
        <doxygen:param>ENABLE_PREPROCESSING=YES
        <doxygen:param>MACRO_EXPANSION=NO
        <doxygen:param>EXPAND_ONLY_PREDEF=YES
        <doxygen:param>SEARCH_INCLUDES=NO
        <reftitle>"My fancy new Library Reference"
    ;
# ----------------------------------------------------------
# Quickbook

import quickbook ;

xml somelib
    :
        somelib.qbk
    ;

boostbook standalone
    :
        somelib
    :
        <xsl:param>boost.root=../../../..
        <xsl:param>boost.libraries=../../../libraries.htm
        <xsl:param>toc.max.depth=2
        <xsl:param>toc.section.depth=2
        <xsl:param>chunk.section.depth=2
                <dependency>somelibdoc
    ;
# ----------------------------------------------------------

In the file that is your library's quickbook root: somelib.qbk
you have to include the doxygen generated
reference to your docs by

[xinclude somelibdoc.xml]

HTH
Joachim


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk