[Boost-bugs] [Boost C++ Libraries] #2914: Support for cumulative parameters in a doxyfile

Subject: [Boost-bugs] [Boost C++ Libraries] #2914: Support for cumulative parameters in a doxyfile
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-04-05 11:44:57


#2914: Support for cumulative parameters in a doxyfile
----------------------------------+-----------------------------------------
 Reporter: brian_at_[hidden] | Owner: vladimir_prus
     Type: Feature Requests | Status: new
Milestone: Boost 1.39.0 | Component: build
  Version: Boost 1.38.0 | Severity: Optimization
 Keywords: |
----------------------------------+-----------------------------------------
 It would be nice if it was possible to specify cumulative parameters as
 arguments to <doxygen:param>. Aliases for instance really require this.
 E.g.:

 {{{
 DOXYGEN_PARAMS =

     ...

     ALIASES+=defModule{1}="\"\module{\1} \defgroup group_class_\1 \1\""
     ALIASES+=module{1}="\"\ingroup group_class_\1 \\n<div><span
 class=\"module\">Module:</span>&nbsp;&nbsp;<span
 class=\"module_text\">\ref group_class_\1</span></div>\""

     ...

     ;

 doxygen doc.html
     : [ glob include/*/*.hpp ] # or whatever
     : <doxygen:param>$(DOXYGEN_PARAMS)
     ;
 }}}

 Currently the parser chokes on the += construct; it expects = always. I
 have tinkered with doxygen.jam in my local BBv2 dir, but I am very unsure
 about the correctness of what I'm doing. FWIW here is the patch for what I
 currently use...

 {{{
 Index: tools/doxygen.jam
 ===================================================================
 --- tools/doxygen.jam (revision 52181)
 +++ tools/doxygen.jam (working copy)
 @@ -197,11 +197,11 @@
      # Translate <doxygen:param> into command line flags.
      for local param in [ feature.get-values <doxygen:param> :
 $(properties) ]
      {
 - local namevalue = [ regex.match ([^=]*)=(.*) : $(param) ] ;
 - text += "$(namevalue[1]) = $(namevalue[2])" ;
 + local namevalue = [ regex.match ([^+=]*)([+]?=)(.*) : $(param) ]
 ;
 + text += "$(namevalue[1]) $(namevalue[2]) $(namevalue[3])" ;
          if $(namevalue[1]) = OUTPUT_DIRECTORY
          {
 - output-dir = "$(namevalue[2])" ;
 + output-dir = "$(namevalue[3])" ;
          }
      }
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/2914>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:59 UTC