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



rkBuilder.setCommandLine (COMMAND_LINE_TARGETS, ARGUMENTS)

if rkConfig.cppunitBuild :

    rbt	= rkBuilder.rkBuilder ('rkt_tester_kbase', rkBuilder.typeSharedLib)

    rbt.addPorting ()
    rbt.addAll	   ('libs/common',    '_common')
    rbt.addAll	   ('libs/el32',      '_el32'  )
    rbt.addAll 	   ('libs/kbase',     '')
    rbt.addAll     ('test/common',    '_rkt_tester')
    rbt.addCPPUnit ()

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

    sources = [ \
		'api_if.cpp',
		'tester_kbase.cpp',
		'accessor.cpp'
	      ]
    rbt.build	(sources = sources)


    rkDesktop.makeDesktopFile ('rekall_test_kbase')
    rkMoc.generateMocFiles    ('test/kbase')

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

    rbl.addPorting ()
    rbl.addAll	   ('libs/common',    '_common')
    rbl.addAll	   ('libs/el32',      '_el32'  )
    rbl.addAll 	   ('libs/kbase',     '')
    rbl.addAll     ('test/common',    '_rkt_tester')
    rbl.addCPPUnit ()

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

    sources = [ \
		'attr.cpp',
		'skin.cpp',
		'kbase.cpp'
	      ]
    rbl.build	(sources = sources, desktop = 'rekall_test_kbase.desktop')


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

    rbc.addPorting ()
    rbc.addAll	   ('libs/common',    '_common')
    rbc.addAll	   ('libs/el32',      '_el32'  )
    rbc.addAll	   ('libs/kbase',     '')
    rbc.addAll     ('test/common',    '_rkt_tester')
    rbc.addAll	   ('test/kbase',     '_rkt_kbase')
    rbc.addCPPUnit ()

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

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