#! /usr/bin/env python
# encoding: utf-8
# mittorn, 2018

from waflib import Logs
import os

top = '.'

def options(opt):
	grp = opt.add_option_group('ref_gu options')

	grp.add_option('--enable-static-gl', action='store_true', dest='GL_STATIC', default=False,
		help = 'enable direct linking to opengl [default: %default]')

	grp.add_option('--disable-gl', action='store_false', dest='GL', default=True,
		help = 'disable opengl [default: %default]')

	# stub
	return

def configure(conf):
	# check for dedicated server build
	if conf.options.DEDICATED:
		return

	conf.define_cond('SUPPORT_BSP2_FORMAT', conf.options.SUPPORT_BSP2_FORMAT)

	conf.env.GL     = conf.options.GL
	conf.env.GL_STATIC = conf.options.GL_STATIC

	conf.define('REF_DLL', 1)

def build(bld):
	libs = [ 'public', 'M' ]

	source = bld.path.ant_glob(['*.c'])

	includes = ['.',
		'../engine',
		'../engine/common',
		'../engine/server',
		'../engine/client',
		'../public',
		'../common',
		'../pm_shared' ]

	if bld.env.GL:
		bld.shlib(
			source   = source,
			target   = 'ref_gu',
			features = 'c',
			includes = includes,
			use      = libs + (['GL'] if bld.env.GL_STATIC else []),
			defines  = ['XASH_GL_STATIC'] if bld.env.GL_STATIC else [],
			install_path = bld.env.LIBDIR,
			subsystem = bld.env.MSVC_SUBSYSTEM
		)
