import	rkBuilder
import	rkConfig
import	rkMoc
import	rkWalker
import	rkDesktop
import	os



rkBuilder.setCommandLine (COMMAND_LINE_TARGETS, ARGUMENTS)

if rkConfig.cppunitBuild :

    rkDesktop.makeDesktopFile ('rekall_test_script')
    rkMoc.generateMocFiles    ('test/script')

    rbl	= rkBuilder.rkBuilder ('rkt_script', rkBuilder.typeLoadedLib)

    if rkConfig.mode == 'kde' :
        rbl.addInclude (rkConfig.kde3IncDir + '/kjs')
        rbl.addInclude ('kjs/' + rkConfig.kdever)
        rbl.addLib     ('kjs')
    else :
        rbl.addInclude ('kjs')
        rbl.addInclude (os.path.join('kjs', 'kjs'))
        rbl.addLibPath (os.path.join('kjs', 'kjs'))
        rbl.addLib     (rkConfig.libPrefix +'_kjs')

    rbl.addPorting ()
    rbl.addAll	   ('libs/common',    '_common')
    rbl.addAll	   ('libs/el32',      '_el32'  )
    rbl.addAll	   ('libs/app',       '_app'   )
    rbl.addAll 	   ('libs/kbase',     '')
    rbl.addAll     ('test/common',    '_rkt_tester')
    rbl.addAll     ('test/kbase',     '_rkt_tester_kbase')
    rbl.addAll	   ('script/kjs',     '_script_kjs')
    rbl.addAll	   ('script/python',  '_script_py')
    rbl.addCPPUnit ()
    rbl.addPython  ()

    if rkConfig.mode == 'win' :
        rbl.addCFlags  ('/EHsc')

    sources = [ \
		'scriptif.cpp',
		'script.cpp',
		'kjs.cpp',
		'py.cpp',
		'py_support.cpp'
	      ]
    rbl.build	(sources = sources, desktop = 'rekall_test_script.desktop')


    rbc	= rkBuilder.rkBuilder ('rkt_script', rkBuilder.typeConsole)

    rbc.addPorting ()
    rbc.addAll	   ('libs/common',    '_common')
    rbc.addAll	   ('libs/el32',      '_el32'  )
    rbc.addAll	   ('libs/app',       '_app'   )
    rbc.addAll	   ('libs/kbase',     '')
    rbc.addAll	   ('test/script',    '_rkt_script')
    rbc.addAll     ('test/common',    '_rkt_tester')
    rbc.addAll     ('test/kbase',     '_rkt_tester_kbase')
    rbc.addAll	   ('script/kjs',     '_script_kjs')
    rbc.addAll	   ('script/python',  '_script_py')

    if rkConfig.mode == 'kde' :
        rbc.addLib     ('kjs')
    else :
        rbc.addLibPath (os.path.join('kjs', 'kjs'))
        rbc.addLib     (rkConfig.libPrefix +'_kjs')

    rbc.addCPPUnit ()

    if rkConfig.mode == 'win' :
        rbc.addCFlags  ('/EHsc')

    rbc.build	(sources = 'runner.cpp')
