Boost logo

Boost Users :

From: Eric Niebler (eric_at_[hidden])
Date: 2007-05-25 15:02:41


KSpam wrote:
> Finally, Doxygen
> documentation is impossible to do in code generated with BOOST_PP. This is
> the only "real" issue as far as I am concerned. I wonder if there is a way
> to get that working with the help of wave.

There is. I use wave as a Doxygen filter when generating the docs for
proto. The relevant parts of the Jamfile look like:

wave-command = [ path.native ../../../../dist/bin/wave ] ;

# Generate reference section using Doxygen
doxygen protodoc
     :
         [ glob ../../../../boost/xpressive/proto/*.hpp ]
     :
         <doxygen:param>EXTRACT_ALL=YES
         <doxygen:param>HIDE_UNDOC_MEMBERS=NO
         # Use Boost.Wave to preprocess Proto's source
         <doxygen:param>"INPUT_FILTER=\"$(wave-command) \\
                                         -S ../../../.. \\
                                         -S \\\"C:\\Program
Files\\Microsoft Visual Studio .NET 2003\\vc7\\include\\\" \\
                                         -D _WIN32 \\
                                         -D BOOST_PROTO_DOXYGEN_INVOKED \\
                                         -p 1 \""
         # This ensures that Wave is actually built before we try to
execute it
         <dependency>../../../../tools/wave/build release
     ;

xml proto
     :
         proto.qbk
     ;

boostbook standalone
     :
         proto
     :
         <xsl:param>toc.max.depth=3
         <xsl:param>toc.section.depth=3
         <xsl:param>chunk.section.depth=3
         <dependency>protodoc
     ;

This lives in CVS head at libs/xpressive/proto/doc/Jamfile.v2. Sadly,
I've had to hard-code the standard include path. I don't know any other way.

-- 
Eric Niebler
Boost Consulting
www.boost-consulting.com

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net