![Makefile 和 pid 文件](https://linux22.com/image/228090/Makefile%20%E5%92%8C%20pid%20%E6%96%87%E4%BB%B6.png)
我在 Makefile 中有一些依赖于 pid 文件的便利规则,但有时当进程不存在时 pid 文件仍然存在。在 make 中解决这个问题的好模式是什么?
例如,如果我需要在 qemu 中运行某些内容(构建具有复杂的多体系结构要求):
$(QPID):
qemu-system... -pidfile "$(QPID)" ...
它工作正常,只启动 qemu 一次,然后在大多数系统上完美关闭,并且依赖于特定类型虚拟机的所有规则只需要依赖于正确的 pidfile 变量。但是对于 systemd 无法在关闭原因时正确向用户进程发出信号的情况,我不想陷入其中,因为它总是会演变成一场火焰大战……让我们接受:这些 pid 文件在系统重新启动期间存在,我必须以某种方式处理它。
检查 pid 文件内容以查看 pid 是否存在是很简单的。但make
只关心文件存在与否。解决这个问题的好模式是什么?