我制作了一个 SCons 构建器,它将 Makefile
文件作为源并调用它来生成“东西”。
(主要是其他库编写的Makefile,所以我不必选择用SCons替换它)。
到目前为止,它运行良好,但现在我想让 scons -c
也能运行。
我的 MakefileCallBuilder
只有一个虚拟目标作为其目标,因此 scons -c
不会真正清理任何内容。
有没有办法告诉 SCons 我希望在清理时调用 make clean
或 make distclean
?
最佳答案
由于这个问题,我一直在抓狂。我最终创建了一个有点粗糙但有效的解决方案。以下是 SConstruct 文件中进行清理的部分:
import subprocess
...
# Call make to clean
if env.GetOption('clean'):
subprocess.call(['make', 'clean'])
基本上,由于 Scons 不提供任何调用 make clean
的方法,我通过 Python 的 subprocess.call() 来完成它。
关于python - 对 `scons -c` 执行自定义操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12111273/