2010-08-26 61 views
0

我有一些复杂的别名前。别名依赖关系

Alias('build', [ Program(), Install()...]) 
Alias('test', [Program(), Install(), RunTest()] 
Alias('dist', [Install()]) 

最后

Alias('all', [ Alias('build'), Alias('test'), Alias('dist')]) 

问:
如何别名在别名( '测试')取决于别名( 'DIST')( '全部')? 我试过取决于()的变体,但它似乎我做错了什么。

欢呼 P.

UPDATE:

我已经通过我自己管理的这一点。

build = Alias('build', [ Program(), Install()...]) 
test = Alias('test', [Program(), Install(), RunTest()] 
dist = Alias('dist', [Install()]) 

Depends(test, build) 
Depends(dist, test) 

Default('dist') 

回答

0

我往往使命名目标的一切(与依赖关系),然后别名,我想要发布到谁运行SCons的目标。

prog = env.Program(..., libs) 
install = env.Install(..., prog) 
test = env.RunTest(..., libs) 

Alias('build', prog) 
Alias('test', test) 
Alias('dist', [ test, install, bump_version ]) 

我不知道有一个理由更喜欢一种方法而不是另一种。对我来说,在内部设置依赖关系似乎更自然,然后使用Alias来发布需要用户可运行的目标。