Python 如何为虚假目标定制构建决策逻辑,这并不';不涉及文件
我有一个目标,它需要一些时间昂贵的行动,并依赖于类似的时间昂贵的目标。它也是一个虚假的目标,因此它不依赖于源文件,也不生成文件。我想让SCON根据一些抽象值来决定何时构建这个目标 对我来说,最好使用SCON的功能,如:Python 如何为虚假目标定制构建决策逻辑,这并不';不涉及文件,python,scons,Python,Scons,我有一个目标,它需要一些时间昂贵的行动,并依赖于类似的时间昂贵的目标。它也是一个虚假的目标,因此它不依赖于源文件,也不生成文件。我想让SCON根据一些抽象值来决定何时构建这个目标 对我来说,最好使用SCON的功能,如: Value(值,[build\u Value])、env.Value(值,[build\u Value]) 。。。值节点可以用作目标的依赖项。如果调用str(value)的结果在SCON运行之间发生变化,则将重建依赖于value(value)的任何目标 所以我构建了这个SCons
Value(值,[build\u Value])、env.Value(值,[build\u Value])
。。。值节点可以用作目标的依赖项。如果调用str(value)的结果在SCON运行之间发生变化,则将重建依赖于value(value)的任何目标
所以我构建了这个SConstruct来测试它:
import random as rnd
env = Environment()
def action(**_):
print('Do crazy things')
input = env.Value('a')
env['BUILDERS']['Custom'] = Builder(action=action)
env.Custom(target='target', source=input)
env.Pseudo('target')
我希望SCON在第一次构建之后停止重建目标,因为在构建之间输入值的值保持不变。但斯科斯每次都会重建它
有什么方法可以实现我所说的吗?您也可以在这里的SCons用户邮件列表中看到相关的回复,因为作者也在那里发布了一个问题:它消耗了什么,产生了什么?一个具体的答案将有助于提供一个合理的解决方案。你也可以在这里的SCons用户邮件列表中看到相关的回复,因为作者也在那里发布了一个问题:它消耗了什么,产生了什么?具体的答案将有助于提供合理的解决办法。