Merge some of the boostbook changes from trunk.

* XML validity fix for a test.
* Valid docbook lists.
* Updated documentation build settings.
* Fix doxygen problem when two files have the same name. Fixes #1192.
* Avoid including `type` elements in generated docbook.
* Update setup_boostbook scripts.


[SVN r63463]
This commit is contained in:
Daniel James 2010-06-30 23:37:54 +00:00
parent 6a013b856f
commit 4936070d81
11 changed files with 52 additions and 38 deletions

View File

@ -8,9 +8,6 @@ project boost/doc ;
import boostbook : boostbook ; import boostbook : boostbook ;
boostbook boostbook : boostbook.xml : boostbook boostbook : boostbook.xml :
<xsl:param>html.stylesheet=../../../../doc/html/boostbook.css
<xsl:param>boost.root=../../../.. <xsl:param>boost.root=../../../..
<xsl:param>boost.libraries=../../../../libs/libraries.htm
<xsl:param>navig.graphics=1
; ;

View File

@ -11,12 +11,12 @@
# User configuration # User configuration
# (MAINTANERS: please, keep in synch with setup_boostbook.sh) # (MAINTANERS: please, keep in synch with setup_boostbook.sh)
DOCBOOK_XSL_VERSION = "1.73.2" DOCBOOK_XSL_VERSION = "1.75.2"
DOCBOOK_DTD_VERSION = "4.2" DOCBOOK_DTD_VERSION = "4.2"
FOP_VERSION = "0.94" FOP_VERSION = "0.94"
FOP_JDK_VERSION="1.4" FOP_JDK_VERSION="1.4"
FOP_MIRROR = "http://mirrors.ibiblio.org/pub/mirrors/apache/xmlgraphics/fop/binaries" FOP_MIRROR = "http://mirrors.ibiblio.org/pub/mirrors/apache/xmlgraphics/fop/binaries"
SOURCEFORGE_MIRROR = "http://dl.sourceforge.net" SOURCEFORGE_DOWNLOAD = "http://sourceforge.net/projects/docbook/files"
# No user configuration below this point------------------------------------- # No user configuration below this point-------------------------------------
@ -150,7 +150,7 @@ def adjust_user_config( config_file
def setup_docbook_xsl( tools_directory ): def setup_docbook_xsl( tools_directory ):
print "DocBook XSLT Stylesheets ..." print "DocBook XSLT Stylesheets ..."
DOCBOOK_XSL_TARBALL = os.path.join( tools_directory, "docbook-xsl-%s.tar.gz" % DOCBOOK_XSL_VERSION ) DOCBOOK_XSL_TARBALL = os.path.join( tools_directory, "docbook-xsl-%s.tar.gz" % DOCBOOK_XSL_VERSION )
DOCBOOK_XSL_URL = "%s/sourceforge/docbook/%s" % ( SOURCEFORGE_MIRROR, os.path.basename( DOCBOOK_XSL_TARBALL ) ) DOCBOOK_XSL_URL = "%s/docbook-xsl/%s/%s/download" % (SOURCEFORGE_DOWNLOAD, DOCBOOK_XSL_VERSION, os.path.basename( DOCBOOK_XSL_TARBALL ) )
if os.path.exists( DOCBOOK_XSL_TARBALL ): if os.path.exists( DOCBOOK_XSL_TARBALL ):
print " Using existing DocBook XSLT Stylesheets (version %s)." % DOCBOOK_XSL_VERSION print " Using existing DocBook XSLT Stylesheets (version %s)." % DOCBOOK_XSL_VERSION

View File

@ -7,19 +7,19 @@
# User configuration # User configuration
# (MAINTANERS: please, keep in synch with setup_boostbook.py) # (MAINTANERS: please, keep in synch with setup_boostbook.py)
DOCBOOK_XSL_VERSION=1.73.2 DOCBOOK_XSL_VERSION=1.75.2
DOCBOOK_DTD_VERSION=4.2 DOCBOOK_DTD_VERSION=4.2
FOP_VERSION=0.94 FOP_VERSION=0.94
FOP_JDK_VERSION=1.4 FOP_JDK_VERSION=1.4
FOP_MIRROR=http://mirrors.ibiblio.org/pub/mirrors/apache/xmlgraphics/fop/binaries FOP_MIRROR=http://mirrors.ibiblio.org/pub/mirrors/apache/xmlgraphics/fop/binaries
SOURCEFORGE_MIRROR=http://dl.sourceforge.net SOURCEFORGE_DOWNLOAD=http://sourceforge.net/projects/docbook/files/
HTTP_GET_CMD="curl -O -L" HTTP_GET_CMD="curl -O -L"
# No user configuration below this point------------------------------------- # No user configuration below this point-------------------------------------
# Get the DocBook XSLT Stylesheets # Get the DocBook XSLT Stylesheets
DOCBOOK_XSL_TARBALL=docbook-xsl-$DOCBOOK_XSL_VERSION.tar.gz DOCBOOK_XSL_TARBALL=docbook-xsl-$DOCBOOK_XSL_VERSION.tar.gz
DOCBOOK_XSL_URL=$SOURCEFORGE_MIRROR/sourceforge/docbook/$DOCBOOK_XSL_TARBALL DOCBOOK_XSL_URL=$SOURCEFORGE_DOWNLOAD/docbook-xsl/$DOCBOOK_XSL_VERSION/$DOCBOOK_XSL_TARBALL/download
if test -f $DOCBOOK_XSL_TARBALL; then if test -f $DOCBOOK_XSL_TARBALL; then
echo "Using existing DocBook XSLT Stylesheets (version $DOCBOOK_XSL_VERSION)." echo "Using existing DocBook XSLT Stylesheets (version $DOCBOOK_XSL_VERSION)."
else else

View File

@ -8,9 +8,6 @@ project boost/test ;
import boostbook : boostbook ; import boostbook : boostbook ;
boostbook alt : alt.xml : boostbook alt : alt.xml :
<xsl:param>html.stylesheet=../../../../doc/html/boostbook.css
<xsl:param>boost.root=../../../.. <xsl:param>boost.root=../../../..
<xsl:param>boost.libraries=../../../../libs/libraries.htm
<xsl:param>navig.graphics=1
; ;

View File

@ -1,3 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- <!--
Copyright Daniel James 2009 Copyright Daniel James 2009
@ -5,7 +6,6 @@ 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) file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
--> -->
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML//EN" <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML//EN"
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd"> "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">

View File

@ -16,9 +16,6 @@ boostbook standalone
: :
example.xml example.xml
: :
<xsl:param>boost.root=../../../../.. <xsl:param>boost.root=../../../../..
<xsl:param>boost.libraries=../../../../../libs/libraries.htm
<xsl:param>html.stylesheet=../../../../../doc/html/boostbook.css
<dependency>autodoc <dependency>autodoc
; ;

View File

@ -71,7 +71,7 @@ namespace example
* Embedded docbook list: * Embedded docbook list:
* *
* \xmlonly * \xmlonly
* <orderedlist><listitem>1</listitem><listitem>2</listitem></orderedlist> * <orderedlist><listitem><simpara>1</simpara></listitem><listitem><simpara>2</simpara></listitem></orderedlist>
* \endxmlonly * \endxmlonly
* *
* \a Special \b Bold \c Typewriter \e Italics \em emphasis \p parameter * \a Special \b Bold \c Typewriter \e Italics \em emphasis \p parameter

View File

@ -390,6 +390,10 @@
<xsl:apply-templates mode="annotation"/> <xsl:apply-templates mode="annotation"/>
</xsl:template> </xsl:template>
<xsl:template match="type" mode="annotation">
<xsl:apply-templates mode="annotation"/>
</xsl:template>
<xsl:template match="comment()" mode="annotation"> <xsl:template match="comment()" mode="annotation">
<xsl:copy/> <xsl:copy/>
</xsl:template> </xsl:template>

View File

@ -98,14 +98,14 @@
<itemizedlist> <itemizedlist>
<xsl:for-each select="concept"> <xsl:for-each select="concept">
<listitem> <listitem><simpara>
<xsl:call-template name="internal-link"> <xsl:call-template name="internal-link">
<xsl:with-param name="to"> <xsl:with-param name="to">
<xsl:call-template name="generate.id"/> <xsl:call-template name="generate.id"/>
</xsl:with-param> </xsl:with-param>
<xsl:with-param name="text" select="@name"/> <xsl:with-param name="text" select="@name"/>
</xsl:call-template> </xsl:call-template>
</listitem> </simpara></listitem>
</xsl:for-each> </xsl:for-each>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -204,8 +204,7 @@
<xsl:param name="in-file"/> <xsl:param name="in-file"/>
<xsl:param name="with-namespace-refs"/> <xsl:param name="with-namespace-refs"/>
<xsl:if test="contains(string(location/attribute::file), <xsl:if test="string(location/attribute::file)=$in-file">
concat('/', $in-file)) ">
<!-- The short name of this class --> <!-- The short name of this class -->
<xsl:variable name="name-with-spec"> <xsl:variable name="name-with-spec">
@ -261,7 +260,9 @@
<xsl:apply-templates select="briefdescription" mode="passthrough"/> <xsl:apply-templates select="briefdescription" mode="passthrough"/>
<xsl:apply-templates select="detaileddescription" mode="passthrough"/> <xsl:apply-templates select="detaileddescription" mode="passthrough"/>
<xsl:apply-templates select="inbodydescription" mode="passthrough"/> <xsl:apply-templates select="inbodydescription" mode="passthrough"/>
<xsl:apply-templates/> <xsl:apply-templates>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates>
</xsl:element> </xsl:element>
</xsl:if> </xsl:if>
</xsl:template> </xsl:template>
@ -269,8 +270,7 @@
<xsl:template name="enum"> <xsl:template name="enum">
<xsl:param name="in-file"/> <xsl:param name="in-file"/>
<xsl:if test="contains(string(location/attribute::file), <xsl:if test="string(location/attribute::file)=$in-file">
concat('/', $in-file))">
<xsl:variable name="name"> <xsl:variable name="name">
<xsl:call-template name="strip-qualifiers"> <xsl:call-template name="strip-qualifiers">
<xsl:with-param name="name" select="name"/> <xsl:with-param name="name" select="name"/>
@ -384,7 +384,7 @@
<xsl:apply-templates mode="toplevel"> <xsl:apply-templates mode="toplevel">
<xsl:with-param name="with-namespace-refs" <xsl:with-param name="with-namespace-refs"
select="innernamespace"/> select="innernamespace"/>
<xsl:with-param name="in-file" select="string(compoundname)"/> <xsl:with-param name="in-file" select="location/attribute::file"/>
</xsl:apply-templates> </xsl:apply-templates>
</header> </header>
</xsl:if> </xsl:if>
@ -498,11 +498,15 @@
</xsl:when> </xsl:when>
<xsl:when test="@kind='function'"> <xsl:when test="@kind='function'">
<xsl:call-template name="function" /> <xsl:call-template name="function">
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:call-template>
</xsl:when> </xsl:when>
<xsl:when test="@kind='typedef'"> <xsl:when test="@kind='typedef'">
<xsl:call-template name="typedef" /> <xsl:call-template name="typedef">
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:call-template>
</xsl:when> </xsl:when>
<xsl:when test="@kind='variable'"> <xsl:when test="@kind='variable'">
@ -664,6 +668,7 @@
<method-group name="public static functions"> <method-group name="public static functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
</xsl:when> </xsl:when>
@ -672,6 +677,7 @@
<method-group name="protected static functions"> <method-group name="protected static functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
</xsl:when> </xsl:when>
@ -680,13 +686,14 @@
<method-group name="private static functions"> <method-group name="private static functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
</xsl:when> </xsl:when>
<xsl:when test="@kind='public-func'"> <xsl:when test="@kind='public-func'">
<xsl:variable name="members" select="./memberdef"/> <xsl:variable name="members" select="./memberdef"/>
<xsl:variable name="num-internal-only"> <xsl:variable name="num-internal-only">
<xsl:value-of <xsl:value-of
select="count($members[contains(detaileddescription/para, select="count($members[contains(detaileddescription/para,
'INTERNAL ONLY')])"/> 'INTERNAL ONLY')])"/>
</xsl:variable> </xsl:variable>
@ -694,6 +701,7 @@
<method-group name="public member functions"> <method-group name="public member functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
<xsl:apply-templates/> <xsl:apply-templates/>
@ -703,6 +711,7 @@
<method-group name="protected member functions"> <method-group name="protected member functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
<xsl:apply-templates/> <xsl:apply-templates/>
@ -718,6 +727,7 @@
<method-group name="private member functions"> <method-group name="private member functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
</xsl:if> </xsl:if>
@ -728,15 +738,20 @@
<method-group name="friend functions"> <method-group name="friend functions">
<xsl:apply-templates> <xsl:apply-templates>
<xsl:with-param name="in-section" select="true()"/> <xsl:with-param name="in-section" select="true()"/>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates> </xsl:apply-templates>
</method-group> </method-group>
</xsl:if> </xsl:if>
</xsl:when> </xsl:when>
<xsl:when test="@kind='public-static-attrib' or @kind='public-attrib'"> <xsl:when test="@kind='public-static-attrib' or @kind='public-attrib'">
<xsl:apply-templates/> <xsl:apply-templates>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates>
</xsl:when> </xsl:when>
<xsl:when test="@kind='public-type'"> <xsl:when test="@kind='public-type'">
<xsl:apply-templates/> <xsl:apply-templates>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates>
</xsl:when> </xsl:when>
<xsl:when test="@kind='private-type'"> <xsl:when test="@kind='private-type'">
<!--skip private members--> <!--skip private members-->
@ -765,7 +780,9 @@
</xsl:apply-templates> </xsl:apply-templates>
</xsl:when> </xsl:when>
<xsl:when test="@kind='user-defined'"> <xsl:when test="@kind='user-defined'">
<xsl:apply-templates/> <xsl:apply-templates>
<xsl:with-param name="in-file" select="$in-file"/>
</xsl:apply-templates>
</xsl:when> </xsl:when>
<xsl:when test="@kind=''"> <xsl:when test="@kind=''">
<xsl:apply-templates select="memberdef[generate-id() = <xsl:apply-templates select="memberdef[generate-id() =
@ -875,8 +892,7 @@
<xsl:template name="typedef"> <xsl:template name="typedef">
<xsl:param name="in-file" select="''"/> <xsl:param name="in-file" select="''"/>
<xsl:if test="contains(string(location/attribute::file), <xsl:if test="string(location/attribute::file)=$in-file">
concat('/', $in-file))">
<!-- TBD: Handle public/protected/private --> <!-- TBD: Handle public/protected/private -->
<typedef> <typedef>
<!-- Name of the type --> <!-- Name of the type -->
@ -1007,8 +1023,7 @@
<xsl:variable name="firstpara" <xsl:variable name="firstpara"
select="normalize-space(detaileddescription/para[1])"/> select="normalize-space(detaileddescription/para[1])"/>
<xsl:if test="contains(string(location/attribute::file), <xsl:if test="string(location/attribute::file)=$in-file
concat('/', $in-file))
and and
not($firstpara=normalize-space($boost.doxygen.overload))"> not($firstpara=normalize-space($boost.doxygen.overload))">
@ -1182,8 +1197,7 @@
<!-- Handle member variables --> <!-- Handle member variables -->
<xsl:template name="variable"> <xsl:template name="variable">
<xsl:param name="in-file"/> <xsl:param name="in-file"/>
<xsl:if test="contains(string(location/attribute::file), <xsl:if test="string(location/attribute::file)=$in-file">
concat('/', $in-file))">
<data-member> <data-member>
<xsl:attribute name="name"> <xsl:attribute name="name">
<xsl:value-of select="name/text()"/> <xsl:value-of select="name/text()"/>

View File

@ -162,4 +162,9 @@
conceptname|macroname|globalname" mode="highlight"> conceptname|macroname|globalname" mode="highlight">
<xsl:apply-templates select="." mode="annotation"/> <xsl:apply-templates select="." mode="annotation"/>
</xsl:template> </xsl:template>
<xsl:template match="type" mode="highlight">
<xsl:apply-templates mode="highlight"/>
</xsl:template>
</xsl:stylesheet> </xsl:stylesheet>