]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/tools/build/src/tools/doxygen.jam
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / boost / tools / build / src / tools / doxygen.jam
index 1e53624311d67fb58fe67b18efad07170778448b..0358e8dc5a65d5ac2bb4c37a6b5068eb551cd944 100644 (file)
@@ -27,6 +27,7 @@ import make ;
 import modules ;
 import generators ;
 import os ;
+import param ;
 import path ;
 import print ;
 import project ;
@@ -42,7 +43,7 @@ import virtual-target ;
 
 # Use to specify extra configuration paramters. These get translated into a
 # doxyfile which configures the building of the docs.
-feature.feature doxygen:param : : free ;
+feature.feature "doxygen:param" : : free ;
 
 # Specify the "<xsl:param>boost.doxygen.header.prefix" XSLT option.
 feature.feature prefix : : free ;
@@ -63,7 +64,7 @@ feature.feature doxygen.doxproc.id : : free ;
 feature.feature doxygen.doxproc.title : : free ;
 
 # Location for images when generating XML
-feature.feature doxygen:xml-imagedir : : free ;
+feature.feature "doxygen:xml-imagedir" : : free ;
 
 # Indicates whether the entire directory should be deleted
 feature.feature doxygen.rmdir : off on : optional incidental ;
@@ -105,9 +106,9 @@ rule init ( name ? )
             : DOXYFILE : DOXYGEN_XML_MULTIFILE ;
         generators.register-standard doxygen.xml-dir-to-boostbook
             : DOXYGEN_XML_MULTIFILE : BOOSTBOOK : <doxygen.processor>doxproc ;
-        generators.register-standard doxygen.xml-to-boostbook
+        generators.register-xslt doxygen.xml-to-boostbook
             : DOXYGEN_XML : BOOSTBOOK : <doxygen.processor>xsltproc ;
-        generators.register-standard doxygen.collect
+        generators.register-xslt doxygen.collect
             : DOXYGEN_XML_MULTIFILE : DOXYGEN_XML ;
         generators.register-standard doxygen.run
             : DOXYFILE : DOXYGEN_HTML_MULTIFILE ;
@@ -252,7 +253,7 @@ rule translate-path ( path )
         {
             if $(.is-cygwin)
             {
-                match = [ MATCH ^(.):(.*) : $(path) ] ;
+                match = [ MATCH "^(.):(.*)" : $(path) ] ;
                 if $(match)
                 {
                     return /cygdrive/$(match[1])$(match[2]:T) ;
@@ -274,6 +275,7 @@ rule translate-path ( path )
     }
 }
 
+toolset.uses-features doxygen.headers-to-doxyfile : "<doxygen:param>" ;
 
 # Generates a doxygen configuration file (doxyfile) given a set of C++ sources
 # and a property list that may contain <doxygen:param> features.
@@ -287,7 +289,7 @@ rule headers-to-doxyfile ( target : sources * : properties * )
     # Translate <doxygen:param> into command line flags.
     for local param in [ feature.get-values <doxygen:param> : $(properties) ]
     {
-        local namevalue = [ MATCH ([^=]*)=(.*) : $(param) ] ;
+        local namevalue = [ MATCH "([^=]*)=(.*)" : $(param) ] ;
         if $(namevalue[1]) = OUTPUT_DIRECTORY
         {
             output-dir = [ translate-path [ utility.unquote $(namevalue[2]) ] ]
@@ -321,6 +323,7 @@ rule headers-to-doxyfile ( target : sources * : properties * )
     print.text $(text) : true ;
 }
 
+toolset.uses-features doxygen.run : <doxygen.rmdir> "<doxygen:param>" ;
 
 # Run Doxygen. See doxygen-action for a description of the strange properties of
 # this rule.
@@ -331,7 +334,7 @@ rule run ( target : source : properties * )
     if <doxygen.rmdir>on in $(properties)
     {
         local output-dir = [ path.make [ MATCH
-            <doxygen:param>OUTPUT_DIRECTORY=\"?([^\"]*) : $(properties) ] ] ;
+            "<doxygen:param>OUTPUT_DIRECTORY=\"?([^\"]*)" : $(properties) ] ] ;
         local html-dir = [ path.make [ MATCH <doxygen:param>HTML_OUTPUT=(.*) :
             $(properties) ] ] ;
         if $(output-dir) && $(html-dir) &&
@@ -377,7 +380,7 @@ rule check-boostbook ( )
             : The boostbook module is not initialized you have attempted to use
             : the 'doxygen' toolset, which requires BoostBook, but never
             : initialized BoostBook.
-            : Hint: add 'using boostbook ;' to your user-config.jam. ;
+            : "Hint:" add 'using boostbook \;' to your user-config.jam. ;
     }
 }
 
@@ -406,6 +409,7 @@ rule collect ( target : source : properties * )
         : <xsl:param>doxygen.xml.path=$(native-path) ;
 }
 
+toolset.uses-features doxygen.xml-to-boostbook : <prefix> <reftitle> ;
 
 # Translate Doxygen XML into BoostBook.
 #
@@ -619,6 +623,8 @@ rule check-tools ( target )
 rule doxygen ( target : sources + : requirements * : default-build * :
     usage-requirements * )
 {
+    param.handle-named-params
+        sources requirements default-build usage-requirements ;
     requirements += <format>none ;
     freeze-config ;
     local project = [ project.current ] ;