从文件导入scons变量

时间:2017-07-11 19:14:57

标签: build environment-variables scons

scons是否支持包含外部文件中的变量?

简而言之,我有一堆设置,变量等;我希望在我的一个大型项目中提供一堆Makefile。对于根级makefile来说,只需简单地源/包含文件就足够了。

但是,有些子项目使用sconsthe only documentation I found on the topic notes顶级sconscript需要创建向下传递变量到子项目。

我的目标是拥有一个充满变量的简单文件(主要是编译器的路径),并告诉scons只导入变量键/值对。 The one SO post I've found on this topic注意到文件必须是代码,而不是Makefile,所以我可能需要编写一个脚本来将Makefile转换为python代码。

1 个答案:

答案 0 :(得分:1)

如果您查看scons联机帮助页(http://scons.org/doc/production/HTML/scons-man.html搜索"变量(")

您将看到Variables()可以获取文件(python)。虽然它不可能解决你的问题。可以将该文件作为有效python和有效make的格式,高度依赖于当然的内容。

除此之外,解析一个简单的makefile应该相当简单,假设它的内容是这样的:

xyz = some values
abc := some other values

如果包含

xyz = some values
abc := $(xyz) and more

它将变得更加复杂。