diff --git a/SConstruct b/SConstruct
index 1e60db7a..ebd1c40c 100644
--- a/SConstruct
+++ b/SConstruct
@@ -36,7 +36,7 @@ vars = Variables('bin.SCons/config.py', ARGUMENTS)
config.add_options(vars)
arch = ARGUMENTS.get('arch', platform.machine())
env = Environment(toolpath=['config/tools'],
- tools=['default', 'libs', 'tests'],
+ tools=['default', 'libs', 'tests', 'doc'],
variables=vars,
TARGET_ARCH=arch)
@@ -80,3 +80,7 @@ for e in config.variants(env):
test_env.BoostUseLib('python')
e.SConscript('test/SConscript', variant_dir=variant_dir + '/test',
exports = { 'env' : test_env })
+
+if 'doc' in COMMAND_LINE_TARGETS:
+ env.SConscript('doc/SConscript', variant_dir='bin.SCons/doc',
+ exports = { 'env' : e.Clone(BOOST_LIB = 'python') })
diff --git a/config/__init__.py b/config/__init__.py
index 192e33f6..9b4746c6 100644
--- a/config/__init__.py
+++ b/config/__init__.py
@@ -25,6 +25,7 @@ def add_options(vars):
vars.Add('LIBS', converter=lambda v:v.split())
vars.Add('PYTHON')
vars.Add('PYTHONLIBS')
+ vars.Add('boostbook_prefix')
ui.add_variable(vars, ("arch", "target architeture", platform.machine()))
ui.add_variable(vars, ("toolchain", "toolchain to use", 'gcc'))
diff --git a/config/boost.py b/config/boost.py
index 7548bf89..a7cde93e 100644
--- a/config/boost.py
+++ b/config/boost.py
@@ -16,7 +16,10 @@ def add_options(vars):
help="prefix for Boost libraries; should have 'include' and 'lib' subdirectories, 'boost' and 'stage\\lib' subdirectories on Windows")
ui.add_option("--boost-include", dest="boost_include", type="string", nargs=1, action="store",
metavar="DIR", help="location of Boost header files")
-
+ ui.add_option("--boostbook-prefix", dest="boostbook_prefix", type="string",
+ nargs=1, action="store",
+ metavar="DIR", default="/usr/share/boostbook",
+ help="prefix for BoostBook stylesheets")
def check(context):
@@ -26,6 +29,7 @@ def check(context):
boost_prefix = context.env.GetOption('boost_prefix')
boost_include = context.env.GetOption('boost_include')
+ boostbook_prefix = context.env.GetOption('boostbook_prefix')
incpath=None
if boost_include:
incpath=boost_include
@@ -36,5 +40,6 @@ def check(context):
if not context.TryCompile(boost_source_file, '.cpp'):
context.Result(0)
return False
+ context.env.AppendUnique(boostbook_prefix=boostbook_prefix)
context.Result(1)
return True
diff --git a/config/tools/doc.py b/config/tools/doc.py
new file mode 100644
index 00000000..e96f089a
--- /dev/null
+++ b/config/tools/doc.py
@@ -0,0 +1,70 @@
+#
+# Copyright (c) 2016 Stefan Seefeld
+# All rights reserved.
+#
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or copy at
+# http://www.boost.org/LICENSE_1_0.txt)
+
+from SCons.Script import AddOption, Flatten
+from SCons.Script import Builder
+from SCons.Action import Action
+from SCons.Defaults import Copy
+from SCons.Script import *
+from subprocess import check_output, STDOUT, CalledProcessError
+import sys
+import os
+
+def QuickBook(env, target, source, dependencies=[]):
+ """Compile a QuickBook document to BoostBook."""
+
+ for d in dependencies:
+ env.Depends(target, d)
+ env.Command(target, source, 'quickbook --input-file=$SOURCE --output-file=$TARGET')
+
+
+def BoostBook(env, target, source, resources=[], args=[]):
+ """Compile a BoostBook document to DocBook."""
+
+ bb_prefix = env.GetOption('boostbook_prefix')
+ stylesheet = bb_prefix + '/xsl/docbook.xsl'
+ env.Command(target, source,
+ 'xsltproc {} -o $TARGET {} $SOURCE'.format(' '.join(args), stylesheet))
+
+
+def BoostHTML(env, target, source, resources=[], args=[]):
+ """Compile a DocBook document to HTML."""
+
+ bb_prefix = env.GetOption('boostbook_prefix')
+ stylesheet = bb_prefix + '/xsl/html.xsl'
+ env.Command(target, source,
+ 'xsltproc {} -o $TARGET/ {} $SOURCE'.format(' '.join(args), stylesheet))
+ prefix=Dir('.').path
+ for r in resources:
+ r = File(r).path[len(prefix)+1:]
+ env.Depends(target, target + r)
+ env.Command(target + r, r, Copy('$TARGET', '$SOURCE'))
+
+
+def BoostRST(env, target, source, resources=[]):
+ """Compile an RST document to HTML."""
+
+ prefix=Dir('.').path
+ for r in resources:
+ r = File(r).path[len(prefix)+1:]
+ env.Depends('html/' + r, r)
+ env.Command('html/' + r, r, Copy('$TARGET', '$SOURCE'))
+ env.Command(target, source,
+ 'rst2html --link-stylesheet --traceback --trim-footnote-reference-space --footnote-references=superscript --stylesheet=rst.css $SOURCE $TARGET')
+
+
+def exists(env):
+ return True
+
+
+def generate(env):
+
+ env.AddMethod(QuickBook)
+ env.AddMethod(BoostBook)
+ env.AddMethod(BoostHTML)
+ env.AddMethod(BoostRST)
diff --git a/doc/SConscript b/doc/SConscript
new file mode 100644
index 00000000..e22b3fc2
--- /dev/null
+++ b/doc/SConscript
@@ -0,0 +1,49 @@
+# -*- python -*-
+#
+# Copyright (c) 2016 Stefan Seefeld
+# All rights reserved.
+#
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or copy at
+# http://www.boost.org/LICENSE_1_0.txt)
+
+Import('env')
+
+env.QuickBook('python.bbk', 'python.qbk',
+ ['building.qbk',
+ 'configuration.qbk',
+ 'support.qbk',
+ 'faq.qbk',
+ 'glossary.qbk'])
+
+env.QuickBook('tutorial.bbk', 'tutorial.qbk')
+env.QuickBook('reference.bbk', 'reference.qbk',
+ Glob('reference/*.qbk'))
+
+
+env.BoostBook('python.dbk', 'python.bbk')
+env.BoostBook('tutorial.dbk', 'tutorial.bbk')
+env.BoostBook('reference.dbk', 'reference.bbk')
+
+images = Glob('images/*.*') + Glob('images/callouts/*.*')
+
+env.BoostHTML('html/', 'python.dbk',
+ resources=['boostbook.css'] + images,
+ args=['--stringparam', 'generate.toc', '"library nop; chapter toc; section toc;"',
+ '--stringparam', 'html.stylesheet', 'boostbook.css',
+ '--stringparam', 'boost.image.src', 'images/bpl.png',
+ '--stringparam', 'boost.graphics.root', 'images/',
+ '--stringparam', 'boost.defaults', 'none',
+ '--param', 'toc.max.depth', '3',
+ '--param', 'toc.section.depth' ,'2',
+ '--param', 'chunk.section.depth', '1'])
+env.BoostHTML('html/tutorial/', 'tutorial.dbk',
+ args=['--stringparam', 'html.stylesheet', '../boostbook.css',
+ '--stringparam', 'boost.image.src', '../images/bpl.png',
+ '--stringparam', 'boost.graphics.root', '../images/'])
+env.BoostHTML('html/reference/', 'reference.dbk',
+ args=['--stringparam', 'html.stylesheet', '../boostbook.css',
+ '--stringparam', 'boost.image.src', '../images/bpl.png',
+ '--stringparam', 'boost.graphics.root', '../images/'])
+
+env.BoostRST('html/article.html', 'article.rst', resources=['rst.css'])
diff --git a/doc/boostbook.css b/doc/boostbook.css
new file mode 100644
index 00000000..28f89359
--- /dev/null
+++ b/doc/boostbook.css
@@ -0,0 +1,716 @@
+
+/*=============================================================================
+Copyright (c) 2004 Joel de Guzman
+http://spirit.sourceforge.net/
+
+Copyright 2013 Niall Douglas additions for colors and alignment.
+Copyright 2013 Paul A. Bristow additions for more colors and alignments.
+
+Distributed under the Boost Software License, Version 1.0. (See accompany-
+ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================*/
+
+/*=============================================================================
+Body defaults
+=============================================================================*/
+
+ body
+ {
+ margin: 1em;
+ font-family: sans-serif;
+ }
+
+/*=============================================================================
+Paragraphs
+=============================================================================*/
+
+ p
+ {
+ text-align: left;
+ font-size: 10pt;
+ line-height: 1.15;
+ }
+
+/*=============================================================================
+Program listings
+=============================================================================*/
+
+ /* Code on paragraphs */
+ p tt.computeroutput
+ {
+ font-size: 9pt;
+ }
+
+ pre.synopsis
+ {
+ font-size: 9pt;
+ margin: 1pc 4% 0pc 4%;
+ padding: 0.5pc 0.5pc 0.5pc 0.5pc;
+ }
+
+ .programlisting,
+ .screen
+ {
+ font-size: 9pt;
+ display: block;
+ margin: 1pc 4% 0pc 4%;
+ padding: 0.5pc 0.5pc 0.5pc 0.5pc;
+ }
+
+ /* Program listings in tables don't get borders */
+ td .programlisting,
+ td .screen
+ {
+ margin: 0pc 0pc 0pc 0pc;
+ padding: 0pc 0pc 0pc 0pc;
+ }
+
+/*=============================================================================
+Headings
+=============================================================================*/
+
+ h1, h2, h3, h4, h5, h6
+ {
+ text-align: left;
+ margin: 1em 0em 0.5em 0em;
+ font-weight: bold;
+ }
+
+ h1 { font-size: 140%; }
+ h2 { font-weight: bold; font-size: 140%; }
+ h3 { font-weight: bold; font-size: 130%; }
+ h4 { font-weight: bold; font-size: 120%; }
+ h5 { font-weight: normal; font-style: italic; font-size: 110%; }
+ h6 { font-weight: normal; font-style: italic; font-size: 100%; }
+
+ /* Top page titles */
+ title,
+ h1.title,
+ h2.title
+ h3.title,
+ h4.title,
+ h5.title,
+ h6.title,
+ .refentrytitle
+ {
+ font-weight: bold;
+ margin-bottom: 1pc;
+ }
+
+ h1.title { font-size: 140% }
+ h2.title { font-size: 140% }
+ h3.title { font-size: 130% }
+ h4.title { font-size: 120% }
+ h5.title { font-size: 110% }
+ h6.title { font-size: 100% }
+
+ .section h1
+ {
+ margin: 0em 0em 0.5em 0em;
+ font-size: 140%;
+ }
+
+ .section h2 { font-size: 140% }
+ .section h3 { font-size: 130% }
+ .section h4 { font-size: 120% }
+ .section h5 { font-size: 110% }
+ .section h6 { font-size: 100% }
+
+ /* Code on titles */
+ h1 tt.computeroutput { font-size: 140% }
+ h2 tt.computeroutput { font-size: 140% }
+ h3 tt.computeroutput { font-size: 130% }
+ h4 tt.computeroutput { font-size: 130% }
+ h5 tt.computeroutput { font-size: 130% }
+ h6 tt.computeroutput { font-size: 130% }
+
+
+/*=============================================================================
+Author
+=============================================================================*/
+
+ h3.author
+ {
+ font-size: 100%
+ }
+
+/*=============================================================================
+Lists
+=============================================================================*/
+
+ li
+ {
+ font-size: 10pt;
+ line-height: 1.3;
+ }
+
+ /* Unordered lists */
+ ul
+ {
+ text-align: left;
+ }
+
+ /* Ordered lists */
+ ol
+ {
+ text-align: left;
+ }
+
+/*=============================================================================
+Links
+=============================================================================*/
+
+ a
+ {
+ text-decoration: none; /* no underline */
+ }
+
+ a:hover
+ {
+ text-decoration: underline;
+ }
+
+/*=============================================================================
+Spirit style navigation
+=============================================================================*/
+
+ .spirit-nav
+ {
+ text-align: right;
+ }
+
+ .spirit-nav a
+ {
+ color: white;
+ padding-left: 0.5em;
+ }
+
+ .spirit-nav img
+ {
+ border-width: 0px;
+ }
+
+/*=============================================================================
+Copyright footer
+=============================================================================*/
+ .copyright-footer
+ {
+ text-align: right;
+ font-size: 70%;
+ }
+
+ .copyright-footer p
+ {
+ text-align: right;
+ font-size: 80%;
+ }
+
+/*=============================================================================
+Table of contents
+=============================================================================*/
+
+ div.toc
+ {
+ margin: 1pc 4% 0pc 4%;
+ padding: 0.1pc 1pc 0.1pc 1pc;
+ font-size: 80%;
+ line-height: 1.15;
+ }
+
+ .boost-toc
+ {
+ float: right;
+ padding: 0.5pc;
+ }
+
+ /* Code on toc */
+ .toc .computeroutput { font-size: 120% }
+
+ /* No margin on nested menus */
+
+ .toc dl dl { margin: 0; }
+
+/*=============================================================================
+Tables
+=============================================================================*/
+
+ .table-title,
+ div.table p.title
+ {
+ margin-left: 4%;
+ padding-right: 0.5em;
+ padding-left: 0.5em;
+ }
+
+ .informaltable table,
+ .table table
+ {
+ width: 92%;
+ margin-left: 4%;
+ margin-right: 4%;
+ }
+
+ div.informaltable table,
+ div.table table
+ {
+ padding: 4px;
+ }
+
+ /* Table Cells */
+ div.informaltable table tr td,
+ div.table table tr td
+ {
+ padding: 0.5em;
+ text-align: left;
+ font-size: 9pt;
+ }
+
+ div.informaltable table tr th,
+ div.table table tr th
+ {
+ padding: 0.5em 0.5em 0.5em 0.5em;
+ border: 1pt solid white;
+ font-size: 80%;
+ }
+
+ table.simplelist
+ {
+ width: auto !important;
+ margin: 0em !important;
+ padding: 0em !important;
+ border: none !important;
+ }
+ table.simplelist td
+ {
+ margin: 0em !important;
+ padding: 0em !important;
+ text-align: left !important;
+ font-size: 9pt !important;
+ border: none !important;
+ }
+
+/*=============================================================================
+Suppress margins in tables
+=============================================================================*/
+
+ table th > *:first-child,
+ table td > *:first-child
+ {
+ margin-top: 0;
+ }
+
+ table th > *:last-child,
+ table td > *:last-child
+ {
+ margin-bottom: 0;
+ }
+
+/*=============================================================================
+Blurbs
+=============================================================================*/
+
+ div.note,
+ div.tip,
+ div.important,
+ div.caution,
+ div.warning,
+ p.blurb
+ {
+ font-size: 9pt; /* A little bit smaller than the main text */
+ line-height: 1.2;
+ display: block;
+ margin: 1pc 4% 0pc 4%;
+ padding: 0.5pc 0.5pc 0.5pc 0.5pc;
+ }
+
+ p.blurb img
+ {
+ padding: 1pt;
+ }
+
+/*=============================================================================
+Variable Lists
+=============================================================================*/
+
+ div.variablelist
+ {
+ margin: 1em 0;
+ }
+
+ /* Make the terms in definition lists bold */
+ div.variablelist dl dt,
+ span.term
+ {
+ font-weight: bold;
+ font-size: 10pt;
+ }
+
+ div.variablelist table tbody tr td
+ {
+ text-align: left;
+ vertical-align: top;
+ padding: 0em 2em 0em 0em;
+ font-size: 10pt;
+ margin: 0em 0em 0.5em 0em;
+ line-height: 1;
+ }
+
+ div.variablelist dl dt
+ {
+ margin-bottom: 0.2em;
+ }
+
+ div.variablelist dl dd
+ {
+ margin: 0em 0em 0.5em 2em;
+ font-size: 10pt;
+ }
+
+ div.variablelist table tbody tr td p,
+ div.variablelist dl dd p
+ {
+ margin: 0em 0em 0.5em 0em;
+ line-height: 1;
+ }
+
+/*=============================================================================
+Misc
+=============================================================================*/
+
+ /* Title of books and articles in bibliographies */
+ span.title
+ {
+ font-style: italic;
+ }
+
+ span.underline
+ {
+ text-decoration: underline;
+ }
+
+ span.strikethrough
+ {
+ text-decoration: line-through;
+ }
+
+ /* Copyright, Legal Notice */
+ div div.legalnotice p
+ {
+ text-align: left
+ }
+
+/*=============================================================================
+Colors
+=============================================================================*/
+
+ @media screen
+ {
+ body {
+ background-color: #FFFFFF;
+ color: #000000;
+ }
+
+ /* Syntax Highlighting */
+ .keyword { color: #0000AA; }
+ .identifier { color: #000000; }
+ .special { color: #707070; }
+ .preprocessor { color: #402080; }
+ .char { color: teal; }
+ .comment { color: #800000; }
+ .string { color: teal; }
+ .number { color: teal; }
+ .white_bkd { background-color: #FFFFFF; }
+ .dk_grey_bkd { background-color: #999999; }
+
+ /* Links */
+ a, a .keyword, a .identifier, a .special, a .preprocessor
+ a .char, a .comment, a .string, a .number
+ {
+ color: #005a9c;
+ }
+
+ a:visited, a:visited .keyword, a:visited .identifier,
+ a:visited .special, a:visited .preprocessor a:visited .char,
+ a:visited .comment, a:visited .string, a:visited .number
+ {
+ color: #9c5a9c;
+ }
+
+ h1 a, h2 a, h3 a, h4 a, h5 a, h6 a,
+ h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover,
+ h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited
+ {
+ text-decoration: none; /* no underline */
+ color: #000000;
+ }
+
+ /* Copyright, Legal Notice */
+ .copyright
+ {
+ color: #666666;
+ font-size: small;
+ }
+
+ div div.legalnotice p
+ {
+ color: #666666;
+ }
+
+ /* Program listing */
+ pre.synopsis
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ .programlisting,
+ .screen
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ td .programlisting,
+ td .screen
+ {
+ border: 0px solid #DCDCDC;
+ }
+
+ /* Blurbs */
+ div.note,
+ div.tip,
+ div.important,
+ div.caution,
+ div.warning,
+ p.blurb
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ /* Table of contents */
+ div.toc
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ /* Tables */
+ div.informaltable table tr td,
+ div.table table tr td
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ div.informaltable table tr th,
+ div.table table tr th
+ {
+ background-color: #F0F0F0;
+ border: 1px solid #DCDCDC;
+ }
+
+ .copyright-footer
+ {
+ color: #8F8F8F;
+ }
+
+ /* Misc */
+ span.highlight
+ {
+ color: #00A000;
+ }
+ }
+
+ @media print
+ {
+ /* Links */
+ a
+ {
+ color: black;
+ }
+
+ a:visited
+ {
+ color: black;
+ }
+
+ .spirit-nav
+ {
+ display: none;
+ }
+
+ /* Program listing */
+ pre.synopsis
+ {
+ border: 1px solid gray;
+ }
+
+ .programlisting,
+ .screen
+ {
+ border: 1px solid gray;
+ }
+
+ td .programlisting,
+ td .screen
+ {
+ border: 0px solid #DCDCDC;
+ }
+
+ /* Table of contents */
+ div.toc
+ {
+ border: 1px solid gray;
+ }
+
+ .informaltable table,
+ .table table
+ {
+ border: 1px solid gray;
+ border-collapse: collapse;
+ }
+
+ /* Tables */
+ div.informaltable table tr td,
+ div.table table tr td
+ {
+ border: 1px solid gray;
+ }
+
+ div.informaltable table tr th,
+ div.table table tr th
+ {
+ border: 1px solid gray;
+ }
+
+ table.simplelist tr td
+ {
+ border: none !important;
+ }
+
+ /* Misc */
+ span.highlight
+ {
+ font-weight: bold;
+ }
+ }
+
+/*=============================================================================
+Images
+=============================================================================*/
+
+ span.inlinemediaobject img
+ {
+ vertical-align: middle;
+ }
+
+/*==============================================================================
+Super and Subscript: style so that line spacing isn't effected, see
+http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=1&postId=5341
+==============================================================================*/
+
+sup,
+sub {
+height: 0;
+line-height: 1;
+vertical-align: baseline;
+position: relative;
+
+}
+
+/* For internet explorer: */
+
+* html sup,
+* html sub {
+vertical-align: bottom;
+}
+
+sup {
+bottom: 1ex;
+}
+
+sub {
+top: .5ex;
+}
+
+/*==============================================================================
+Indexes: pretty much the same as the TOC.
+==============================================================================*/
+
+ .index
+ {
+ font-size: 80%;
+ padding-top: 0px;
+ padding-bottom: 0px;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ margin-left: 0px;
+ }
+
+ .index ul
+ {
+ padding-left: 3em;
+ }
+
+ .index p
+ {
+ padding: 2px;
+ margin: 2px;
+ }
+
+ .index-entry-level-0
+ {
+ font-weight: bold;
+ }
+
+ .index em
+ {
+ font-weight: bold;
+ }
+
+
+/*==============================================================================
+Alignment and coloring use 'role' feature, available from Quickbook 1.6 up.
+Added from Niall Douglas for role color and alignment.
+http://article.gmane.org/gmane.comp.lib.boost.devel/243318
+*/
+
+/* Add text alignment (see http://www.w3schools.com/cssref/pr_text_text-align.asp) */
+span.aligncenter
+{
+ display: inline-block; width: 100%; text-align: center;
+}
+span.alignright
+{
+ display: inline-block; width: 100%; text-align: right;
+}
+/* alignleft is the default. */
+span.alignleft
+{
+ display: inline-block; width: 100%; text-align: left;
+}
+
+/* alignjustify stretches the word spacing so that each line has equal width
+within a chosen fraction of page width (here arbitrarily 20%).
+*Not* useful inside table items as the column width remains the total string width.
+Nor very useful, except to temporarily restrict the width.
+*/
+span.alignjustify
+{
+ display: inline-block; width: 20%; text-align: justify;
+}
+
+/* Text colors.
+Names at http://www.w3.org/TR/2002/WD-css3-color-20020219/ 4.3. X11 color keywords.
+Quickbook Usage: [role red Some red text]
+
+*/
+span.red { inline-block; color: red; }
+span.green { color: green; }
+span.lime { color: #00FF00; }
+span.blue { color: blue; }
+span.navy { color: navy; }
+span.yellow { color: yellow; }
+span.magenta { color: magenta; }
+span.indigo { color: #4B0082; }
+span.cyan { color: cyan; }
+span.purple { color: purple; }
+span.gold { color: gold; }
+span.silver { color: silver; } /* lighter gray */
+span.gray { color: #808080; } /* light gray */
diff --git a/doc/images/alert.png b/doc/images/alert.png
new file mode 100644
index 00000000..b4645bc7
Binary files /dev/null and b/doc/images/alert.png differ
diff --git a/doc/images/blank.png b/doc/images/blank.png
new file mode 100644
index 00000000..764bf4f0
Binary files /dev/null and b/doc/images/blank.png differ
diff --git a/doc/images/boost.png b/doc/images/boost.png
new file mode 100644
index 00000000..b4d51fcd
Binary files /dev/null and b/doc/images/boost.png differ
diff --git a/doc/images/bpl.png b/doc/images/bpl.png
new file mode 100644
index 00000000..c2d8c69e
Binary files /dev/null and b/doc/images/bpl.png differ
diff --git a/doc/images/bpl.svg b/doc/images/bpl.svg
new file mode 100644
index 00000000..9a72d2c4
--- /dev/null
+++ b/doc/images/bpl.svg
@@ -0,0 +1,224 @@
+
+
\ No newline at end of file
diff --git a/doc/images/callouts/1.png b/doc/images/callouts/1.png
new file mode 100644
index 00000000..6003ad3a
Binary files /dev/null and b/doc/images/callouts/1.png differ
diff --git a/doc/images/callouts/1.svg b/doc/images/callouts/1.svg
new file mode 100644
index 00000000..e2e87dc5
--- /dev/null
+++ b/doc/images/callouts/1.svg
@@ -0,0 +1,15 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/10.png b/doc/images/callouts/10.png
new file mode 100644
index 00000000..0426f516
Binary files /dev/null and b/doc/images/callouts/10.png differ
diff --git a/doc/images/callouts/10.svg b/doc/images/callouts/10.svg
new file mode 100644
index 00000000..4740f587
--- /dev/null
+++ b/doc/images/callouts/10.svg
@@ -0,0 +1,18 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/11.png b/doc/images/callouts/11.png
new file mode 100644
index 00000000..821afc4f
Binary files /dev/null and b/doc/images/callouts/11.png differ
diff --git a/doc/images/callouts/11.svg b/doc/images/callouts/11.svg
new file mode 100644
index 00000000..09a0b2cf
--- /dev/null
+++ b/doc/images/callouts/11.svg
@@ -0,0 +1,16 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/12.png b/doc/images/callouts/12.png
new file mode 100644
index 00000000..7cec7272
Binary files /dev/null and b/doc/images/callouts/12.png differ
diff --git a/doc/images/callouts/12.svg b/doc/images/callouts/12.svg
new file mode 100644
index 00000000..9794044c
--- /dev/null
+++ b/doc/images/callouts/12.svg
@@ -0,0 +1,18 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/13.png b/doc/images/callouts/13.png
new file mode 100644
index 00000000..5b41e02a
Binary files /dev/null and b/doc/images/callouts/13.png differ
diff --git a/doc/images/callouts/13.svg b/doc/images/callouts/13.svg
new file mode 100644
index 00000000..64268bb4
--- /dev/null
+++ b/doc/images/callouts/13.svg
@@ -0,0 +1,20 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/14.png b/doc/images/callouts/14.png
new file mode 100644
index 00000000..de5bdbd3
Binary files /dev/null and b/doc/images/callouts/14.png differ
diff --git a/doc/images/callouts/14.svg b/doc/images/callouts/14.svg
new file mode 100644
index 00000000..469aa974
--- /dev/null
+++ b/doc/images/callouts/14.svg
@@ -0,0 +1,17 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/15.png b/doc/images/callouts/15.png
new file mode 100644
index 00000000..3fd6ac38
Binary files /dev/null and b/doc/images/callouts/15.png differ
diff --git a/doc/images/callouts/15.svg b/doc/images/callouts/15.svg
new file mode 100644
index 00000000..8202233e
--- /dev/null
+++ b/doc/images/callouts/15.svg
@@ -0,0 +1,19 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/16.svg b/doc/images/callouts/16.svg
new file mode 100644
index 00000000..01d6bf81
--- /dev/null
+++ b/doc/images/callouts/16.svg
@@ -0,0 +1,20 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/17.svg b/doc/images/callouts/17.svg
new file mode 100644
index 00000000..0a04c556
--- /dev/null
+++ b/doc/images/callouts/17.svg
@@ -0,0 +1,17 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/18.svg b/doc/images/callouts/18.svg
new file mode 100644
index 00000000..1cb891b3
--- /dev/null
+++ b/doc/images/callouts/18.svg
@@ -0,0 +1,21 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/19.svg b/doc/images/callouts/19.svg
new file mode 100644
index 00000000..e6fbb179
--- /dev/null
+++ b/doc/images/callouts/19.svg
@@ -0,0 +1,20 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/2.png b/doc/images/callouts/2.png
new file mode 100644
index 00000000..f7c15788
Binary files /dev/null and b/doc/images/callouts/2.png differ
diff --git a/doc/images/callouts/2.svg b/doc/images/callouts/2.svg
new file mode 100644
index 00000000..07d03395
--- /dev/null
+++ b/doc/images/callouts/2.svg
@@ -0,0 +1,17 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/20.svg b/doc/images/callouts/20.svg
new file mode 100644
index 00000000..ccbfd403
--- /dev/null
+++ b/doc/images/callouts/20.svg
@@ -0,0 +1,20 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/21.svg b/doc/images/callouts/21.svg
new file mode 100644
index 00000000..93ec53fd
--- /dev/null
+++ b/doc/images/callouts/21.svg
@@ -0,0 +1,18 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/22.svg b/doc/images/callouts/22.svg
new file mode 100644
index 00000000..f48c5f3f
--- /dev/null
+++ b/doc/images/callouts/22.svg
@@ -0,0 +1,20 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/23.svg b/doc/images/callouts/23.svg
new file mode 100644
index 00000000..66242129
--- /dev/null
+++ b/doc/images/callouts/23.svg
@@ -0,0 +1,22 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/24.svg b/doc/images/callouts/24.svg
new file mode 100644
index 00000000..a3d55253
--- /dev/null
+++ b/doc/images/callouts/24.svg
@@ -0,0 +1,19 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/25.svg b/doc/images/callouts/25.svg
new file mode 100644
index 00000000..56614a97
--- /dev/null
+++ b/doc/images/callouts/25.svg
@@ -0,0 +1,21 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/26.svg b/doc/images/callouts/26.svg
new file mode 100644
index 00000000..56faeaca
--- /dev/null
+++ b/doc/images/callouts/26.svg
@@ -0,0 +1,22 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/27.svg b/doc/images/callouts/27.svg
new file mode 100644
index 00000000..a75c8121
--- /dev/null
+++ b/doc/images/callouts/27.svg
@@ -0,0 +1,19 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/28.svg b/doc/images/callouts/28.svg
new file mode 100644
index 00000000..7f8cf1a3
--- /dev/null
+++ b/doc/images/callouts/28.svg
@@ -0,0 +1,23 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/29.svg b/doc/images/callouts/29.svg
new file mode 100644
index 00000000..cb63adf1
--- /dev/null
+++ b/doc/images/callouts/29.svg
@@ -0,0 +1,22 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/3.png b/doc/images/callouts/3.png
new file mode 100644
index 00000000..3ff0a939
Binary files /dev/null and b/doc/images/callouts/3.png differ
diff --git a/doc/images/callouts/3.svg b/doc/images/callouts/3.svg
new file mode 100644
index 00000000..918be806
--- /dev/null
+++ b/doc/images/callouts/3.svg
@@ -0,0 +1,19 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/30.svg b/doc/images/callouts/30.svg
new file mode 100644
index 00000000..dc43ba1e
--- /dev/null
+++ b/doc/images/callouts/30.svg
@@ -0,0 +1,22 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/4.png b/doc/images/callouts/4.png
new file mode 100644
index 00000000..6aa29fc0
Binary files /dev/null and b/doc/images/callouts/4.png differ
diff --git a/doc/images/callouts/4.svg b/doc/images/callouts/4.svg
new file mode 100644
index 00000000..8eb6a53b
--- /dev/null
+++ b/doc/images/callouts/4.svg
@@ -0,0 +1,16 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/5.png b/doc/images/callouts/5.png
new file mode 100644
index 00000000..36e78586
Binary files /dev/null and b/doc/images/callouts/5.png differ
diff --git a/doc/images/callouts/5.svg b/doc/images/callouts/5.svg
new file mode 100644
index 00000000..ca7a9f22
--- /dev/null
+++ b/doc/images/callouts/5.svg
@@ -0,0 +1,18 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/6.png b/doc/images/callouts/6.png
new file mode 100644
index 00000000..c943676b
Binary files /dev/null and b/doc/images/callouts/6.png differ
diff --git a/doc/images/callouts/6.svg b/doc/images/callouts/6.svg
new file mode 100644
index 00000000..783a0b9d
--- /dev/null
+++ b/doc/images/callouts/6.svg
@@ -0,0 +1,19 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/7.png b/doc/images/callouts/7.png
new file mode 100644
index 00000000..20940de3
Binary files /dev/null and b/doc/images/callouts/7.png differ
diff --git a/doc/images/callouts/7.svg b/doc/images/callouts/7.svg
new file mode 100644
index 00000000..59b3714b
--- /dev/null
+++ b/doc/images/callouts/7.svg
@@ -0,0 +1,16 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/8.png b/doc/images/callouts/8.png
new file mode 100644
index 00000000..d8e34d4a
Binary files /dev/null and b/doc/images/callouts/8.png differ
diff --git a/doc/images/callouts/8.svg b/doc/images/callouts/8.svg
new file mode 100644
index 00000000..c1803a3c
--- /dev/null
+++ b/doc/images/callouts/8.svg
@@ -0,0 +1,20 @@
+
+
+
+
+]>
+
diff --git a/doc/images/callouts/9.png b/doc/images/callouts/9.png
new file mode 100644
index 00000000..abe63607
Binary files /dev/null and b/doc/images/callouts/9.png differ
diff --git a/doc/images/callouts/9.svg b/doc/images/callouts/9.svg
new file mode 100644
index 00000000..bc149d3c
--- /dev/null
+++ b/doc/images/callouts/9.svg
@@ -0,0 +1,19 @@
+
+
+
+
+]>
+
diff --git a/doc/images/caution.png b/doc/images/caution.png
new file mode 100644
index 00000000..5b7809ca
Binary files /dev/null and b/doc/images/caution.png differ
diff --git a/doc/images/caution.svg b/doc/images/caution.svg
new file mode 100644
index 00000000..4bd586a0
--- /dev/null
+++ b/doc/images/caution.svg
@@ -0,0 +1,68 @@
+
+
diff --git a/doc/images/draft.png b/doc/images/draft.png
new file mode 100644
index 00000000..0084708c
Binary files /dev/null and b/doc/images/draft.png differ
diff --git a/doc/images/home.png b/doc/images/home.png
new file mode 100644
index 00000000..5584aacb
Binary files /dev/null and b/doc/images/home.png differ
diff --git a/doc/images/home.svg b/doc/images/home.svg
new file mode 100644
index 00000000..e803a317
--- /dev/null
+++ b/doc/images/home.svg
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+]>
+
diff --git a/doc/images/important.png b/doc/images/important.png
new file mode 100644
index 00000000..12c90f60
Binary files /dev/null and b/doc/images/important.png differ
diff --git a/doc/images/important.svg b/doc/images/important.svg
new file mode 100644
index 00000000..dd84f3fe
--- /dev/null
+++ b/doc/images/important.svg
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+]>
+
diff --git a/doc/images/next.png b/doc/images/next.png
new file mode 100644
index 00000000..59800b4e
Binary files /dev/null and b/doc/images/next.png differ
diff --git a/doc/images/next.svg b/doc/images/next.svg
new file mode 100644
index 00000000..75fa83ed
--- /dev/null
+++ b/doc/images/next.svg
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+]>
+
diff --git a/doc/images/next_disabled.png b/doc/images/next_disabled.png
new file mode 100644
index 00000000..10a8c59d
Binary files /dev/null and b/doc/images/next_disabled.png differ
diff --git a/doc/images/note.png b/doc/images/note.png
new file mode 100644
index 00000000..d0c3c645
Binary files /dev/null and b/doc/images/note.png differ
diff --git a/doc/images/note.svg b/doc/images/note.svg
new file mode 100644
index 00000000..648299d2
--- /dev/null
+++ b/doc/images/note.svg
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+]>
+
diff --git a/doc/images/prev.png b/doc/images/prev.png
new file mode 100644
index 00000000..d88a40f9
Binary files /dev/null and b/doc/images/prev.png differ
diff --git a/doc/images/prev.svg b/doc/images/prev.svg
new file mode 100644
index 00000000..6d88ffdd
--- /dev/null
+++ b/doc/images/prev.svg
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+]>
+
diff --git a/doc/images/prev_disabled.png b/doc/images/prev_disabled.png
new file mode 100644
index 00000000..ab3c17e0
Binary files /dev/null and b/doc/images/prev_disabled.png differ
diff --git a/doc/images/smiley.png b/doc/images/smiley.png
new file mode 100644
index 00000000..30a77f71
Binary files /dev/null and b/doc/images/smiley.png differ
diff --git a/doc/images/tip.png b/doc/images/tip.png
new file mode 100644
index 00000000..5c4aab3b
Binary files /dev/null and b/doc/images/tip.png differ
diff --git a/doc/images/tip.svg b/doc/images/tip.svg
new file mode 100644
index 00000000..cd437a5e
--- /dev/null
+++ b/doc/images/tip.svg
@@ -0,0 +1,84 @@
+
+
diff --git a/doc/images/toc-blank.png b/doc/images/toc-blank.png
new file mode 100644
index 00000000..6ffad17a
Binary files /dev/null and b/doc/images/toc-blank.png differ
diff --git a/doc/images/toc-minus.png b/doc/images/toc-minus.png
new file mode 100644
index 00000000..abbb020c
Binary files /dev/null and b/doc/images/toc-minus.png differ
diff --git a/doc/images/toc-plus.png b/doc/images/toc-plus.png
new file mode 100644
index 00000000..941312ce
Binary files /dev/null and b/doc/images/toc-plus.png differ
diff --git a/doc/images/up.png b/doc/images/up.png
new file mode 100644
index 00000000..17d9c3ec
Binary files /dev/null and b/doc/images/up.png differ
diff --git a/doc/images/up.svg b/doc/images/up.svg
new file mode 100644
index 00000000..d31aa9c8
--- /dev/null
+++ b/doc/images/up.svg
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+]>
+
diff --git a/doc/images/up_disabled.png b/doc/images/up_disabled.png
new file mode 100644
index 00000000..e22bc871
Binary files /dev/null and b/doc/images/up_disabled.png differ
diff --git a/doc/images/warning.png b/doc/images/warning.png
new file mode 100644
index 00000000..1c33db8f
Binary files /dev/null and b/doc/images/warning.png differ
diff --git a/doc/images/warning.svg b/doc/images/warning.svg
new file mode 100644
index 00000000..fc8d7484
--- /dev/null
+++ b/doc/images/warning.svg
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+]>
+
diff --git a/doc/python.qbk b/doc/python.qbk
index b3e7eceb..0a3b7d0d 100644
--- a/doc/python.qbk
+++ b/doc/python.qbk
@@ -1,5 +1,5 @@
[book Boost.Python
- [quickbook 1.7]
+ [quickbook 1.6]
[authors [Abrahams, David], [Seefeld, Stefan]]
[copyright 2002 - 2015 David Abrahams, Stefan Seefeld]
[category inter-language support]
diff --git a/doc/reference.qbk b/doc/reference.qbk
index bc5ecf6e..ae97393c 100644
--- a/doc/reference.qbk
+++ b/doc/reference.qbk
@@ -1,5 +1,5 @@
[book Boost.Python Reference Manual
- [quickbook 1.7]
+ [quickbook 1.6]
[authors [Abrahams, David], [Seefeld, Stefan]]
[copyright 2002 2003 2004 2005 2015 David Abrahams, Stefan Seefeld]
[id reference]
diff --git a/doc/rst.css b/doc/rst.css
new file mode 100644
index 00000000..afd9a98c
--- /dev/null
+++ b/doc/rst.css
@@ -0,0 +1,149 @@
+@import url("doc/src/boostbook.css");
+@import url("doc/src/docutils.css");
+/* Copyright David Abrahams 2006. Distributed under the Boost
+ Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+ */
+
+dl.docutils dt {
+ font-weight: bold }
+
+img.boost-logo {
+ border: none;
+ vertical-align: middle
+}
+
+pre.literal-block span.concept {
+ font-style: italic;
+}
+
+.nav {
+display: inline;
+list-style-type: none;
+}
+
+.prevpage {
+padding-top: -5px;
+text-align: left;
+float: left;
+}
+
+.nextpage {
+padding-top: -20px;
+text-align: right;
+float: right;
+}
+
+div.small {
+ font-size: smaller }
+
+h2 a {
+ font-size: 90%;
+}
+h3 a {
+ font-size: 80%;
+}
+h4 a {
+ font-size: 70%;
+}
+h5 a {
+ font-size: 60%;
+}
+
+dl,table
+{
+ text-align: left;
+ font-size: 10pt;
+ line-height: 1.15;
+}
+
+
+/*=============================================================================
+ Tables
+=============================================================================*/
+
+/* The only clue docutils gives us that tables are logically tables,
+ and not, e.g., footnotes, is that they have border="1". Therefore
+ we're keying off of that. We used to manually patch docutils to
+ add a "table" class to all logical tables, but that proved much too
+ fragile.
+*/
+
+ table[border="1"]
+ {
+ width: 92%;
+ margin-left: 4%;
+ margin-right: 4%;
+ }
+
+ table[border="1"]
+ {
+ padding: 4px;
+ }
+
+ /* Table Cells */
+ table[border="1"] tr td
+ {
+ padding: 0.5em;
+ text-align: left;
+ font-size: 9pt;
+ }
+
+ table[border="1"] tr th
+ {
+ padding: 0.5em 0.5em 0.5em 0.5em;
+ border: 1pt solid white;
+ font-size: 80%;
+ }
+
+ @media screen
+ {
+
+ /* Tables */
+ table[border="1"] tr td
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ table[border="1"] tr th
+ {
+ background-color: #F0F0F0;
+ border: 1px solid #DCDCDC;
+ }
+
+ pre,
+ .screen
+ {
+ border: 1px solid #DCDCDC;
+ }
+
+ td pre
+ td .screen
+ {
+ border: 0px
+ }
+
+ .sidebar pre
+ {
+ border: 0px
+ }
+
+ }
+
+ pre,
+ .screen
+ {
+ font-size: 9pt;
+ display: block;
+ margin: 1pc 4% 0pc 4%;
+ padding: 0.5pc 0.5pc 0.5pc 0.5pc;
+ }
+
+ /* Program listings in tables don't get borders */
+ td pre,
+ td .screen
+ {
+ margin: 0pc 0pc 0pc 0pc;
+ padding: 0pc 0pc 0pc 0pc;
+ }
+
diff --git a/doc/tutorial.qbk b/doc/tutorial.qbk
index 3992a50e..74126476 100644
--- a/doc/tutorial.qbk
+++ b/doc/tutorial.qbk
@@ -1,5 +1,5 @@
[article Boost.Python Tutorial
- [quickbook 1.7]
+ [quickbook 1.6]
[authors [de Guzman, Joel], [Abrahams, David]]
[copyright 2002 2003 2004 2005 Joel de Guzman, David Abrahams]
[category inter-language support]
@@ -1758,13 +1758,13 @@ sounds/
\_\_init\_\_.py
core/
\_\_init\_\_.py
- _core.pyd
+ \_core.pyd
filters/
\_\_init\_\_.py
- _filters.pyd
+ \_filters.pyd
io/
\_\_init\_\_.py
- _io.pyd
+ \_io.pyd
]
Note that we created a directory for each extension module, and added a