1SUMMARY = "OpenBMC console daemon"
2DESCRIPTION = "Daemon to handle UART console connections"
3HOMEPAGE = "http://github.com/openbmc/obmc-console"
4PR = "r1"
5LICENSE = "Apache-2.0"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc"
7
8inherit autotools pkgconfig
9inherit obmc-phosphor-discovery-service
10inherit systemd
11
12S = "${WORKDIR}/git"
13
14TARGET_CFLAGS += "-fpic -O2"
15
16PACKAGECONFIG ??= "udev ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
17PACKAGECONFIG[udev] = "--with-udevdir=`pkg-config --variable=udevdir udev`,\
18                       --without-udevdir,udev"
19PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_system_unitdir}, \
20                          --without-systemdsystemunitdir"
21
22DEPENDS += "autoconf-archive-native \
23            systemd \
24           "
25
26SRC_URI += "git://github.com/openbmc/obmc-console"
27SRC_URI += "file://${BPN}.conf"
28
29SRCREV = "d802b11942abc8a4641976e70d567758ef0bbd58"
30PV = "1.0+git${SRCPV}"
31
32REGISTERED_SERVICES_${PN} += "obmc_console:tcp:2200:"
33
34SYSTEMD_SERVICE_${PN} += "obmc-console-ssh@.service \
35                obmc-console-ssh.socket \
36                obmc-console@.service \
37                "
38
39FILES_${PN} += "/lib/systemd/system/obmc-console-ssh@.service.d/use-socket.conf"
40
41do_install_append() {
42        # Install the server configuration
43        install -m 0755 -d ${D}${sysconfdir}/${BPN}
44        if test -f "${WORKDIR}/${BPN}.conf"; then
45                # Remove the upstream-provided server configuration
46                rm -f ${D}${sysconfdir}/${BPN}/server.ttyVUART0.conf
47                # Install the old-style server configuration
48                install -m 0644 ${WORKDIR}/${BPN}.conf ${D}${sysconfdir}/
49                # Link the custom configuration to the required location
50                ln -sr ${D}${sysconfdir}/${BPN}.conf ${D}${sysconfdir}/${BPN}/server.ttyVUART0.conf
51        elif test -f "${WORKDIR}/server.ttyVUART0.conf" ; then
52                # Remove the upstream-provided server configuration
53                rm -f ${D}${sysconfdir}/${BPN}/server.ttyVUART0.conf
54                # Install the package-provided new-style configuration
55                install -m 0644 ${WORKDIR}/server.ttyVUART0.conf ${D}${sysconfdir}/${BPN}/
56        else
57                # Otherwise, remove socket-id from the shipped configuration to
58                # align with the lack of a client configuration file
59                sed -ri '/^socket-id =/d' ${D}${sysconfdir}/${BPN}/server.ttyVUART0.conf
60        fi
61}
62