#==============================================================================
#   Copyright (c) 2002 2004 2006 Joel de Guzman
#   Copyright (c) 2004 Eric Niebler
#   http://spirit.sourceforge.net/
#
#   Use, modification and distribution is subject to 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)
#==============================================================================

project boost/quickbook/doc ;

import boostbook : boostbook ;
using quickbook ;

xml quickbook : quickbook.qbk ;

path-constant images : ../../../doc/src ;

boostbook standalone
    :
        quickbook
    :
        <xsl:param>boost.root=../../../..
        <xsl:param>generate.section.toc.level=3
        <xsl:param>chunk.section.depth=2
        <xsl:param>chunk.first.sections=1

        #<xsl:param>callout.graphics.path=../../images/callouts//
        <format>pdf:<xsl:param>img.src.path=$(images)/
        <format>pdf:<xsl:param>boost.url.prefix=http://www.boost.org/doc/libs/release/doc/html
    ;
