xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1SUMMARY = "Software watchdog"
2DESCRIPTION = "Watchdog is a daemon that checks if your system is still \
3working. If programs in user space are not longer executed \
4it will reboot the system."
5HOMEPAGE = "http://watchdog.sourceforge.net/"
6BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194"
7
8LICENSE = "GPL-2.0-or-later"
9LIC_FILES_CHKSUM = "file://COPYING;md5=084236108b1d4a9851bf5213fea586fd"
10
11SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz \
12           file://0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch \
13           file://watchdog.init \
14           file://wd_keepalive.init \
15           file://0001-wd_keepalive.service-use-run-instead-of-var-run.patch \
16           file://0001-shutdown-Do-not-guard-sys-quota.h-sys-swap.h-and-sys.patch \
17"
18
19SRC_URI[md5sum] = "1b4f51cabc64d1bee2fce7cdd626831f"
20SRC_URI[sha256sum] = "b8e7c070e1b72aee2663bdc13b5cc39f76c9232669cfbb1ac0adc7275a3b019d"
21
22# Can be dropped when the output next changes, avoids failures after
23# reproducibility issues
24PR = "r1"
25
26UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/"
27UPSTREAM_CHECK_REGEX = "/watchdog/(?P<pver>(\d+[\.\-_]*)+)/"
28
29inherit autotools update-rc.d systemd pkgconfig
30
31DEPENDS += "libtirpc"
32CFLAGS += "-I${STAGING_INCDIR}/tirpc"
33LDFLAGS += "-ltirpc"
34
35EXTRA_OECONF += " --disable-nfs "
36CACHED_CONFIGUREVARS += "ac_cv_path_PATH_SENDMAIL=${sbindir}/sendmail"
37
38INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive"
39
40INITSCRIPT_NAME:${PN} = "watchdog"
41INITSCRIPT_PARAMS:${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ."
42
43INITSCRIPT_NAME:${PN}-keepalive = "wd_keepalive"
44INITSCRIPT_PARAMS:${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ."
45
46SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive"
47SYSTEMD_SERVICE:${PN} = "watchdog.service"
48SYSTEMD_SERVICE:${PN}-keepalive = "wd_keepalive.service"
49# When using systemd, consider making use of internal watchdog support of systemd.
50# See RuntimeWatchdogSec in /etc/systemd/system.conf.
51SYSTEMD_AUTO_ENABLE = "disable"
52
53do_install:append() {
54	install -d ${D}${systemd_system_unitdir}
55	install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir}
56	install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir}
57
58	install -Dm 0755 ${WORKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog
59	install -Dm 0755 ${WORKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive
60
61	# watchdog.conf is provided by the watchdog-config recipe
62	rm ${D}${sysconfdir}/watchdog.conf
63}
64
65PACKAGES =+ "${PN}-keepalive"
66
67FILES:${PN}-keepalive = " \
68    ${sysconfdir}/init.d/wd_keepalive \
69    ${systemd_system_unitdir}/wd_keepalive.service \
70    ${sbindir}/wd_keepalive \
71"
72
73RDEPENDS:${PN} += "${PN}-config"
74RRECOMMENDS:${PN} += "kernel-module-softdog"
75
76RDEPENDS:${PN}-keepalive += "${PN}-config"
77RCONFLICTS:${PN}-keepalive += "${PN}"
78RRECOMMENDS:${PN}-keepalive += "kernel-module-softdog"
79