From 0d20039cfd748cb0d91d3f878f2256550c9feb3e Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Tue, 31 Jan 2012 17:38:56 +0000 Subject: systemd-serialgetty: support machines without serial console Signed-off-by: Otavio Salvador Signed-off-by: Koen Kooi --- .../recipes-core/systemd/systemd-serialgetty.bb | 24 ++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'meta-oe/recipes-core') diff --git a/meta-oe/recipes-core/systemd/systemd-serialgetty.bb b/meta-oe/recipes-core/systemd/systemd-serialgetty.bb index 2b88d0c880..5b903a08c0 100644 --- a/meta-oe/recipes-core/systemd/systemd-serialgetty.bb +++ b/meta-oe/recipes-core/systemd/systemd-serialgetty.bb @@ -2,29 +2,37 @@ DESCRIPTION = "Systemd serial config" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=751419260aa954499f7abaabaa882bbe" -PR = "r1" +PR = "r2" SERIAL_CONSOLE ?= "115200 ttyS0" SRC_URI = "file://LICENSE \ file://serial-getty@.service" -def get_baudrate(bb, d): - return bb.data.getVar('SERIAL_CONSOLE', d, 1).split()[0] +def get_serial_console_value(d, index): + c = d.getVar('SERIAL_CONSOLE', True) -def get_console(bb, d): - return bb.data.getVar('SERIAL_CONSOLE', d, 1).split()[1] + if len(c): + return c.split()[index] + + return "" + +def get_baudrate(d): + return get_serial_console_value(d, 0) + +def get_console(d): + return get_serial_console_value(d, 1) do_install() { - if [ ! ${@get_baudrate(bb, d)} = "" ]; then - sed -i -e s/\@BAUDRATE\@/${@get_baudrate(bb, d)}/g ${WORKDIR}/serial-getty@.service + if [ ! ${@get_baudrate(d)} = "" ]; then + sed -i -e s/\@BAUDRATE\@/${@get_baudrate(d)}/g ${WORKDIR}/serial-getty@.service install -d ${D}${base_libdir}/systemd/system/ install -d ${D}${sysconfdir}/systemd/system/getty.target.wants/ install ${WORKDIR}/serial-getty@.service ${D}${base_libdir}/systemd/system/ # enable the service ln -sf ${base_libdir}/systemd/system/serial-getty@.service \ - ${D}${sysconfdir}/systemd/system/getty.target.wants/serial-getty@${@get_console(bb, d)}.service + ${D}${sysconfdir}/systemd/system/getty.target.wants/serial-getty@${@get_console(d)}.service fi } -- cgit 1.2.3-korg