我正在为一个大型软件项目使用 scons 实现构建系统。有一个目录结构将各个库和程序的代码分隔到它们自己的目录中。使用我们现有的 make 系统,我可以在单个程序目录中执行“make clean”,它只会清理与该目录中的源关联的文件。但是,如果我执行“scons -c”,它会识别出该程序依赖于同级(或表亲)目录中的大量库,并清理这些文件的所有文件。这不是我想要的,因为我必须重建所有这些库,这可能需要几分钟。
我尝试过使用“NoClean()”命令,但没有让它以我需要的方式工作。考虑到代码库的大小和目录结构的复杂性,我实际上不可能为每个库中的每个文件都有一个 NoClean() 行。
有没有办法告诉 scons 在进行清理时忽略当前目录之上的任何依赖项(即 scons -c)?