build.jam 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. # Copyright Rene Rivera 2011-2016
  2. # Distributed under the Boost Software License, Version 1.0.
  3. # (See accompanying file LICENSE_1_0.txt or copy at
  4. # http://www.boost.org/LICENSE_1_0.txt)
  5. using quickbook ;
  6. using boostbook ;
  7. import path ;
  8. if ! $(BOOST_ROOT)
  9. {
  10. BOOST_ROOT = [ modules.peek : BOOST_ROOT ] ;
  11. }
  12. if $(BOOST_PREDEF_ROOT)
  13. {
  14. path-constant BOOST_PREDEF_INCLUDE_ROOT : $(BOOST_PREDEF_ROOT)/include ;
  15. }
  16. else
  17. {
  18. path-constant BOOST_PREDEF_INCLUDE_ROOT : $(BOOST_ROOT) ;
  19. }
  20. local BOOST_PREDEF_HEADERS = [ path.glob-tree $(BOOST_PREDEF_INCLUDE_ROOT)/boost/predef : *.h ] ;
  21. # Intermediate targets..
  22. # Quickbok to boostbook target.
  23. xml predef
  24. :
  25. predef.qbk
  26. :
  27. <dependency>$(BOOST_PREDEF_INCLUDE_ROOT)/boost/predef.h
  28. <dependency>$(BOOST_PREDEF_HEADERS)
  29. ;
  30. explicit predef ;
  31. # HTML dependencies for standalone docs.
  32. install images : [ glob $(BOOST_ROOT)/doc/src/images/*.png ] : <location>html/images ;
  33. explicit images ;
  34. install callouts : [ glob $(BOOST_ROOT)/doc/src/images/callouts/*.png ] : <location>html/images/callouts ;
  35. explicit callouts ;
  36. install css : [ glob $(BOOST_ROOT)/doc/src/*.css ] : <location>html ;
  37. explicit css ;
  38. # Default target builds standalone docs.
  39. boostbook standalone
  40. :
  41. predef
  42. :
  43. <xsl:param>boost.root=../../../..
  44. #<xsl:param>generate.section.toc.level=3
  45. <xsl:param>chunk.section.depth=2
  46. <xsl:param>chunk.first.sections=1
  47. <dependency>images
  48. <dependency>callouts
  49. <dependency>css
  50. ;
  51. ###############################################################################
  52. ### Targets for Boost release integration.
  53. ###############################################################################
  54. # Target for Boost global documentation integration.
  55. #
  56. # For documentation that will be integrated into the global documentation
  57. # this should be an alias similar to:
  58. #
  59. # alias boostdoc : my_lib : : : <implicit-dependency>my_lib_boostbook_xml ;
  60. # explicit boostdoc ;
  61. #
  62. # For documentation that is not part of the global documentation, i.e.
  63. # it has stadalone documentation, it should be an empty alias:
  64. #
  65. # alias boostdoc ;
  66. # explicit boostdoc ;
  67. #
  68. alias boostdoc : predef ;
  69. explicit boostdoc ;
  70. # Target for Boost standalone release documentation building.
  71. #
  72. # For documentation that is not part of the global Boost documentation
  73. # this should be an alias to building the "standalone" documentation.
  74. # Usual this is just an alias to a "stadalone" target:
  75. #
  76. # alias boostrelease : stadalone ;
  77. # explicit boostrelease ;
  78. #
  79. # For documentation that is part of the global Boost documentation this
  80. # should be an empty alias:
  81. #
  82. # alias boostrelease ;
  83. # explicit boostrelease ;
  84. #
  85. alias boostrelease ;
  86. explicit boostrelease ;
  87. ###############################################################################