1# Spreadsort documentation Jamfile 2# Copyright (c) 2014 Steven Ross 3# 4# Distributed under the Boost Software License, 5# Version 1.0. (See accompanying file LICENSE_1_0.txt 6# or copy at http://boost.org/LICENSE_1_0.txt) 7 8# Reminder: whitespace MUST terminate variable name! 9# so spaces or newlines BEFORE ; and : and AFTER too. 10# (because : and ; are keywords!) 11 12import doxygen ; 13import quickbook ; 14import os ; # Needed to get environment variables. 15import modules ; 16 17path-constant here : . ; # convenient to refer to files in the same directory as this jamfile.v2 18path-constant boost-images : ../../../doc/src/images ; 19path-constant images_location : ./doc ; # location of SVG and PNG images referenced by Quickbook. 20# http://docbook.sourceforge.net/release/xsl/1.77.1/doc/html/img.src.path.html 21# relative to /doc ? 22 23path-constant parent : .. ; # Beman Dawes - so that inspect.exe will start in boost-root/libs/timer 24 # when run from another directory, such as boost-root/status 25using auto-index ; 26using doxygen ; # Required if you want to use Doxygen. 27using quickbook ; 28using boostbook ; 29 30if --enable-index in [ modules.peek : ARGV ] 31{ 32 ECHO "Building the Spreadsort docs with automatic index generation enabled." ; 33 using auto-index ; 34 project sort_doc : requirements 35 <auto-index>on 36 <auto-index-script>sort.idx 37 <auto-index-prefix>. 38 <auto-index-verbose>on 39 <format>html:<auto-index-internal>on 40 <format>html:<xsl:param>generate.index=0 41 <format>pdf:<auto-index-internal>on 42 <format>pdf:<xsl:param>index.on.type=1 43 <quickbook-define>enable_index ; 44} 45else 46{ 47 project sort_doc ; 48 ECHO "Building the Spreadsort docs with automatic index generation disabled. Try building with --enable-index." ; 49} 50 51doxygen autodoc 52 : 53 [ glob $(here)/../include/boost/sort.hpp ] 54 [ glob $(here)/../include/boost/sort/spreadsort/*.hpp ] 55 # [ glob $(here)/../include/boost/sort/detail/spreadsort/*.hpp ] # Hide implementation/detail for now. 56 # but could also include this and switch Boost.Sort C++ reference info to include implementation/detail or not using Doxygen macro DETAIL. 57 # See http://www.stack.nl/~dimitri/doxygen/manual/commands.html#cmdcond 58 # and http://www.stack.nl/~dimitri/doxygen/manual/config.html#cfg_enabled_sections 59 # by adding this line below with other Doxygen parameters 60 # <doxygen:param>ENABLED_SECTIONS="DETAIL" 61 # Or setting this macro value ENABLED_SECTIONS="DETAIL" in /doxygen/sort_doxyfile.txt for Standalone Doxygen documentaation. 62 # This might be useful for maintainers. 63 64 : 65 <doxygen:param>PROJECT_NAME="Sort" 66 <doxygen:param>RECURSIVE=NO 67 <doxygen:param>ENABLE_PREPROCESSING=YES 68 <doxygen:param>EXPAND_ONLY_PREDEF=YES 69 <doxygen:param>EXTRACT_ALL=NO 70 <doxygen:param>EXTRACT_PRIVATE=NO 71 <doxygen:param>HIDE_UNDOC_MEMBERS=YES 72 <doxygen:param>MACRO_EXPANSION=YES 73 <doxygen:param>SORT_MEMBER_DOCS=NO 74 <doxygen:param>SHOW_INCLUDE_FILES=NO 75 <doxygen:param>MAX_INITIALIZER_LINES=0 76 <doxygen:param>VERBATIM_HEADERS=NO 77 <doxygen:param>WARNINGS=NO # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings for undocumented members. 78 # If EXTRACT_ALL is set to YES then this flag will automatically be disabled. 79 <doxygen:param>WARN_IF_UNDOCUMENTED=NO # If WARN_IF_UNDOCUMENTED is set to YES, 80 # then doxygen will generate warnings for all undocumented members. 81 <doxygen:param>WARN_IF_DOC_ERROR=YES # If WARN_IF_DOC_ERROR is set to YES, Doxygen will generate warnings for 82 # potential errors in the documentation. 83 <doxygen:param>WARN_LOGFILE=AutoDoxywarnings.log # This may not be empty (usually not a good sign!), depending on options chosen. 84 # Much better to send message to a logfile than the default stderr. 85 # and make sure that there are no Doxygen errors or significant warnings in the log file. 86 87 #<reftitle>"Reference" # Default is "Reference" but helpful to specify library. 88 <xsl:param>"boost.doxygen.reftitle=Boost.Sort C++ Reference" 89 # See Doxygen configuration for detailed explanation of these options. 90 ; 91 92xml sort 93 : 94 sort.qbk # This is your 'root' Quickbook file (that may include other .qbk files). 95 ; 96 97boostbook standalone 98 : 99 sort 100 : 101 # http://www.sagehill.net/docbookxsl/SectionNumbering.html 102 <xsl:param>boost.root=../../../.. # modular-boost 103 <xsl:param>chapter.autolabel=0 # No Chapter numbering. 104 <xsl:param>chunk.section.depth=8 105 <xsl:param>toc.section.depth=8 # How far down sections get TOCs. 106 <xsl:param>toc.max.depth=4 # Max depth in each TOC. 107 <xsl:param>generate.section.toc.level=1 108 109 110 # PDF Options: 111 # TOC Generation: this is needed for FOP-0.9 and later: 112 <xsl:param>fop1.extensions=0 113 <xsl:param>xep.extensions=1 114 # TOC generation: this is needed for FOP 0.2, but must not be set to zero for FOP-0.9! 115 <xsl:param>fop.extensions=1 116 # No indent on body text: 117 <xsl:param>body.start.indent=0pt 118 # Margin size: 119 <xsl:param>page.margin.inner=0.5in 120 # Margin size: 121 <xsl:param>page.margin.outer=0.5in 122 # Paper type = A4 123 <xsl:param>paper.type=A4 124 # Yes, we want graphics for admonishments: 125 <xsl:param>admon.graphics=1 126 #<format>html:<xsl:param>img.src.path=$(images_location)/ 127 # Default works for html, need ./doc for PDF 128 # Set this one for PDF generation *only*: 129 # default png graphics are awful in PDF form, 130 # better use SVGs instead, if available: 131 132 <format>pdf:<xsl:param>img.src.path=$(images_location)/ 133 <format>pdf:<xsl:param>admon.graphics.extension=".svg" 134 <format>pdf:<xsl:param>admon.graphics.path=$(boost-images)/ 135 136 <dependency>autodoc # 137 138 ; 139 140install pdfinstall 141 : standalone 142 : <location>. <install-type>PDF <name>sort.pdf 143 ; 144explicit css ; 145explicit images ; 146 147# This will run the inspect tool automatically from the doc folder 148# but sadly seems to build the tool each time so is very slow. 149# Also it produces lots of output from the original docs. 150# So not very useful yet. 151 152# Run inspect tool. 153# run /boost/tools/inspect//inspect/<variant>release 154# : $(parent) -text -brief # command line 155# : # input files 156# : <dependency>/boost/filesystem//boost_filesystem 157# <test-info>always_show_run_output # requirements 158# : inspect # test name 159# ; 160 161############################################################################### 162alias boostdoc ; 163explicit boostdoc ; 164alias boostrelease : standalone ; 165explicit boostrelease ; 166