【发布时间】:2011-05-17 14:49:26
【问题描述】:
我有一个用 scons 构建的现有 C 库(该库有它自己的
征兵)。此代码现在包含由#ifdefs 控制的两个变体。如何
我是否告诉 scons 构建这个库的两个变体,可以并存
侧(以便应用程序可以链接到适当的变体)?
从概念上讲,它是这样的:
driver_sources = [ ... ]
env.Library('drivers', driver_sources)
env.Library('drivers_withflag', driver_sources,
CPPDEFINES += ['FLAG'])
SCons(可以理解)不喜欢将相同的源列表用于不同的 具有不同环境的输出,因为中间对象名称 冲突。
我不确定是否通过某种方式推导出一个新的来解决这个问题
drivers_withflag 对象的生成器,或者我是否应该包含我的库的
SConscript 两次用一些参数指定#defines(我可以把
每个变体都在其自己的构建目录中)。有什么建议吗?
【问题讨论】:
标签: scons