Makefile 和 pid 文件

Makefile 和 pid 文件

我在 Makefile 中有一些依赖于 pid 文件的便利规则,但有时当进程不存在时 pid 文件仍然存在。在 make 中解决这个问题的好模式是什么?

例如,如果我需要在 qemu 中运行某些内容(构建具有复杂的多体系结构要求):

$(QPID):
    qemu-system... -pidfile "$(QPID)" ... 

它工作正常,只启动 qemu 一次,然后在大多数系统上完美关闭,并且依赖于特定类型虚拟机的所有规则只需要依赖于正确的 pidfile 变量。但是对于 systemd 无法在关闭原因时正确向用户进程发出信号的情况,我不想陷入其中,因为它总是会演变成一场火焰大战……让我们接受:这些 pid 文件在系统重新启动期间存在,我必须以某种方式处理它。

检查 pid 文件内容以查看 pid 是否存在是很简单的。但make只关心文件存在与否。解决这个问题的好模式是什么?

相关内容