aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended/lcdproc/lcdproc5.inc
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2012-10-07 10:47:38 +0000
committerKoen Kooi <koen@dominion.thruhere.net>2012-10-09 14:25:40 +0200
commitaee9bec6331c303d9a24351e1f8d5cf6b510ed7b (patch)
treea4f5f71662cbbed2749436a0246b9c578f43032e /meta-oe/recipes-extended/lcdproc/lcdproc5.inc
parentaff5f48fb89ae8427cbbd5341f3bd1d4e43582f6 (diff)
downloadmeta-openembedded-contrib-aee9bec6331c303d9a24351e1f8d5cf6b510ed7b.tar.gz
lcdproc: add recipe from OE-Classic and update/clean up
* Update to latest upstream version 0.5.5 * Add an Ubuntu patch to fix incompatibility with current automake * Use automatic package splitting for drivers * Allow specifying drivers to build via LCD_DRIVERS * Allow specifying default enabled driver via LCD_DEFAULT_DRIVER * Disable g15 driver by default (but allow it to be re-enabled using PACKAGECONFIG, assuming the required recipes are also provided). * Fix conf files not going into lcdvc and lcdd packages due to override expansion not happening at the expected time (for CONFFILES_*) * Remove some unnecessary cruft * Move packaging parts of recipe below do_install * Add LIC_FILES_CHKSUM * Make LICENSE more accurate * Add SUMMARY Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-extended/lcdproc/lcdproc5.inc')
-rw-r--r--meta-oe/recipes-extended/lcdproc/lcdproc5.inc77
1 files changed, 77 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/lcdproc/lcdproc5.inc b/meta-oe/recipes-extended/lcdproc/lcdproc5.inc
new file mode 100644
index 0000000000..50b6b0efb4
--- /dev/null
+++ b/meta-oe/recipes-extended/lcdproc/lcdproc5.inc
@@ -0,0 +1,77 @@
+DESCRIPTION = "LCDproc is a client/server suite to drive all kinds of LCD (-like) devices. The client \
+shipped with this package can be used to acquire various kinds of system stats."
+SUMMARY = "Drivers for character-based LCD displays"
+HOMEPAGE = "http://lcdproc.org"
+SECTION = "utils"
+LICENSE = "GPLv2+"
+DEPENDS = "virtual/libusb0 ncurses"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760 \
+ file://README;startline=60;md5=8237b4d4d80a525b15f8162192e07bee"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/lcdproc/${P}.tar.gz"
+
+inherit autotools update-rc.d
+
+LCD_DRIVERS ?= "all"
+LCD_DEFAULT_DRIVER ?= "curses"
+
+EXTRA_OECONF = "--enable-drivers=${LCD_DRIVERS} --enable-libusb"
+
+do_install () {
+ # binaries
+ install -D -m 0755 server/LCDd ${D}${sbindir}/LCDd
+ install -D -m 0755 clients/lcdproc/lcdproc ${D}${bindir}/lcdproc
+
+ # init scripts
+ install -d ${D}${sysconfdir}/init.d
+ # so far, not fixed :-( and now even uglier :-((
+ 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
+ chmod 0755 ${D}${sysconfdir}/init.d/lcdd
+ install -m 0755 scripts/init-lcdproc.debian ${D}${sysconfdir}/init.d/lcdproc
+ sed -i s'/--oknodo//' ${D}${sysconfdir}/init.d/lcdproc
+
+ # configuration files
+ install -m 0644 LCDd.conf ${D}${sysconfdir}/LCDd.conf
+ sed -i 's!^DriverPath=.*!DriverPath=${libdir}/lcdproc/!' ${D}${sysconfdir}/LCDd.conf
+ sed -i 's!^Driver=.*!Driver=${LCD_DEFAULT_DRIVER}!' ${D}${sysconfdir}/LCDd.conf
+ install -m 0644 clients/lcdproc/lcdproc.conf ${D}${sysconfdir}/lcdproc.conf
+
+ # driver library files
+ install -d ${D}${libdir}/lcdproc
+ for i in server/drivers/*.so; do
+ install -m 0644 $i ${D}${libdir}/lcdproc/
+ done
+}
+
+PACKAGES =+ "lcdd"
+
+RRECOMMENDS_${PN} = "lcdd"
+
+FILES_lcdd = "${sysconfdir}/LCDd.conf \
+ ${sbindir}/LCDd \
+ ${sysconfdir}/init.d/lcdd"
+
+CONFFILES_lcdd = "${sysconfdir}/LCDd.conf"
+CONFFILES_${PN} = "${sysconfdir}/lcdproc.conf"
+
+# Driver packages
+
+# USB / no USB trickery
+
+RCONFLICTS_lcdd-driver-hd47780nousb = "lcdd-driver-hd44780"
+RCONFLICTS_lcdd-driver-hd47780 = "lcdd-driver-hd44780nousb"
+
+INITSCRIPT_PACKAGES = "lcdd lcdproc"
+INITSCRIPT_NAME_lcdd = "lcdd"
+INITSCRIPT_NAME_lcdproc = "lcdproc"
+INITSCRIPT_PARAMS_lcdd = "defaults 70 21"
+INITSCRIPT_PARAMS_lcdproc = "defaults 71 20"
+
+python populate_packages_prepend() {
+ plugindir = d.expand('${libdir}/lcdproc')
+ do_split_packages(d, plugindir, '(.*)\.so$', 'lcdd-driver-%s', 'LCDd driver for %s', prepend=True)
+}
+
+PACKAGES_DYNAMIC = "lcdd-driver-*"
+