diff options
author | Markus Ullmann <jokey@gentoo.org> | 2006-10-11 21:16:26 +0000 |
---|---|---|
committer | Markus Ullmann <jokey@gentoo.org> | 2006-10-11 21:16:26 +0000 |
commit | caf2874cd0cb7c45a106ab9e60112ee62006dfd7 (patch) | |
tree | 0059849f6f52462b16bf1eea6c3af26e1b8c8960 /app-misc/lcdproc | |
parent | Remove obz from metadata due to retiring. (diff) | |
download | historical-caf2874cd0cb7c45a106ab9e60112ee62006dfd7.tar.gz historical-caf2874cd0cb7c45a106ab9e60112ee62006dfd7.tar.bz2 historical-caf2874cd0cb7c45a106ab9e60112ee62006dfd7.zip |
Fixing doc generation, adding CVS snapshot and new dep: g15
Package-Manager: portage-2.1.2_pre2-r7
Diffstat (limited to 'app-misc/lcdproc')
-rw-r--r-- | app-misc/lcdproc/ChangeLog | 15 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.4.5-LCDd.rc | 22 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.4.5-lcdproc.rc | 22 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.5.0-LCDd.rc | 21 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.5.0-docs-doctype.patch | 24 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.5.0-lcdproc.rc | 22 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.5.1_pre20061009-LCDd-conf-driver-path.patch | 11 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.5.1_pre20061009-LCDd.rc | 22 | ||||
-rw-r--r-- | app-misc/lcdproc/files/0.5.1_pre20061009-lcdproc.rc | 21 | ||||
-rw-r--r-- | app-misc/lcdproc/files/digest-lcdproc-0.5.0-r2 | 3 | ||||
-rw-r--r-- | app-misc/lcdproc/files/digest-lcdproc-0.5.1_pre20061009 | 3 | ||||
-rw-r--r-- | app-misc/lcdproc/lcdproc-0.5.0-r2.ebuild | 182 | ||||
-rw-r--r-- | app-misc/lcdproc/lcdproc-0.5.1_pre20061009.ebuild | 184 |
13 files changed, 551 insertions, 1 deletions
diff --git a/app-misc/lcdproc/ChangeLog b/app-misc/lcdproc/ChangeLog index 962cf33f4d8e..2c82ed299e56 100644 --- a/app-misc/lcdproc/ChangeLog +++ b/app-misc/lcdproc/ChangeLog @@ -1,6 +1,19 @@ # ChangeLog for app-misc/lcdproc # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/ChangeLog,v 1.33 2006/09/25 16:36:46 jokey Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/ChangeLog,v 1.34 2006/10/11 21:16:26 jokey Exp $ + +*lcdproc-0.5.1_pre20061009 (11 Oct 2006) +*lcdproc-0.5.0-r2 (11 Oct 2006) + + 11 Oct 2006; Markus Ullmann <jokey@gentoo.org> +files/0.4.5-lcdproc.rc, + +files/0.5.0-docs-doctype.patch, +files/0.5.0-LCDd.rc, + +files/0.5.0-lcdproc.rc, +files/0.4.5-LCDd.rc, + +files/0.5.1_pre20061009-LCDd.rc, + +files/0.5.1_pre20061009-LCDd-conf-driver-path.patch, + +files/0.5.1_pre20061009-lcdproc.rc, -files/lcdproc, + -lcdproc-0.5.0-r1.ebuild, +lcdproc-0.5.0-r2.ebuild, + +lcdproc-0.5.1_pre20061009.ebuild: + Fixing doc generation, adding CVS snapshot and new dep: g15 25 Sep 2006; <jokey@gentoo.org> lcdproc-0.4.5.ebuild, lcdproc-0.5.0-r1.ebuild: diff --git a/app-misc/lcdproc/files/0.4.5-LCDd.rc b/app-misc/lcdproc/files/0.4.5-LCDd.rc new file mode 100644 index 000000000000..e98247c28884 --- /dev/null +++ b/app-misc/lcdproc/files/0.4.5-LCDd.rc @@ -0,0 +1,22 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/files/0.4.5-LCDd.rc,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +depend() { + use net +} + +start() { + ebegin "Starting LCDd" + start-stop-daemon --start --quiet -m --pidfile /var/run/LCDd.pid \ + --background --exec /usr/sbin/LCDd -- -s -f -c /etc/LCDd.conf + sleep 1 + eend $? +} + +stop() { + ebegin "Stopping LCDd" + start-stop-daemon --stop --quiet --pidfile /var/run/LCDd.pid + eend $? +} diff --git a/app-misc/lcdproc/files/0.4.5-lcdproc.rc b/app-misc/lcdproc/files/0.4.5-lcdproc.rc new file mode 100644 index 000000000000..fcb079dda014 --- /dev/null +++ b/app-misc/lcdproc/files/0.4.5-lcdproc.rc @@ -0,0 +1,22 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/files/0.4.5-lcdproc.rc,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +depend(){ + need LCDd +} + +start() { + source /etc/lcdproc.conf + ebegin "Starting lcdproc" + start-stop-daemon --start --background \ + --exec /usr/bin/lcdproc -- ${SCREENS} + eend $? +} + +stop() { + ebegin "Stopping lcdproc" + start-stop-daemon --stop --exec /usr/bin/lcdproc + eend $? +} diff --git a/app-misc/lcdproc/files/0.5.0-LCDd.rc b/app-misc/lcdproc/files/0.5.0-LCDd.rc new file mode 100644 index 000000000000..d7a562d7c4e4 --- /dev/null +++ b/app-misc/lcdproc/files/0.5.0-LCDd.rc @@ -0,0 +1,21 @@ +#!/sbin/runscript +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/files/0.5.0-LCDd.rc,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +depend() { + use net +} + +start() { + ebegin "Starting LCDd" + start-stop-daemon --start --quiet -m --pidfile /var/run/LCDd.pid \ + --background --exec /usr/sbin/LCDd -- -s 1 -f 1 + eend $? "Failed to start LCDd. Did you remember to set a driver in /etc/LCDd.conf? See syslog for details." +} + +stop() { + ebegin "Stopping LCDd" + start-stop-daemon --stop --quiet --pidfile /var/run/LCDd.pid + eend $? +} diff --git a/app-misc/lcdproc/files/0.5.0-docs-doctype.patch b/app-misc/lcdproc/files/0.5.0-docs-doctype.patch new file mode 100644 index 000000000000..d38f7aeb9dc5 --- /dev/null +++ b/app-misc/lcdproc/files/0.5.0-docs-doctype.patch @@ -0,0 +1,24 @@ +diff -Nuar lcdproc-0.5.0.orig/docs/lcdproc-dev/lcdproc-dev.docbook lcdproc-0.5.0/docs/lcdproc-dev/lcdproc-dev.docbook +--- lcdproc-0.5.0.orig/docs/lcdproc-dev/lcdproc-dev.docbook 2006-03-28 16:01:37.000000000 +0200 ++++ lcdproc-0.5.0/docs/lcdproc-dev/lcdproc-dev.docbook 2006-10-02 16:47:37.000000000 +0200 +@@ -1,6 +1,6 @@ + <?xml version='1.0'?> +-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1//EN" +- "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd" [ ++<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" ++ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [ + <!ENTITY bookinfo SYSTEM "bookinfo.docbook"> + <!ENTITY introduction SYSTEM "introduction.docbook"> + <!ENTITY shared-files SYSTEM "shared-files.docbook"> +diff -Nuar lcdproc-0.5.0.orig/docs/lcdproc-user/lcdproc-user.docbook lcdproc-0.5.0/docs/lcdproc-user/lcdproc-user.docbook +--- lcdproc-0.5.0.orig/docs/lcdproc-user/lcdproc-user.docbook 2006-04-06 09:36:14.000000000 +0200 ++++ lcdproc-0.5.0/docs/lcdproc-user/lcdproc-user.docbook 2006-10-02 16:47:51.000000000 +0200 +@@ -1,6 +1,6 @@ + <?xml version='1.0'?> +-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1//EN" +- "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd" [ ++<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" ++ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [ + <!ENTITY bookinfo SYSTEM "bookinfo.docbook"> + <!ENTITY introduction SYSTEM "introduction.docbook"> + <!ENTITY how-to-obtain SYSTEM "how-to-obtain.docbook"> diff --git a/app-misc/lcdproc/files/0.5.0-lcdproc.rc b/app-misc/lcdproc/files/0.5.0-lcdproc.rc new file mode 100644 index 000000000000..8122477de9d6 --- /dev/null +++ b/app-misc/lcdproc/files/0.5.0-lcdproc.rc @@ -0,0 +1,22 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/files/0.5.0-lcdproc.rc,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +depend(){ + need LCDd +} + +start() { + source /etc/lcdproc.conf + ebegin "Starting lcdproc" + start-stop-daemon --start --background \ + --exec /usr/bin/lcdproc -- ${SCREENS} + eend $? +} + +stop() { + ebegin "Stopping lcdproc" + start-stop-daemon --stop --exec /usr/bin/lcdproc + eend $? +} diff --git a/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd-conf-driver-path.patch b/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd-conf-driver-path.patch new file mode 100644 index 000000000000..fcc66fc2c97a --- /dev/null +++ b/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd-conf-driver-path.patch @@ -0,0 +1,11 @@ +--- LCDd.conf.orig 2006-09-22 07:26:02.069860250 +0200 ++++ LCDd.conf 2006-09-22 07:26:12.458509500 +0200 +@@ -76,7 +76,7 @@ + # the driver modules and will thus not be able to + # function properly. + # NOTE: Always place a slash as last character ! +-DriverPath=server/drivers/ ++DriverPath=/usr/share/lcdproc/drivers/ + + # The "...Key=" lines define what the server does with keypresses that + # don't go to any client. diff --git a/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd.rc b/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd.rc new file mode 100644 index 000000000000..b64b26963f7d --- /dev/null +++ b/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd.rc @@ -0,0 +1,22 @@ +#!/sbin/runscript +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/files/0.5.1_pre20061009-LCDd.rc,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +depend() { + use net + use g15daemon +} + +start() { + ebegin "Starting LCDd" + start-stop-daemon --start --quiet -m --pidfile /var/run/LCDd.pid \ + --background --exec /usr/sbin/LCDd -- -s 1 -f + eend $? "Failed to start LCDd. Did you remember to set a driver in /etc/LCDd.conf? See syslog for details." +} + +stop() { + ebegin "Stopping LCDd" + start-stop-daemon --stop --quiet --pidfile /var/run/LCDd.pid + eend $? +} diff --git a/app-misc/lcdproc/files/0.5.1_pre20061009-lcdproc.rc b/app-misc/lcdproc/files/0.5.1_pre20061009-lcdproc.rc new file mode 100644 index 000000000000..0a75e68cdefb --- /dev/null +++ b/app-misc/lcdproc/files/0.5.1_pre20061009-lcdproc.rc @@ -0,0 +1,21 @@ +#!/sbin/runscript +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/files/0.5.1_pre20061009-lcdproc.rc,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +depend(){ + need LCDd +} + +start() { + ebegin "Starting lcdproc" + start-stop-daemon --start --background \ + --exec /usr/bin/lcdproc + eend $? +} + +stop() { + ebegin "Stopping lcdproc" + start-stop-daemon --stop --exec /usr/bin/lcdproc + eend $? +} diff --git a/app-misc/lcdproc/files/digest-lcdproc-0.5.0-r2 b/app-misc/lcdproc/files/digest-lcdproc-0.5.0-r2 new file mode 100644 index 000000000000..6fd0b99fd06c --- /dev/null +++ b/app-misc/lcdproc/files/digest-lcdproc-0.5.0-r2 @@ -0,0 +1,3 @@ +MD5 4b67e421c19063fa322611a849ab5b80 lcdproc-0.5.0.tar.gz 711118 +RMD160 44153db5fe24cc45aa1b7a4be8afb87a9cd58062 lcdproc-0.5.0.tar.gz 711118 +SHA256 a7567f3f68517008e68d15b33630f36ba539540fbb361a2f9c440ce2ceb8393b lcdproc-0.5.0.tar.gz 711118 diff --git a/app-misc/lcdproc/files/digest-lcdproc-0.5.1_pre20061009 b/app-misc/lcdproc/files/digest-lcdproc-0.5.1_pre20061009 new file mode 100644 index 000000000000..5cfa8255e9af --- /dev/null +++ b/app-misc/lcdproc/files/digest-lcdproc-0.5.1_pre20061009 @@ -0,0 +1,3 @@ +MD5 269b6e9addef7516018580aedb0f2a61 lcdproc-0.5.1_pre20061009.tar.gz 759348 +RMD160 c91556f7da8030fbbe9cdf06693fc42a04376d20 lcdproc-0.5.1_pre20061009.tar.gz 759348 +SHA256 864052b2c81dedbd3ed12126ebe85760150604f3576e501bc0c7d0b23d289b3d lcdproc-0.5.1_pre20061009.tar.gz 759348 diff --git a/app-misc/lcdproc/lcdproc-0.5.0-r2.ebuild b/app-misc/lcdproc/lcdproc-0.5.0-r2.ebuild new file mode 100644 index 000000000000..4195dff1325a --- /dev/null +++ b/app-misc/lcdproc/lcdproc-0.5.0-r2.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/lcdproc-0.5.0-r2.ebuild,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +inherit eutils flag-o-matic + +DESCRIPTION="Client/Server suite to drive all kinds of LCD (-like) devices" +HOMEPAGE="http://lcdproc.org/" +SRC_URI="mirror://sourceforge/lcdproc/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~x86" + +# general use keywords in first line, drivers in line 2 +IUSE="doc debug ldap nfs samba usb + graphlcd irman lirc ncurses svga ula200 xosd" + +DEPEND=" + doc? ( app-text/xmlto ) + ldap? ( net-nds/openldap ) + usb? ( dev-libs/libusb ) + + graphlcd? ( app-misc/graphlcd-base app-misc/glcdprocdriver ) + irman? ( media-libs/libirman ) + lirc? ( app-misc/lirc ) + ncurses? ( sys-libs/ncurses ) + svga? ( media-libs/svgalib ) + ula200? ( dev-embedded/libftdi dev-libs/libusb ) + xosd? ( x11-libs/xosd x11-libs/libX11 x11-libs/libXext ) " +RDEPEND=${DEPEND} + +USE_DRIVERS="curses glcdlib irman lirc svga ula200 xosd" +EXTRA_DRIVERS="bayrad CFontz CFontz633 CFontzPacket CwLnx \ + glk hd44780 icp_a106 imon IOWarrior joy lb216 lcdm001 \ + lcterm ms6931 mtc_s16209x MtxOrb NoritakeVFD pyramid sed1330 \ + sed1520 serialVFD sli stv5730 t6963 text tyan " +ALL_DRIVERS="${USE_DRIVERS} ${EXTRA_DRIVERS}" + + +# compatibility with 1.4-ebuild format +LCDPROC_DRIVERS=${LCDPROC_DRIVERS//,/ } + +# if no drivers or all are set, select the defaults +has all ${LCDPROC_DRIVERS} \ + && LCDPROC_DRIVERS="${EXTRA_DRIVERS}" +[ -z "${LCDPROC_DRIVERS}" ] \ + && LCDPROC_DRIVERS="${EXTRA_DRIVERS}" +has none ${LCDPROC_DRIVERS} \ + && LCDPROC_DRIVERS="" + +pkg_setup() { + + echo + einfo "If you are updating from lcdproc-0.4, note that the setup of drivers has changed:" + einfo "The drivers curses, glcdlib, irman, lirc, svga, ula200 and xosd are controlled by use flags." + einfo "All other drivers are built by default, or in respect to the env variable" + einfo "LCDPROC_DRIVERS which can be a space separated list. Example:" + einfo " LCDPROC_DRIVERS=\"text CFontz\" emerge lcdproc" + einfo "You can also set this variable in your make.conf." + echo + einfo "Possible choices for LCDPROC_DRIVERS are:" + einfo " bayrad CFontz CFontz633 CFontzPacket CwLnx glk hd44780 " + einfo " icp_a106 imon IOWarrior joy lb216 lcdm001 lcterm " + einfo " ms6931 mtc_s16209x MtxOrb NoritakeVFD pyramid sed1330 " + einfo " sed1520 serialVFD sli stv5730 t6963 text tyan" + einfo " 'all' if you want to include all drivers (default)." + einfo " 'none' will not include any extra drivers." + echo + + local FILTERED_DRIVERS + for driver in ${LCDPROC_DRIVERS}; do + if has ${driver} ${EXTRA_DRIVERS} ; then + FILTERED_DRIVERS="${FILTERED_DRIVERS} ${driver}" + else + eerror "The extra driver '${driver}' is not available or has to be enabled by a USE flag." + eerror "Please check your LCDPROC_DRIVERS-variable!" + echo + fi + done + LCDPROC_DRIVERS="${FILTERED_DRIVERS}" + + einfo "The following drivers will be built: " + echo + + # add use-flag specific drivers to LCDPROC_DRIVERS + use graphlcd && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} glcdlib" + use irman && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} irman" + use lirc && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} lirc" + use ncurses && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} curses" + use svga && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} svga" + use ula200 && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} ula200" + use xosd && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} xosd" + + for driver in ${ALL_DRIVERS}; do + has ${driver} ${LCDPROC_DRIVERS} && einfo $driver + if (! use usb) && (has ${driver} "CFontzPacket CwLnx pyramid"); then + ewarn "${driver} might not compile if you do not enable USE=\"usb\"" + fi + done +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}/${PV}-LCDd-conf-driver-path.patch" + if use doc; then + epatch "${FILESDIR}/${PV}-docs-doctype.patch" + fi +} + +src_compile() { + # avoid executable stack as mentioned + # in http://www.gentoo.org/proj/en/hardened/gnu-stack.xml + append-ldflags -Wl,-z,noexecstack + + # convert space separated LCDPROC_DRIVERS to comma separated COMMA_DRIVERS + local COMMA_DRIVERS + for driver in ${LCDPROC_DRIVERS}; do + if [ -z "${COMMA_DRIVERS}" ] ; then + COMMA_DRIVERS="${driver}" + else + COMMA_DRIVERS="${COMMA_DRIVERS},${driver}" + fi + done + + # CPPFLAGS to get CF-635 working + append-flags -DSEAMLESS_HBARS -DCFONTZ633_WRITE_DELAY=50 + + econf \ + $(use_enable debug) \ + $(use_enable ldap) \ + $(use_enable nfs stat-nfs) \ + $(use_enable samba stat-smbfs ) \ + $(use_enable usb libusb) \ + "--enable-drivers=${COMMA_DRIVERS}" \ + || die "configure failed" + + emake || die "make failed" + + if use doc; then + ebegin "Creating user documentation" + cd ${S}/docs/lcdproc-user + xmlto html lcdproc-user.docbook + eend 0 + ebegin "Creating dev documentation" + cd ${S}/docs/lcdproc-dev + xmlto html lcdproc-dev.docbook + eend 0 + fi +} + +src_install() { + dosbin server/LCDd + dobin clients/lcdproc/lcdproc clients/lcdexec/lcdexec + + insinto /usr/share/lcdproc/drivers + doins server/drivers/*.so + + insinto /usr/share/lcdproc/clients + doins clients/examples/*.pl + doins clients/metar/lcdmetar.pl + doins clients/headlines/lcdheadlines + + insinto /etc + doins LCDd.conf + doins scripts/lcdproc.conf + + newinitd "${FILESDIR}/${PV}-LCDd.rc" LCDd + newinitd "${FILESDIR}/${PV}-lcdproc.rc" lcdproc + + doman docs/*.1 docs/*.8 + dodoc README CREDITS ChangeLog INSTALL + dodoc docs/README.* docs/*.txt + + if use doc; then + insinto /usr/share/doc/${PF}/lcdproc-user + doins docs/lcdproc-user/*.html + insinto /usr/share/doc/${PF}/lcdproc-dev + doins docs/lcdproc-dev/*.html + fi +} diff --git a/app-misc/lcdproc/lcdproc-0.5.1_pre20061009.ebuild b/app-misc/lcdproc/lcdproc-0.5.1_pre20061009.ebuild new file mode 100644 index 000000000000..0ae4c45cd3b8 --- /dev/null +++ b/app-misc/lcdproc/lcdproc-0.5.1_pre20061009.ebuild @@ -0,0 +1,184 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/lcdproc/lcdproc-0.5.1_pre20061009.ebuild,v 1.1 2006/10/11 21:16:26 jokey Exp $ + +inherit eutils flag-o-matic + +DESCRIPTION="Client/Server suite to drive all kinds of LCD (-like) devices" +HOMEPAGE="http://lcdproc.org/" +# SRC_URI="mirror://sourceforge/lcdproc/${P}.tar.gz" +SRC_URI="http://thetruth.de/files/gentoo/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~x86" + +# general use keywords in first line, drivers in line 2 +IUSE="doc debug ldap nfs samba seamless-hbars usb + g15 graphlcd irman lirc ncurses svga ula200 xosd" + +DEPEND=" + doc? ( app-text/xmlto ) + ldap? ( net-nds/openldap ) + usb? ( dev-libs/libusb ) + + graphlcd? ( app-misc/graphlcd-base app-misc/glcdprocdriver ) + g15? ( app-misc/g15daemon dev-libs/libg15 >=dev-libs/libg15render-1.1.1 ) + irman? ( media-libs/libirman ) + lirc? ( app-misc/lirc ) + ncurses? ( sys-libs/ncurses ) + svga? ( media-libs/svgalib ) + ula200? ( dev-embedded/libftdi dev-libs/libusb ) + xosd? ( x11-libs/xosd x11-libs/libX11 x11-libs/libXext ) " +RDEPEND=${DEPEND} + +USE_DRIVERS="curses g15 glcdlib irman lirc svga ula200 xosd" +EXTRA_DRIVERS="bayrad CFontz CFontz633 CFontzPacket CwLnx EyeboxOne \ + glk hd44780 icp_a106 imon IOWarrior joy lb216 lcdm001 \ + lcterm ms6931 mtc_s16209x MtxOrb NoritakeVFD pyramid sed1330 \ + sed1520 serialVFD sli stv5730 t6963 text tyan " +ALL_DRIVERS="${USE_DRIVERS} ${EXTRA_DRIVERS}" + + +# compatibility with 1.4-ebuild format +LCDPROC_DRIVERS=${LCDPROC_DRIVERS//,/ } + +# if no drivers or all are set, select the defaults +has all ${LCDPROC_DRIVERS} \ + && LCDPROC_DRIVERS="${EXTRA_DRIVERS}" +[ -z "${LCDPROC_DRIVERS}" ] \ + && LCDPROC_DRIVERS="${EXTRA_DRIVERS}" +has none ${LCDPROC_DRIVERS} \ + && LCDPROC_DRIVERS="" + +S="${WORKDIR}/lcdproc-CVS-current-20061009" + +pkg_setup() { + echo + einfo "If you are updating from lcdproc-0.4, note that the setup of drivers has changed:" + einfo "The drivers curses, glcdlib, irman, lirc, svga, ula200 and xosd are controlled by use flags." + einfo "All other drivers are built by default, or in respect to the env variable" + einfo "LCDPROC_DRIVERS which can be a space separated list. Example:" + einfo " LCDPROC_DRIVERS=\"text CFontz\" emerge lcdproc" + einfo "You can also set this variable in your make.conf." + echo + einfo "Possible choices for LCDPROC_DRIVERS are:" + einfo " bayrad CFontz CFontz633 CFontzPacket CwLnx EyeboxOne glk " + einfo " hd44780 icp_a106 imon IOWarrior joy lb216 lcdm001 lcterm " + einfo " MD8800 ms6931 mtc_s16209x MtxOrb NoritakeVFD pyramid sed1330 " + einfo " sed1520 serialVFD sli stv5730 t6963 text tyan" + einfo " 'all' if you want to include all drivers (default)." + einfo " 'none' will not include any extra drivers." + echo + + local FILTERED_DRIVERS + for driver in ${LCDPROC_DRIVERS}; do + if has ${driver} ${EXTRA_DRIVERS} ; then + FILTERED_DRIVERS="${FILTERED_DRIVERS} ${driver}" + else + eerror "The extra driver '${driver}' is not available or has to be enabled by a USE flag." + eerror "Please check your LCDPROC_DRIVERS-variable!" + echo + fi + done + LCDPROC_DRIVERS="${FILTERED_DRIVERS}" + + # add use-flag specific drivers to LCDPROC_DRIVERS + use graphlcd && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} glcdlib" + use g15 && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} g15" + use irman && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} irman" + use lirc && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} lirc" + use ncurses && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} curses" + use svga && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} svga" + use ula200 && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} ula200" + use xosd && LCDPROC_DRIVERS="${LCDPROC_DRIVERS} xosd" + + einfo "The following drivers will be built: " + echo + + for driver in ${ALL_DRIVERS}; do + has ${driver} ${LCDPROC_DRIVERS} && einfo $driver + if (! use usb) && (has ${driver} "CFontzPacket CwLnx pyramid"); then + ewarn "${driver} might not compile if you do not enable USE=\"usb\"" + fi + done +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}/${PV}-LCDd-conf-driver-path.patch" +} + +src_compile() { + # avoid executable stack as mentioned + # in http://www.gentoo.org/proj/en/hardened/gnu-stack.xml + append-ldflags -Wl,-z,noexecstack + + # convert space separated LCDPROC_DRIVERS to comma separated COMMA_DRIVERS + local COMMA_DRIVERS + for driver in ${LCDPROC_DRIVERS}; do + if [ -z "${COMMA_DRIVERS}" ] ; then + COMMA_DRIVERS="${driver}" + else + COMMA_DRIVERS="${COMMA_DRIVERS},${driver}" + fi + done + + econf \ + $(use_enable debug) \ + $(use_enable ldap) \ + $(use_enable nfs stat-nfs) \ + $(use_enable samba stat-smbfs ) \ + $(use_enable seamless-hbars) \ + $(use_enable usb libusb) \ + "--enable-drivers=${COMMA_DRIVERS}" \ + || die "configure failed" + + emake || die "make failed" + + if use doc; then + ebegin "Creating user documentation" + cd ${S}/docs/lcdproc-user + xmlto html lcdproc-user.docbook + eend 0 + ebegin "Creating dev documentation" + cd ${S}/docs/lcdproc-dev + xmlto html lcdproc-dev.docbook + eend 0 + fi +} + +src_install() { + dosbin server/LCDd + dobin clients/lcdexec/lcdexec + dobin clients/lcdproc/lcdproc + dobin clients/lcdvc/lcdvc + + insinto /usr/share/lcdproc/drivers + doins server/drivers/*.so + + insinto /usr/share/lcdproc/clients + doins clients/examples/*.pl + doins clients/metar/lcdmetar.pl + + insinto /etc + doins LCDd.conf + doins clients/lcdexec/lcdexec.conf + doins clients/lcdproc/lcdproc.conf + doins clients/lcdvc/lcdvc.conf + + newinitd "${FILESDIR}/${PV}-LCDd.rc" LCDd + newinitd "${FILESDIR}/${PV}-lcdproc.rc" lcdproc + + doman docs/*.1 docs/*.5 docs/*.8 + dodoc README CREDITS ChangeLog INSTALL TODO + dodoc docs/README.* docs/*.txt + + if use doc; then + insinto /usr/share/doc/${PF}/lcdproc-user + doins docs/lcdproc-user/*.html + insinto /usr/share/doc/${PF}/lcdproc-dev + doins docs/lcdproc-dev/*.html + fi +} |