python - 对 `scons -c` 执行自定义操作

标签 python makefile scons

我制作了一个 SCons 构建器,它将 Makefile 文件作为源并调用它来生成“东西”。

(主要是其他库编写的Makefile,所以我不必选择用SCons替换它)。

到目前为止,它运行良好,但现在我想让 scons -c 也能运行。

我的 MakefileCallBuilder 只有一个虚拟目标作为其目标,因此 scons -c 不会真正清理任何内容。

有没有办法告诉 SCons 我希望在清理时调用 make cleanmake 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/

相关文章:

python - 如何在没有默认Windows crlf的情况下生成py文件?

python - 能够使用 DFS 找到路径但不能指定 Pacman _ Python 的正确方向

python - 将文本文件内容解析为Python对象并将对象写回到可解析的文本文件中

android - 递归读取子目录中的 Android.mk 文件

c++ - g++ 编译时出现 undefined reference 错误

gcc - SCons:保存/重定向 gcc 文本输出(警告)

python - 全局更改记录器模块中的日志文件名

将 coretuils 编译为共享对象?

scons - 用SCons实现 'install'目标

c++ - “cl”未被识别为内部或外部命令