将prebuild文件复制到build文件夹(SCons)

时间:2016-06-20 10:56:22

标签: scons

我想将(prebuild)文件从源文件夹复制到目标文件夹(variant_dir)。

这会导致依赖性循环:

Command('main.elf', 'main.elf', Copy("$TARGET", "$SOURCE"))

如何指定要复制的文件位于源文件夹(项目文件夹)中,目标位于构建文件夹中而不使用常量值(在SConscript中)?

作为解决方法,我重命名了文件:

Command('main.elf', 'main.orig', Copy("$TARGET", "$SOURCE"))

1 个答案:

答案 0 :(得分:0)

这应该是您想要做的正确语法:

Command('main.elf', 'main.elf', Copy("$TARGET", "${SOURCE.srcpath}"))

请参阅:http://scons.org/doc/production/HTML/scons-man.html并搜索srcpath以查看有关替换的部分。

那说你真正要求的是复制=部分。我不确定这是否有效。

您可以在工具的命令行中使用完整路径指定elf文件吗?

Command('main.elf', 'main.elf',"my_tool $TARGET ${SOURCE.srcpath}")

或同等的?