我在 SCons 的并行构建中遇到了目录依赖问题。考虑以下(简化)层次结构中具有单个 SConstruct 的两个项目:
- SConstruct
- project1
- src
- project2
- src
- build
- project1
- project2
- dist
- project1
- project2
project1 和 project2 中的每一个都应该构建在相关的构建目录下(使用变体目录),并且需要在相关的 dist 目录下安装几个目标。
项目 2 依赖于项目 1 的 dist。我已经使用如下语句明确声明了这种依赖关系Depends()
:
Depends('project2', 'dist/project1')
当我使用非并行构建时,没有问题。项目 1 完全构建,目标安装在dist
目录中,然后才构建项目 2。但是,当我使用多个作业 (4) 时,项目 2 正在与正在运行的构建器同时构建,以便在项目 1 的目录Install()
中安装需要安装的文件。dist
所以,我的问题是:
- 该
Depends(project2, dist/project1)
语句是指目录的创建dist/project1
还是目录的所有子目录的构建完成? - 我应该如何解决这个问题?
非常感谢,
BUGOK。