summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/busybox/busybox.inc
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2014-06-13 13:42:33 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-06-14 08:43:55 +0100
commit5d6ffdc47565cb7405edabcf8cb8ba1fe3c84f31 (patch)
tree4692aadc2af6f9458fd6f67647620b5f5267ef62 /meta/recipes-core/busybox/busybox.inc
parenta7d0c856db0ebc77a3feeb1a0c900ce116247e89 (diff)
downloadpoky-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/busybox/busybox.inc')
-rw-r--r--meta/recipes-core/busybox/busybox.inc25
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