Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我制作了一个 SCons 构建器,它将Makefile文件作为源并调用它来生成“事物”。
Makefile
(主要是其他库写的Makefile,所以不用选择用SCons代替)。
到目前为止,它运作良好,但现在我也想做这项scons -c工作。
scons -c
我MakefileCallBuilder只有一个虚拟目标作为它的目标,所以scons -c不会真正清理任何东西。
MakefileCallBuilder
有没有办法告诉 SCons 我想要make clean或被make distclean要求进行清洁?
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() 来完成它。