import thirdparty
import os

def buildPkgConfig(context, sourceDir):
    os.chdir(sourceDir)
    make = context.sconf.env['MAKE']
    os.spawnl(os.P_WAIT, 'configure', 'configure', '--prefix=' + context.sconf.env['THIRDPARTY_STAGEDIR'])
    os.spawnl(os.P_WAIT, make, make, 'all')
    os.spawnl(os.P_WAIT, make, make, '-k', 'install')

def findPkgConfig(context):
    context.Message('Searching for program pkg-config...')
    env = context.sconf.env
    if thirdparty.searchForProgram(env, 'PKG_CONFIG', 'pkg-config'):
	result = True
	if 'PKG_CONFIG_PATH' in os.environ:
	    os.environ['PKG_CONFIG_PATH'] = os.environ['PKG_CONFIG_PATH']+':'+os.path.join(env['THIRDPARTY_STAGEDIR'], 'lib', 'pkgconfig')
	else:
	    os.environ['PKG_CONFIG_PATH'] = os.path.join(env['THIRDPARTY_STAGEDIR'], 'lib', 'pkgconfig')
    else:
	result = False

    context.Result(result)
    return result

def checkPkgConfig(context):
	    return thirdparty.configureDependency(context,
						  findPkgConfig,
						  downloadSource=('http://interreality.org/~tetron/',
								  'pkg-config-0.22.tar.gz',
								  'pkg-config-0.22',
								  1006425,
								  'fd5c547e9d66ba49bc735ccb8c791f2a'),
						  buildFunc=buildPkgConfig,
						  debianPackage='pkg-config')
	    

import scripts
scripts.AddCustomTest('CheckPkgConfig', checkPkgConfig)
