1DESCRIPTION = "LCDproc is a client/server suite to drive all kinds of LCD (-like) devices. The client \ 2shipped with this package can be used to acquire various kinds of system stats." 3SUMMARY = "Drivers for character-based LCD displays" 4HOMEPAGE = "http://lcdproc.org" 5SECTION = "utils" 6LICENSE = "GPL-2.0-or-later" 7DEPENDS = "ncurses lirc" 8 9LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760 \ 10 file://README.md;beginline=107;md5=5db392f043253a2d64b1737068ce6b58" 11 12PV = "0.5.9+git${SRCPV}" 13SRCREV = "3a3d622d9bb74c44fa67bc20573751a207514134" 14SRC_URI = "git://github.com/lcdproc/lcdproc;branch=master;protocol=https \ 15 file://0001-Fix-parallel-build-fix-port-internal-make-dependenci.patch \ 16 file://0002-Include-limits.h-for-PATH_MAX-definition.patch \ 17 file://0003-Fix-non-x86-platforms-on-musl.patch \ 18 file://0001-Fix-compilation-with-GCC-10.x.patch \ 19 " 20 21S = "${WORKDIR}/git" 22 23inherit autotools pkgconfig update-rc.d 24 25LCD_DRIVERS ?= "all,!irman,!svga${SERIALVFD}" 26SERIALVFD ?= "" 27SERIALVFD:libc-musl = ",!serialVFD" 28SERIALVFD:libc-musl:x86 = "" 29SERIALVFD:libc-musl:x86-64 = "" 30 31LCD_DEFAULT_DRIVER ?= "curses" 32 33PACKAGECONFIG ??= "usb" 34PACKAGECONFIG[usb] = "--enable-libusb,--disable-libusb,virtual/libusb0" 35PACKAGECONFIG[ftdi] = "--enable-libftdi,--disable-libftdi,libftdi" 36PACKAGECONFIG[g15] = ",,libg15 g15daemon libg15render," 37PACKAGECONFIG[hid] = "--enable-libhid,--disable-libhid,libhid" 38PACKAGECONFIG[png] = "--enable-libpng,--disable-libpng,libpng" 39 40LCD_DRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'g15', '', ',!g15', d)}" 41 42EXTRA_OECONF = "--enable-drivers='${LCD_DRIVERS}'" 43 44do_install () { 45 # binaries 46 install -D -m 0755 server/LCDd ${D}${sbindir}/LCDd 47 install -D -m 0755 clients/lcdproc/lcdproc ${D}${bindir}/lcdproc 48 49 # init scripts 50 install -d ${D}${sysconfdir}/init.d 51 # so far, not fixed :-( and now even uglier :-(( 52 cat scripts/init-LCDd.debian | sed -e s'/--oknodo//' -e 's/ -s -f / -s 1 -f 1 /' -e 's/force-reload/force-restart/' -e 's/sleep 1/sleep 4/' > ${D}${sysconfdir}/init.d/lcdd 53 chmod 0755 ${D}${sysconfdir}/init.d/lcdd 54 install -m 0755 scripts/init-lcdproc.debian ${D}${sysconfdir}/init.d/lcdproc 55 sed -i s'/--oknodo//' ${D}${sysconfdir}/init.d/lcdproc 56 57 # configuration files 58 install -m 0644 ${S}/LCDd.conf ${D}${sysconfdir}/LCDd.conf 59 sed -i 's!^DriverPath=.*!DriverPath=${libdir}/lcdproc/!' ${D}${sysconfdir}/LCDd.conf 60 sed -i 's!^Driver=.*!Driver=${LCD_DEFAULT_DRIVER}!' ${D}${sysconfdir}/LCDd.conf 61 install -m 0644 ${S}/clients/lcdproc/lcdproc.conf ${D}${sysconfdir}/lcdproc.conf 62 63 # driver library files 64 install -d ${D}${libdir}/lcdproc 65 for i in server/drivers/*.so; do 66 install -m 0644 $i ${D}${libdir}/lcdproc/ 67 done 68 # binaries 69 install -D -m 0755 clients/lcdvc/lcdvc ${D}${sbindir}/lcdvc 70 71 # configuration files 72 install -D -m 0644 ${S}/clients/lcdvc/lcdvc.conf ${D}${sysconfdir}/lcdvc.conf 73} 74 75PACKAGES =+ "lcdd lcdvc" 76 77RRECOMMENDS:${PN} = "lcdd" 78 79FILES:lcdd = "${sysconfdir}/LCDd.conf \ 80 ${sbindir}/LCDd \ 81 ${sysconfdir}/init.d/lcdd" 82 83CONFFILES:lcdd = "${sysconfdir}/LCDd.conf" 84CONFFILES:${PN} = "${sysconfdir}/lcdproc.conf" 85CONFFILES:lcdvc = "${sysconfdir}/lcdvc.conf" 86FILES:lcdvc = "${sysconfdir}/lcdvc.conf ${sbindir}/lcdvc" 87 88# Driver packages 89 90# USB / no USB trickery 91 92RCONFLICTS:lcdd-driver-hd47780nousb = "lcdd-driver-hd44780" 93RCONFLICTS:lcdd-driver-hd47780 = "lcdd-driver-hd44780nousb" 94 95INITSCRIPT_PACKAGES = "lcdd lcdproc" 96INITSCRIPT_NAME:lcdd = "lcdd" 97INITSCRIPT_NAME:lcdproc = "lcdproc" 98INITSCRIPT_PARAMS:lcdd = "defaults 70 21" 99INITSCRIPT_PARAMS:lcdproc = "defaults 71 20" 100 101python populate_packages:prepend() { 102 plugindir = d.expand('${libdir}/lcdproc') 103 do_split_packages(d, plugindir, r'(.*)\.so$', 'lcdd-driver-%s', 'LCDd driver for %s', prepend=True) 104} 105 106PACKAGES_DYNAMIC += "^lcdd-driver-.*" 107