我正在编写一个自定义生成器。有没有办法从 Builder 内部获取它正在构建的 variant_dir 的根路径?
也许是 env 上的一个属性?
或者可能来自目标节点?例如,如果在我的 Builder 中我有:
target[0].path --> path_to/my_variant_dir/subdir/target_file.txt
有没有办法确定哪个部分是 variant_dir 路径?
'path_to/my_variant_dir'
我正在编写一个自定义生成器。有没有办法从 Builder 内部获取它正在构建的 variant_dir 的根路径?
也许是 env 上的一个属性?
或者可能来自目标节点?例如,如果在我的 Builder 中我有:
target[0].path --> path_to/my_variant_dir/subdir/target_file.txt
有没有办法确定哪个部分是 variant_dir 路径?
'path_to/my_variant_dir'
您在对 SConscript() 的调用中指定变体目录,以便您可以将其存储在 env 中并稍后检索它。实际上,我以前出于不同的原因这样做过,如下所示:
var_dir = 'some_dir'
env['variant_dir'] = var_dir
SConscript('subdir/SConscript', variant_dir = env['variant_dir'], duplicate = 0)
...
def yourBuilderFunc(target, source, env):
# variant_dir is env['variant_dir']