diff options
author | Chen Qi <Qi.Chen@windriver.com> | 2014-06-13 13:42:33 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-06-14 08:43:55 +0100 |
commit | 5d6ffdc47565cb7405edabcf8cb8ba1fe3c84f31 (patch) | |
tree | 4692aadc2af6f9458fd6f67647620b5f5267ef62 /meta/recipes-core | |
parent | a7d0c856db0ebc77a3feeb1a0c900ce116247e89 (diff) | |
download | poky-5d6ffdc47565cb7405edabcf8cb8ba1fe3c84f31.tar.gz |
busybox: handle syslog related files properly
If CONFIG_SYSLOGD is not enabled, then the related service file should
not be installed as it will always fail at system start-up. The error
message is as following.
[FAILED] Failed to start System Logging Service.
The same logic applies to CONFIG_KLOGD.
So we should first check the configuration before we install these
service files.
[YOCTO #5302]
(From OE-Core rev: b44e291a87539fbb8e6da1a16c56f425a417e7bd)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r-- | meta/recipes-core/busybox/busybox.inc | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc index f6cb039543..bd66e4f148 100644 --- a/meta/recipes-core/busybox/busybox.inc +++ b/meta/recipes-core/busybox/busybox.inc | |||
@@ -272,18 +272,21 @@ do_install () { | |||
272 | fi | 272 | fi |
273 | 273 | ||
274 | if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then | 274 | if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then |
275 | install -d ${D}${systemd_unitdir}/system | 275 | if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then |
276 | sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-syslog.service.in \ | 276 | install -d ${D}${systemd_unitdir}/system |
277 | > ${D}${systemd_unitdir}/system/busybox-syslog.service | 277 | sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-syslog.service.in \ |
278 | sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-klogd.service.in \ | 278 | > ${D}${systemd_unitdir}/system/busybox-syslog.service |
279 | > ${D}${systemd_unitdir}/system/busybox-klogd.service | 279 | if [ -f ${WORKDIR}/busybox-syslog.default ] ; then |
280 | 280 | install -d ${D}${sysconfdir}/default | |
281 | if [ -f ${WORKDIR}/busybox-syslog.default ] ; then | 281 | install -m 0644 ${WORKDIR}/busybox-syslog.default ${D}${sysconfdir}/default/busybox-syslog |
282 | install -d ${D}${sysconfdir}/default | 282 | fi |
283 | install -m 0644 ${WORKDIR}/busybox-syslog.default ${D}${sysconfdir}/default/busybox-syslog | 283 | ln -sf /dev/null ${D}${systemd_unitdir}/system/syslog.service |
284 | fi | ||
285 | if grep -q "CONFIG_KLOGD=y" ${B}/.config; then | ||
286 | install -d ${D}${systemd_unitdir}/system | ||
287 | sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-klogd.service.in \ | ||
288 | > ${D}${systemd_unitdir}/system/busybox-klogd.service | ||
284 | fi | 289 | fi |
285 | |||
286 | ln -sf /dev/null ${D}${systemd_unitdir}/system/syslog.service | ||
287 | fi | 290 | fi |
288 | 291 | ||
289 | # Remove the sysvinit specific configuration file for systemd systems to avoid confusion | 292 | # Remove the sysvinit specific configuration file for systemd systems to avoid confusion |