2014-07-18 27 views
0

我有一個主目錄,這是一個主程序,我有一個測試目錄,我想單元測試它。我想通過對主所有目標文件來測試,這樣我可以將它們鏈接Scons:如何將主程序的目標文件傳遞給SConscript而無需創建庫?

SConstruct文件:在測試目錄

env = Enviornment 
log = 'src/config/log' 
main_xsd = 'src/config/schema/main.xsd' 
xml = 'src/config/xml_manager' 
main = 'src/main' 

subpackages = [log, xml, main] 

objects = [] 
for package in subpackages: 
    pack_objects = env.SConscript(os.path.join(package,"SConscript"), 
     dirs=package, variant_dir = 'build/' + package, duplicate=0, 
     exports = 'env') 

objects.append(pack_objects) 
main_program = env.Program("antik", objects) 
test = env.SConscript("test/SConscript", 
     dirs='test', variant_dir = 'build/test', duplicate=0, 
     exports = 'env') 

env.Default(env.Install(os.path.join(prefix, "bin")), main_program) 
env.Default(env.Install("/etc", log_config)); 

SConscript文件

Import('env') 

test_env = env.Clone() 

test_env.Append(CPPPATH = ['#/unit_test']) 

sources = ['unit_test/xml_validate_test.c', 'main.c'] 

program = test_env.Program(sources) 
Return('program') 

如何通過目標文件到Sconscript?

回答

相關問題