我经常遇到的一个问题autoconf
是初始化脚本。重点autoconf
当然是可移植性,各种初始化系统(sysvinit、systemd、upstart)——更不用说不同发行版(如/etc/init.d
vs /etc/rc.d/
vs /etc/rc.d/init.d
)上相同初始化系统之间的各种差异——都迫切需要可移植的启动/停止脚本解决方案。
我以为现在有人会创建一个很好的 m4 宏来处理这个问题,但我找不到。
这很奇怪,因为这似乎是一个常见问题,而且他们现在甚至有 m4 宏来检测更新的问题,例如 C++11 兼容性和其他问题。
因此,在我卷起袖子花时间制作一个(希望如此)体面的 m4 宏来尝试确定要使用的 init 系统之前,我很想知道其他人是否已经做得更好。我似乎在谷歌上找不到任何东西——我什至读过人们实际上不鼓励使用autoconf
安装初始化脚本的帖子。就个人而言,我认为这种观点是不切实际的——现在的用户已经习惯于包管理器自动安装初始化脚本,所以没有理由不应该在从源代码编译时得到相同的结果。
那么,是否已经有一个很好的 m4 宏可以处理这个问题,或者我应该花时间编写自己的宏吗?