#!/usr/bin/env python
# -*- encoding: utf-8 -*-
# Michel Mooij, michel.mooij7@gmail.com


import waftools
from waftools import ccenv


top = '.'
out = 'build'
prefix = 'output'


VERSION = waftools.version
APPNAME = 'waftools-test'


def options(opt):
	opt.add_option('--prefix', dest='prefix', default=prefix, help='installation prefix [default: %r]' % prefix)
	opt.load('ccenv', tooldir=waftools.location)


def configure(conf):
	conf.env.append_unique('INCLUDES', conf.path.find_node('include').abspath().replace('\\', '/'))
	conf.env.append_unique('INCLUDES_dummy', conf.path.find_node('ext/dummy').abspath().replace('\\', '/'))
	conf.load('ccenv')


def build(bld):
	bld.read_shlib('m', paths=['/lib64', '/usr/lib64'])
	ccenv.build(bld, trees=['components'])


def dist(ctx):
	ctx.excl = '**/*~ .lock-w* .git/** %s/** %s/**' % (out, prefix)


# create commands for variant build environments
for var in ccenv.variants():
	for ctx in ccenv.contexts():
		name = ctx.__name__.replace('Context','').lower()
		class _t(ctx):
			__doc__ = "%ss '%s'" % (name, var)
			cmd = name + '_' + var
			variant = var


