#! /usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2008-2012 (ita)

from waflib import Build, TaskGen

VERSION='0.0.1'
APPNAME='cc_test'

top = '.'
out = 'build'

def options(opt):
	opt.load('compiler_cxx')

def configure(conf):
	conf.load('compiler_cxx doxygen')

# NOTES:
#
# 1. The test.conf file has "OUTPUT_DIRECTORY" commented
#
# 2. Doxygen parameters may be passed using pars attribute
#       e.g. pars={'EXCLUDE_PATTERNS': '*.foo'}
#
# 3. if you want to build the docs in another command, use something like:
#    if bld.cmd == 'doxy': in the build
#

def build(bld):
	bld(
		features='doxygen',
		doxyfile='test.conf',
		doxy_tar='docs.tar.bz2')

	# if the documentation is to be installed
	bld.add_group()
	bld.post_mode = Build.POST_LAZY
	bld(features='special_doxygen_stuff')

	@TaskGen.feature('special_doxygen_stuff')
	def special_doxygen_stuff(self):
		node = self.path.get_bld().make_node('html')
		self.bld.install_files('${PREFIX}/doc/html', node.ant_glob('**', remove=False))

	# and additional targets
	bld(features='cxx cxxshlib', source='subdir/c.cpp', target='somelib')

# example for the NOTES point #3
from waflib import Build
class doxy(Build.BuildContext):
	fun = 'build'
	cmd = 'doxy'

