# Copyright (c) 2016-2019 Klemens D. Morgenstern, Hans Dembinski
#
# 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)

project doc/histogram ;

import doxygen ;
import quickbook ;
import boostbook : boostbook ;

path-constant THIS_PATH : . ;

doxygen reference
:
  $(THIS_PATH)/../../../boost/histogram.hpp
  [ glob $(THIS_PATH)/../../../boost/histogram/*.hpp ]
  [ glob $(THIS_PATH)/../../../boost/histogram/accumulators/*.hpp ]
  [ glob $(THIS_PATH)/../../../boost/histogram/algorithm/*.hpp ]
  [ glob $(THIS_PATH)/../../../boost/histogram/axis/*.hpp ]
:
  <doxygen:param>QUIET=YES
  <doxygen:param>WARNINGS=YES
  <doxygen:param>WARN_IF_DOC_ERROR=YES
  <doxygen:param>EXTRACT_ALL=NO
  <doxygen:param>EXTRACT_PRIVATE=NO
  <doxygen:param>HIDE_UNDOC_MEMBERS=YES
  <doxygen:param>HIDE_UNDOC_CLASSES=YES
  <doxygen:param>EXPAND_ONLY_PREDEF=YES
  <doxygen:param>JAVADOC_AUTOBRIEF=YES
  <doxygen:param>EXCLUDE_SYMBOLS=detail
  <doxygen:param>"PREDEFINED=\"BOOST_HISTOGRAM_DOXYGEN_INVOKED\" \\
                             \"BOOST_ATTRIBUTE_NODISCARD\""
;

make reference_pp.xml : reference.xml : @doxygen_postprocessing ;
actions doxygen_postprocessing
{
  python $(THIS_PATH)/doxygen_postprocessing.py $(>) $(<)
}

boostbook histogram
:
  histogram.qbk
:
  <xsl:param>boost.root=../../../..
  <xsl:param>boost.libraries=../../../libraries.htm
  <xsl:param>boost.mathjax=1
  <xsl:param>chunk.first.sections=1
  <xsl:param>generate.toc="chapter nop section toc"
  <xsl:param>toc.section.depth=3
  <dependency>reference_pp.xml
;

alias boostdoc ;
explicit boostdoc ;
alias boostrelease : histogram ;
explicit boostrelease ;
