summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Buchholz <rbu@gentoo.org>2007-02-18 23:02:56 +0000
committerRobert Buchholz <rbu@gentoo.org>2007-02-18 23:02:56 +0000
commit2ff711ac0458055024e5cfd7297b5a69d190015e (patch)
tree15eaecbc64bbaf4444a8d6cbbca0702b51e6d23b /app-misc/lcd4linux
parentStable for HPPA (bug #167201). (diff)
downloadgentoo-2-2ff711ac0458055024e5cfd7297b5a69d190015e.tar.gz
gentoo-2-2ff711ac0458055024e5cfd7297b5a69d190015e.tar.bz2
gentoo-2-2ff711ac0458055024e5cfd7297b5a69d190015e.zip
Introducing LCD_DEVICES, move of config file, code should compile on non-x86 again, new init-script and other fixes
(Portage version: 2.1.2-r9)
Diffstat (limited to 'app-misc/lcd4linux')
-rw-r--r--app-misc/lcd4linux/ChangeLog11
-rw-r--r--app-misc/lcd4linux/files/digest-lcd4linux-0.10.0-r1 (renamed from app-misc/lcd4linux/files/digest-lcd4linux-0.10.0)0
-rw-r--r--app-misc/lcd4linux/files/lcd4linux-0.10.0-no-x86-asm.patch38
-rw-r--r--app-misc/lcd4linux/files/lcd4linux-0.10.0-null-driver.patch10
-rw-r--r--app-misc/lcd4linux/files/lcd4linux-0.10.0.initd24
-rw-r--r--app-misc/lcd4linux/lcd4linux-0.10.0-r1.ebuild157
-rw-r--r--app-misc/lcd4linux/lcd4linux-0.10.0.ebuild118
-rw-r--r--app-misc/lcd4linux/metadata.xml2
8 files changed, 240 insertions, 120 deletions
diff --git a/app-misc/lcd4linux/ChangeLog b/app-misc/lcd4linux/ChangeLog
index 774e6512f53d..f694c320ada5 100644
--- a/app-misc/lcd4linux/ChangeLog
+++ b/app-misc/lcd4linux/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for app-misc/lcd4linux
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-misc/lcd4linux/ChangeLog,v 1.21 2007/01/07 01:51:37 rbu Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-misc/lcd4linux/ChangeLog,v 1.22 2007/02/18 23:02:56 rbu Exp $
+
+*lcd4linux-0.10.0-r1 (18 Feb 2007)
+
+ 18 Feb 2007; Robert Buchholz <rbu@gentoo.org>
+ +files/lcd4linux-0.10.0-no-x86-asm.patch,
+ +files/lcd4linux-0.10.0-null-driver.patch, +files/lcd4linux-0.10.0.initd,
+ metadata.xml, -lcd4linux-0.10.0.ebuild, +lcd4linux-0.10.0-r1.ebuild:
+ Introducing LCD_DEVICES, move of config file, code should compile on non-x86
+ again, new init-script and other fixes
07 Jan 2007; Robert Buchholz <rbu@gentoo.org> lcd4linux-0.10.0.ebuild:
uses elog, whitespace fix
diff --git a/app-misc/lcd4linux/files/digest-lcd4linux-0.10.0 b/app-misc/lcd4linux/files/digest-lcd4linux-0.10.0-r1
index de6c25a79ec2..de6c25a79ec2 100644
--- a/app-misc/lcd4linux/files/digest-lcd4linux-0.10.0
+++ b/app-misc/lcd4linux/files/digest-lcd4linux-0.10.0-r1
diff --git a/app-misc/lcd4linux/files/lcd4linux-0.10.0-no-x86-asm.patch b/app-misc/lcd4linux/files/lcd4linux-0.10.0-no-x86-asm.patch
new file mode 100644
index 000000000000..ca727ae3ed7c
--- /dev/null
+++ b/app-misc/lcd4linux/files/lcd4linux-0.10.0-no-x86-asm.patch
@@ -0,0 +1,38 @@
+Upstream patch
+
+"Fixing bug #1494773 (compiles only on i368/amd64 machines) by providing a dummy implementation for other archs "
+See http://sourceforge.net/tracker/index.php?func=detail&aid=1494773&group_id=1310&atid=101310
+
+===================================================================
+--- ./udelay.h (revision 600)
++++ ./udelay.h (revision 712)
+@@ -1,3 +1,3 @@
+-/* $Id: lcd4linux-0.10.0-no-x86-asm.patch,v 1.1 2007/02/18 23:02:56 rbu Exp $
++/* $Id: lcd4linux-0.10.0-no-x86-asm.patch,v 1.1 2007/02/18 23:02:56 rbu Exp $
+ *
+ * short delays
+@@ -24,4 +24,7 @@
+ *
+ * $Log: lcd4linux-0.10.0-no-x86-asm.patch,v $
+ * Revision 1.1 2007/02/18 23:02:56 rbu
+ * Introducing LCD_DEVICES, move of config file, code should compile on non-x86 again, new init-script and other fixes
+ * (Portage version: 2.1.2-r9)
+ *
++ * Revision 1.12 2006/09/13 20:07:59 entropy
++ * Fixing bug #1494773 (compiles only on i368/amd64 machines) by providing a dummy implementation for other archs
++ *
+ * Revision 1.11 2005/12/12 09:08:08 reinelt
+ * finally removed old udelay code path; read timing values from config
+@@ -80,5 +83,12 @@
+ static inline void rep_nop(void)
+ {
++# if defined(__i386) || defined(__i386__) || defined(__AMD64__) || defined(__x86_64__) || defined(__amd64__)
++ /* intel or amd64 arch, the "rep" and "nop" opcodes are available */
+ __asm__ __volatile__("rep; nop");
++# else
++ /* other Arch, maybe add core cooldown code here, too. */
++ do {
++ } while (0);
++# endif
+ }
+
diff --git a/app-misc/lcd4linux/files/lcd4linux-0.10.0-null-driver.patch b/app-misc/lcd4linux/files/lcd4linux-0.10.0-null-driver.patch
new file mode 100644
index 000000000000..f9be4e69e155
--- /dev/null
+++ b/app-misc/lcd4linux/files/lcd4linux-0.10.0-null-driver.patch
@@ -0,0 +1,10 @@
+--- configure.orig 2007-01-16 03:58:31.000000000 +0100
++++ configure 2007-01-16 03:59:10.000000000 +0100
+@@ -6132,6 +6132,7 @@
+
+ if test "$NULL" = "yes"; then
+ DRIVERS="$DRIVERS drv_NULL.o"
++ TEXT="yes"
+
+ cat >>confdefs.h <<\_ACEOF
+ #define WITH_NULL 1
diff --git a/app-misc/lcd4linux/files/lcd4linux-0.10.0.initd b/app-misc/lcd4linux/files/lcd4linux-0.10.0.initd
new file mode 100644
index 000000000000..02a051b71b3b
--- /dev/null
+++ b/app-misc/lcd4linux/files/lcd4linux-0.10.0.initd
@@ -0,0 +1,24 @@
+#!/sbin/runscript
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-misc/lcd4linux/files/lcd4linux-0.10.0.initd,v 1.1 2007/02/18 23:02:56 rbu Exp $
+
+PIDFILE=/var/run/lcd4linux.pid
+DAEMON=/usr/bin/lcd4linux
+
+depend() {
+ use net
+}
+
+start() {
+ ebegin "Starting lcd4linux"
+ start-stop-daemon --start --quiet --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON}
+ eend $? "Failed to start lcd4linux. Did you remember to set up /etc/lcd4linux.conf?"
+}
+
+stop() {
+ ebegin "Stopping lcd4linux"
+ start-stop-daemon --stop --quiet --oknodo --exec ${DAEMON} --pidfile ${PIDFILE}
+ eend $?
+}
+
diff --git a/app-misc/lcd4linux/lcd4linux-0.10.0-r1.ebuild b/app-misc/lcd4linux/lcd4linux-0.10.0-r1.ebuild
new file mode 100644
index 000000000000..9c9ad96957cf
--- /dev/null
+++ b/app-misc/lcd4linux/lcd4linux-0.10.0-r1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-misc/lcd4linux/lcd4linux-0.10.0-r1.ebuild,v 1.1 2007/02/18 23:02:56 rbu Exp $
+
+inherit eutils
+
+DESCRIPTION="Shows system and ISDN information on an external display or in a X11 window"
+HOMEPAGE="http://ssl.bulix.org/projects/${PN}"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+
+IUSE="mysql"
+
+# The following array holds the USE_EXPANDed keywords
+IUSE_LCD_DEVICES=(beckmannegle bwct cfontz ncurses cwlinux
+ hd44780 lcdlinux lcdterm m50530 mtxorb
+ milfordbpk noritake null png ppm
+ routerboard serdisplib simplelcd t6963 trefon
+ usblcd X)
+
+# Iterate through the array and add the lcd_devices_* that we support
+NUM_DEVICES=${#IUSE_LCD_DEVICES[@]}
+index=0
+while [ "${index}" -lt "${NUM_DEVICES}" ] ; do
+ IUSE="${IUSE} lcd_devices_${IUSE_LCD_DEVICES[$index]}"
+ let "index = ${index} + 1"
+done
+
+DEPEND="
+ mysql? ( virtual/mysql )
+
+ lcd_devices_bwct? ( dev-libs/libusb )
+ lcd_devices_trefon? ( dev-libs/libusb )
+ lcd_devices_usblcd? ( dev-libs/libusb )
+ lcd_devices_ncurses? ( sys-libs/ncurses )
+ lcd_devices_noritake? ( media-libs/gd )
+ lcd_devices_t6963? ( media-libs/gd )
+ lcd_devices_png? ( media-libs/libpng media-libs/gd )
+ lcd_devices_X? ( x11-libs/libX11 media-libs/gd )
+ lcd_devices_serdisplib? ( dev-libs/serdisplib media-libs/gd )"
+# python support is b0rked, waiting for upstream release to fix
+# python? ( dev-lang/python )
+
+
+pkg_setup() {
+ elog "If you wish to compile only specific plugins, please use"
+ elog "the LCD4LINUX_PLUGINS environment variable. Plugins must be comma separated and can be either of:"
+ elog "apm cpuinfo diskstats dvb exec i2c_sensors imon isdn loadavg meminfo netdev pop3 ppp proc_stat sample seti statfs uname uptime wireless"
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}/${P}-kernel2.6.19.patch"
+ epatch "${FILESDIR}/${P}-gcc4-compat.patch"
+ epatch "${FILESDIR}/${P}-null-driver.patch"
+}
+
+src_compile() {
+ # This array contains the driver names required by configure --with-drivers=
+ # The positions must be the same as the corresponding use_expand flags
+ local DEVICE_DRIVERS=(BeckmannEgle BWCT CrystalFontz Curses Cwlinux
+ HD44780 LCDLinux LCDTerm M50530 MatrixOrbital
+ MilfordInstruments Noritake NULL PNG PPM
+ RouterBoard serdisplib SimpleLCD T6963 Trefon
+ USBLCD X11)
+
+ local myconf myp
+
+ # need to grab upstream's *.m4 and fix python building
+ # they didn't have python properly set up originally.
+ #myconf="${myconf} $(use_with python)"
+ myconf="${myconf} --without-python"
+
+
+ # plugins
+ if [ -n "$LCD4LINUX_PLUGINS" ]; then
+ myp="$LCD4LINUX_PLUGINS"
+ use mysql || myp="${myp},!mysql"
+ myp="${myp},!python"
+ #use python || myp="${myp},!python"
+ elog "Active plugins (overridden): ${myp}"
+ else
+ myp="all"
+ use mysql || myp="${myp},!mysql"
+ #use python || myp="${myp},!python"
+ myp="${myp},!python"
+ elog "Active plugins: ${myp}"
+ fi
+
+ # Generate comma separated list of drivers
+ local COMMA_DRIVERS
+ local FIRST_DRIVER
+ local index=0
+ local driver
+
+ while [ "${index}" -lt "${NUM_DEVICES}" ] ; do
+ if use "lcd_devices_${IUSE_LCD_DEVICES[$index]}" ; then
+ driver=${DEVICE_DRIVERS[$index]}
+ if [ -z ${COMMA_DRIVERS} ] ; then
+ # First in the list
+ COMMA_DRIVERS="${driver}"
+ FIRST_DRIVER="${driver}"
+ else
+ # Second, third, ... include a comma at the front
+ COMMA_DRIVERS="${COMMA_DRIVERS},${driver}"
+ fi
+ fi
+ let "index = ${index} + 1"
+ done
+
+ # activate at least one driver
+ if [ -z ${COMMA_DRIVERS} ] ; then
+ COMMA_DRIVERS="NULL"
+ fi
+
+ # avoid package brokenness
+ use lcd_devices_X && myconf="${myconf} --x-libraries=/usr/lib --x-include=/usr/include"
+ use lcd_devices_X || myconf="${myconf} --without-x"
+
+ econf \
+ --sysconfdir=/etc/lcd4linux \
+ --with-drivers="${COMMA_DRIVERS}" \
+ --with-plugins="${myp}" \
+ ${myconf} \
+ || die "econf failed"
+
+ sed -i.orig -e 's/-L -lX11/ -lX11 /g' Makefile || die "sed fixup failed"
+
+ emake || die "make failed"
+}
+
+src_install() {
+ # upstream's makefile acts weird, and tries to recompile stuff
+ dobin lcd4linux
+
+ dodoc README* NEWS TODO CREDITS FAQ AUTHORS ChangeLog
+
+ newinitd "${FILESDIR}/${P}.initd" ${PN}
+
+ insinto /etc
+ insopts -o root -g root -m 0600
+ newins lcd4linux.conf.sample lcd4linux.conf
+}
+
+pkg_postinst() {
+ if use lcd_devices_lcdlinux; then
+ ewarn "To actually use the lcd-linux devices, you will need to install the lcd-linux kernel module."
+ ewarn "You can either do that yourself, see http://lcd-linux.sf.net or "
+ ewarn "checkout http://overlays.gentoo.org/dev/jokey/browser/trunk and emerge app-misc/lcd-linux"
+ fi
+ ewarn "If you are upgrading, please note that the default config file was moved to /etc/lcd4linux.conf"
+}
diff --git a/app-misc/lcd4linux/lcd4linux-0.10.0.ebuild b/app-misc/lcd4linux/lcd4linux-0.10.0.ebuild
deleted file mode 100644
index 51fa6ab4461f..000000000000
--- a/app-misc/lcd4linux/lcd4linux-0.10.0.ebuild
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-misc/lcd4linux/lcd4linux-0.10.0.ebuild,v 1.7 2007/01/07 01:51:37 rbu Exp $
-
-inherit eutils
-
-DESCRIPTION="Shows system and ISDN information on an external display or in a X11 window"
-HOMEPAGE="http://ssl.bulix.org/projects/lcd4linux/"
-SRC_URI="mirror://sourceforge/lcd4linux/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-# contains x86 asm, upstream is working on a portable version
-KEYWORDS="~x86"
-IUSE="kde png serdisp X usb mysql python"
-
-DEPEND="png? ( media-libs/libpng
- media-libs/gd )
- X? ( x11-libs/libX11 )
- usb? ( dev-libs/libusb )
- serdisp? ( dev-libs/serdisplib )
- mysql? ( virtual/mysql )"
-# python? ( dev-lang/python )
-# mpd is needed soon
-# python is broken
-
-pkg_preinst() {
- elog "If you wish to compile only specific drivers or plugins, please use"
- elog "the LCD4LINUX_PLUGINS and LCD4LINUX_DRIVERS environment variables."
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- epatch "${FILESDIR}/${P}-kernel2.6.19.patch"
- epatch "${FILESDIR}/${P}-gcc4-compat.patch"
-}
-
-src_compile() {
- local myconf myp myd
-
- # need to grab upstream's *.m4 and fix python building
- # they didn't have python properly set up originally.
- #myconf="${myconf} $(use_with python)"
- myconf="${myconf} --without-python"
-
- # plugins
- if [ -n "$LCD4LINUX_PLUGINS" ]; then
- myp="$LCD4LINUX_PLUGINS"
- elog "Active plugins (overridden): ${myp}"
- else
- myp="all"
- use mysql || myp="${myp},!mysql"
- #use python || myp="${myp},!python"
- myp="${myp},!python"
- elog "Active plugins: ${myp}"
- fi
-
- # drivers
- if [ -n "$LCD4LINUX_DRIVERS" ]; then
- myd="$LCD4LINUX_DRIVERS"
- elog "Active drivers (overridden): ${myd}"
- else
- myd="all"
- use serdisp || myd="${myd},!serdisplib"
- use usb || myd="${myd},!USBLCD"
- use png || myd="${myd},!PNG"
- use X || myd="${myd},!X11"
- elog "Active drivers: ${myd}"
- fi
-
- # avoid package brokenness
- use X && myconf="${myconf} --x-libraries=/usr/lib --x-include=/usr/include"
- use X || myconf="${myconf} --without-x"
-
- econf \
- --sysconfdir=/etc/lcd4linux \
- --with-drivers="${myd}" \
- --with-plugins="${myp}" \
- ${myconf} \
- || die "econf failed"
-
- sed -i.orig -e 's,-L -lX11, -lX11 ,g' Makefile || die "sed fixup failed"
-
- emake || die
-}
-
-src_install() {
- # upstream's makefile acts weird, and tries to recompile stuff
- into /usr
- dobin lcd4linux
-
- dodoc README* NEWS TODO CREDITS FAQ AUTHORS ChangeLog
-
- #newconfd ${FILESDIR}/${PN}.confd ${PN}
- #newinitd ${FILESDIR}/${PN}.initd ${PN}
-
- dodir /etc/lcd4linux
-
- if use X || use kde; then
- insinto /usr/share/pixmaps
- doins lcd4linux.xpm
- fi
- use X && touch ${D}/etc/lcd4linux/lcd4X11.conf
-
- if use kde ; then
- insinto /usr/share/applnk/apps/System
- doins lcd4linux.kdelnk
- insinto /etc/lcd4linux
- insopts -o root -g root -m 0600
- doins lcd4kde.conf
- fi
-
- insinto /etc/lcd4linux
- insopts -o root -g root -m 0600
- newins lcd4linux.conf.sample lcd4linux.conf
-}
diff --git a/app-misc/lcd4linux/metadata.xml b/app-misc/lcd4linux/metadata.xml
index dce4644a99be..ad12036a061b 100644
--- a/app-misc/lcd4linux/metadata.xml
+++ b/app-misc/lcd4linux/metadata.xml
@@ -3,7 +3,7 @@
<pkgmetadata>
<herd>lcd</herd>
<maintainer>
- <email>rob@thetruth.de</email>
+ <email>rbu@gentoo.org</email>
<name>Robert Buchholz</name>
</maintainer>
</pkgmetadata>