import	rkBuilder
import	rkConfig
import	rkMoc
import	rkWalker
import	os

rkBuilder.setCommandLine (COMMAND_LINE_TARGETS, ARGUMENTS)

def build_dictionaries (target, source, env) :

    import string
    out = open(str(target[0]), 'w')
    out.write ("<?xml version = '1.0' ?>\n")
    out.write ("<classes>")
    for s in source :
        for l in open(str(s)).readlines() :
            if string.find(l, '<?xml') < 0 :
                out.write (l)
    out.write ("</classes>")
    return None


dictBuilder= Builder \
	     (
		action = build_dictionaries,  suffix = '.xml',  src_suffix = '.dict'
	     )


pyEnv	   = Environment \
	     (
		BUILDERS =
			 {
				'Dictionaries'  : dictBuilder
			 }
	     )


rkMoc.generateMocFiles ('libs/kbase')

dict	= pyEnv.Dictionaries  ('dict.xml', rkBuilder.listAllMatching('.*\.dict'))

rb	= rkBuilder.rkBuilder ('')

rb.setDefine	('__KB_USESYSPY', '1')
rb.winDefine	('LIBKBASE_EXPORTS')
rb.addPorting	()
rb.addAll	('libs/common',    '_common')
rb.addAll	('libs/el32',	 '_el32')
rb.setDefine	('__KB_HELPAPP',  '\\"' + rkConfig.appName + 'Help\\"')
rb.setDefine	('__KB_APPNAME',  '\\"' + rkConfig.appName + '\\"')
rb.build	()

ins	= rkBuilder.installer()
env	= Environment ()

if ins :
     rkWalker.install (ins, env, '.', 'highlights', '.*\.hilight')
     rkWalker.install (ins, env, '.', 'dict',       '.*\.dict'   )
