向 wscript 添加 --all 选项

Add --all option to wscript

我在顶部定义了几个目标 wscript,我们称它们为 build_abuild_bbuild_c

如何将函数 all 添加到我的 wscript,构建所有这些目标(顺序或并行无关紧要)。

所以在虚拟 python 代码中,我希望是这样的:

def all():
    tar = ['configure', 'build_a', 'build_b', 'build_c']

编写命令很简单:

from waflib import Options

def all(bld):
    commands_after = Options.commands
    Options.commands = ['configure', 'build_a', 'build_b', 'build_c']
    Options.commands += commands_after

参见https://waf.io/book/#_custom_commands(§7.1.2 命令组成)

waf 在处理时消耗 Options.commands。所以你可以使用:

waf all test

# equivalent to waf configure build_a build_b build_c test