Jamfile.v2 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. # Copyright John Maddock 2008. Use, modification, and distribution are
  2. # subject to the Boost Software License, Version 1.0. (See accompanying
  3. # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  4. import os ;
  5. import common ;
  6. import doxygen ;
  7. using quickbook ;
  8. path-constant images_location : html ;
  9. #
  10. # Accumulators docs are dependent upon
  11. # latex dvips and ps being in your PATH.
  12. # This is true for most Unix installs, but
  13. # not on Win32, where you will need to install
  14. # MkTex and Ghostscript and add these tools
  15. # to your path.
  16. #
  17. make latex.check : : @check-latex ;
  18. actions check-latex
  19. {
  20. latex -version > latex.version
  21. }
  22. make dvips.check : : @check-dvips ;
  23. actions check-dvips
  24. {
  25. dvips -version > dvips.version
  26. }
  27. make gs.check : : @check-gs ;
  28. import os ;
  29. if [ os.name ] = "NT"
  30. {
  31. actions check-gs
  32. {
  33. gswin32c -version > gs.version
  34. }
  35. }
  36. else
  37. {
  38. actions check-gs
  39. {
  40. gs -version > gs.version
  41. }
  42. }
  43. # Use Doxygen to emit a tagfile with the definition of depends_on<>. That
  44. # tagfile will be used by Doxygen below when generating the Statistics Library
  45. # Reference. This is all so that the Doxygen-generated documentation for the
  46. # features shows the dependency relationships between them.
  47. doxygen tagfile
  48. :
  49. ../../boost/accumulators/framework/depends_on.hpp
  50. ../../boost/accumulators/framework/extractor.hpp
  51. :
  52. <doxygen:param>MACRO_EXPANSION=YES
  53. <doxygen:param>EXPAND_ONLY_PREDEF=YES
  54. <doxygen:param>GENERATE_TAGFILE=accumulators.tag
  55. <doxygen:param>"PREDEFINED=\"BOOST_ACCUMULATORS_DOXYGEN_INVOKED=1\" \\
  56. \"BOOST_PP_REPEAT_FROM_TO(a,b,c,d)=\" \\
  57. \"BOOST_PP_ENUM_PARAMS(a,b)=b ## 1, b ## 2, ...\""
  58. <dependency>latex.check
  59. <dependency>dvips.check
  60. <dependency>gs.check
  61. ;
  62. # Generate the HTML form of the stats documentation, as this causes Doxygen to
  63. # generate .png images for the LaTeX formulas embedded in the doc comments.
  64. doxygen statsdoc.html
  65. :
  66. weighted_tail_quantile.hpp
  67. :
  68. <dependency>latex.check
  69. <dependency>dvips.check
  70. <dependency>gs.check
  71. ;
  72. if [ os.name ] = NT
  73. {
  74. CP = copy /y ;
  75. MKDIR = mkdir ;
  76. FROM = \\..\\..\\..\\html\\statsdoc\\*.png ;
  77. TOHTML = .\\html\\images\\accumulators ;
  78. TOPDF = \\images\\accumulators ;
  79. }
  80. else
  81. {
  82. CP = cp ;
  83. MKDIR = mkdir -p ;
  84. FROM = /../../html/statsdoc/*.png ;
  85. TOHTML = ./html/images/accumulators ;
  86. TOPDF = /images/accumulators ;
  87. }
  88. actions copy-latex-pngs
  89. {
  90. $(MKDIR) $(TOHTML)
  91. $(MKDIR) $(<:D)$(TOPDF)
  92. $(CP) $(<:D)$(FROM) $(TOHTML)
  93. $(CP) $(<:D)$(FROM) $(<:D)$(TOPDF)
  94. echo "Stamped" > "$(<)"
  95. }
  96. # This causes the png files built above to be copied into the
  97. # html/images/accumulators directory.
  98. make statsdoclatex.tag
  99. : statsdoc.html
  100. : @copy-latex-pngs
  101. ;
  102. doxygen statsdoc
  103. :
  104. weighted_tail_quantile.hpp
  105. :
  106. <doxygen:param>EXTRACT_ALL=YES
  107. <doxygen:param>"PREDEFINED=\"BOOST_ACCUMULATORS_DOXYGEN_INVOKED=1\" \\
  108. \"BOOST_PP_REPEAT_FROM_TO(a,b,c,d)=\" \\
  109. \"BOOST_PP_REPEAT(a,b,c)=\" \\
  110. \"BOOST_PARAMETER_KEYWORD(a,b)=\\
  111. namespace a { struct b {}; } \\
  112. boost::parameter::keyword<a::b> const b;\" \\
  113. \"BOOST_PP_ENUM_PARAMS(a,b)=b ## 1, b ## 2, ...\""
  114. <doxygen:param>HIDE_UNDOC_MEMBERS=NO
  115. <doxygen:param>EXTRACT_PRIVATE=NO
  116. <doxygen:param>ENABLE_PREPROCESSING=YES
  117. <doxygen:param>MACRO_EXPANSION=YES
  118. <doxygen:param>EXPAND_ONLY_PREDEF=YES
  119. <doxygen:param>SEARCH_INCLUDES=NO
  120. <doxygen:param>TAGFILES=accumulators.tag
  121. <xsl:param>boost.doxygen.formuladir=images/accumulators/
  122. <reftitle>"Statistics Library Reference"
  123. <dependency>tagfile
  124. <dependency>statsdoclatex.tag
  125. <dependency>latex.check
  126. <dependency>dvips.check
  127. <dependency>gs.check
  128. ;
  129. xml test : test.qbk ;
  130. boostbook standalone
  131. :
  132. test
  133. :
  134. <dependency>statsdoc
  135. # HTML options first:
  136. #======================================================================
  137. <xsl:param>toc.max.depth=2
  138. <xsl:param>toc.section.depth=2
  139. <xsl:param>chunk.section.depth=1
  140. <xsl:param>boost.root=../../..
  141. <format>html:<xsl:param>callout.graphics.path=../../src/images/callouts/
  142. <xsl:param>boost.libraries=../../../libs/libraries.htm
  143. <xsl:param>navig.graphics=1
  144. <xsl:param>html.stylesheet=../../../doc/html/boostbook.css
  145. # PDF Options:
  146. #======================================================================
  147. # PDF Options:
  148. # TOC Generation: only one of these should be set:
  149. <format>pdf:<xsl:param>fop.extensions=0
  150. <format>pdf:<xsl:param>fop1.extensions=0
  151. <format>pdf:<xsl:param>xep.extensions=1
  152. # No indent on body text:
  153. <format>pdf:<xsl:param>body.start.indent=0pt
  154. # Margin size:
  155. <format>pdf:<xsl:param>page.margin.inner=0.5in
  156. <format>pdf:<xsl:param>page.margin.outer=0.5in
  157. # Paper type = A4
  158. <format>pdf:<xsl:param>paper.type=A4
  159. # Yes, we want graphics for admonishments:
  160. <xsl:param>admon.graphics=1
  161. # Set this one for PDF generation *only*:
  162. # default pnd graphics are awful in PDF form,
  163. # better use SVG's instead:
  164. <format>pdf:<xsl:param>admon.graphics.extension=".svg"
  165. <format>pdf:<xsl:param>img.src.path=$(images_location)/
  166. <format>pdf:<xsl:param>admon.graphics.path=$(images_location)/../../src/images/
  167. <format>pdf:<xsl:param>callout.graphics.path=$(images_location)/../../src/images/callouts/
  168. <format>pdf:<xsl:param>draft.mode="no"
  169. ;
  170. install pdf-install : standalone : <location>. <install-type>PDF ;
粤ICP备19079148号