summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-misc/lcd4linux/lcd4linux-0.10.1_rc2-r3.ebuild')
-rw-r--r--app-misc/lcd4linux/lcd4linux-0.10.1_rc2-r3.ebuild175
1 files changed, 175 insertions, 0 deletions
diff --git a/app-misc/lcd4linux/lcd4linux-0.10.1_rc2-r3.ebuild b/app-misc/lcd4linux/lcd4linux-0.10.1_rc2-r3.ebuild
new file mode 100644
index 000000000000..ab108066bee0
--- /dev/null
+++ b/app-misc/lcd4linux/lcd4linux-0.10.1_rc2-r3.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+WANT_AUTOMAKE="1.9"
+inherit eutils multilib autotools python-single-r1
+
+MY_P=${P/_rc/-RC}
+
+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://gentoo/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE="mysql python iconv mpd"
+
+# The following array holds the USE_EXPANDed keywords
+IUSE_LCD_DEVICES=(beckmannegle bwct cfontz ncurses cwlinux
+ ea232 g15 hd44780 hd44780i2c lcd2usb
+ lcdlinux lcdterm ledmatrix lph7508 m50530
+ mtxorb milfordbpk noritake null picolcd
+ png ppm routerboard serdisplib simplelcd
+ t6963 trefon usbhub usblcd wincor
+ X luise)
+
+# 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 )
+ iconv? ( virtual/libiconv )
+ mpd? ( media-libs/libmpd )
+
+ lcd_devices_bwct? ( =virtual/libusb-0* )
+ lcd_devices_g15? ( =virtual/libusb-0* )
+ lcd_devices_lcd2usb? ( =virtual/libusb-0* )
+ lcd_devices_picolcd? ( =virtual/libusb-0* )
+ lcd_devices_trefon? ( =virtual/libusb-0* )
+ lcd_devices_usbhub? ( =virtual/libusb-0* )
+ lcd_devices_usblcd? ( =virtual/libusb-0* )
+ lcd_devices_luise? ( dev-libs/luise-bin )
+ 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 )
+"
+RDEPEND="${DEPEND}
+ python? ( ${PYTHON_DEPS} )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+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 file i2c_sensors imon isdn kvv loadavg meminfo netdev pop3 ppp proc_stat seti statfs uname uptime wireless"
+
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-warnings.patch"
+ epatch "${FILESDIR}/${P}-mpd.patch"
+ epatch "${FILESDIR}/${P}-nordtsc.patch"
+ epatch "${FILESDIR}/${P}-autoconf-2.65.patch"
+ epatch "${FILESDIR}/${P}-missing-header.patch"
+ epatch "${FILESDIR}/${P}-usbdebug.patch"
+ eautoreconf
+}
+
+src_configure() {
+ # 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
+ EA232graphic G15 HD44780 HD44780-I2C LCD2USB
+ LCDLinux LCDTerm LEDMatrix LPH7508 M50530
+ MatrixOrbital MilfordInstruments Noritake NULL picoLCD
+ PNG PPM RouterBoard serdisplib SimpleLCD
+ T6963 Trefon USBHUB USBLCD WincorNixdorf
+ X11 LUIse)
+
+ local myconf myp
+
+ # plugins
+ if [ -n "$LCD4LINUX_PLUGINS" ]; then
+ myp="$LCD4LINUX_PLUGINS"
+ else
+ myp="all,!xmms"
+ fi
+ use iconv || myp="${myp},!iconv"
+ use mpd || myp="${myp},!mpd"
+ use mysql || myp="${myp},!mysql"
+ use python || myp="${myp},!python"
+ elog "Active plugins: ${myp}"
+
+ # 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
+
+ # workaround the build failing because of b0rked settings
+ if use lcd_devices_hd44780 && use lcd_devices_hd44780i2c ; then
+ echo
+ ewarn "Disabling hd44780 LCD_DEVICE as hd44780i2c is set!"
+ echo
+ COMMA_DRIVERS="${COMMA_DRIVERS},!HD44780"
+ fi
+
+ # avoid package brokenness
+ if use lcd_devices_X ; then
+ myconf="--x-libraries=/usr/$(get_libdir) --x-include=/usr/include"
+ else
+ myconf="--without-x"
+ fi
+
+ econf \
+ --sysconfdir=/etc/lcd4linux \
+ --with-drivers="${COMMA_DRIVERS}" \
+ --with-plugins="${myp}" \
+ $(use_with python) \
+ ${myconf}
+
+ sed -i.orig -e 's/-L -lX11/ -lX11 /g' Makefile || die "sed fixup failed"
+}
+
+src_install() {
+ default
+
+ 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
+}