diff options
author | Robert Buchholz <rbu@gentoo.org> | 2007-02-18 23:02:56 +0000 |
---|---|---|
committer | Robert Buchholz <rbu@gentoo.org> | 2007-02-18 23:02:56 +0000 |
commit | 2ff711ac0458055024e5cfd7297b5a69d190015e (patch) | |
tree | 15eaecbc64bbaf4444a8d6cbbca0702b51e6d23b /app-misc/lcd4linux | |
parent | Stable for HPPA (bug #167201). (diff) | |
download | gentoo-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/ChangeLog | 11 | ||||
-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.patch | 38 | ||||
-rw-r--r-- | app-misc/lcd4linux/files/lcd4linux-0.10.0-null-driver.patch | 10 | ||||
-rw-r--r-- | app-misc/lcd4linux/files/lcd4linux-0.10.0.initd | 24 | ||||
-rw-r--r-- | app-misc/lcd4linux/lcd4linux-0.10.0-r1.ebuild | 157 | ||||
-rw-r--r-- | app-misc/lcd4linux/lcd4linux-0.10.0.ebuild | 118 | ||||
-rw-r--r-- | app-misc/lcd4linux/metadata.xml | 2 |
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> |