Scons SCON:命令行生成变量,不限制允许的值

Scons SCON:命令行生成变量,不限制允许的值,scons,Scons,使用的Scons版本:3.0.1(出于历史原因) 我想在我的Scons脚本中添加一个命令行构建变量,它不受期望值的限制。EnumVariable和ListVariable都要求您提供允许的值或元素的列表。 我想要一个变量(就像C++定义可以通过-DFoO=bar(或者至少-DoWiFibar)传递给G++)传递给SCONS脚本。 差不多 scons my_define=foo_bar 或 或 会有用的 我在网上没有找到类似的东西,也没有通过谷歌搜索 这可能吗?如果是,如何进行?是。它在用户指南

使用的Scons版本:3.0.1(出于历史原因)

我想在我的Scons脚本中添加一个命令行构建变量,它不受期望值的限制。EnumVariable和ListVariable都要求您提供允许的值或元素的列表。 我想要一个变量(就像C++定义可以通过-DFoO=bar(或者至少-DoWiFibar)传递给G++)传递给SCONS脚本。 差不多

scons my_define=foo_bar

会有用的

我在网上没有找到类似的东西,也没有通过谷歌搜索


这可能吗?如果是,如何进行?

是。它在用户指南中

而各种
vars.Add*()
方法提供了经过验证的变量类型。只需使用普通的
vars.Add()

下面是手册页中的一个示例

vars.Add('CC', help='The C compiler')
scons my_define=foo my_define=bar
vars.Add('CC', help='The C compiler')