summaryrefslogtreecommitdiff
path: root/system/lirc
diff options
context:
space:
mode:
Diffstat (limited to 'system/lirc')
-rw-r--r--system/lirc/README13
-rw-r--r--system/lirc/README.SLACKWARE43
-rw-r--r--system/lirc/doinst.sh9
-rw-r--r--system/lirc/lirc-0.8.4a.diff31
-rw-r--r--system/lirc/lirc.SlackBuild114
-rw-r--r--system/lirc/lirc.info12
-rw-r--r--system/lirc/lirc.logrotate6
-rw-r--r--system/lirc/slack-desc14
8 files changed, 91 insertions, 151 deletions
diff --git a/system/lirc/README b/system/lirc/README
index b064aa5530..99b5ceeb74 100644
--- a/system/lirc/README
+++ b/system/lirc/README
@@ -1,6 +1,9 @@
-LIRC is a package that allows you to decode and send infra-red signals of
-many (but not all) commonly used remote controls. LIRC is released under
-the GNU General Public License. It consists of lircd and lircmd daemons.
+LIRC is a package that allows you to decode and send infra-red signals of many
+(but not all) commonly used remote controls.
-See README.SLACKWARE (also installed with the package documentation) for
-configuration hints.
+Former versions focussed on home-brew hardware connected to the serial or
+parallel port. Current versions of LIRC also support a variety of other
+hardware.
+
+NOTE: for FTDI chips support you need install libftdi and ftdi_eeprom from
+http://www.intra2net.com/en/developer/libftdi/ before run slackbuild.
diff --git a/system/lirc/README.SLACKWARE b/system/lirc/README.SLACKWARE
deleted file mode 100644
index 41cbd33bbd..0000000000
--- a/system/lirc/README.SLACKWARE
+++ /dev/null
@@ -1,43 +0,0 @@
-lirc README.SLACKWARE
-
-===============================================================================
-
-Configuring lircd (the LIRC daemon)
-
- 1. Check if there is already a config file in /etc/lircd.conf. If not,
- 2. Check if there is a config file available for your remote control at
- the LIRC homepage and if so, copy it to /etc/lircd.conf. If not,
- 3. Start irrecord (close all applications that access /dev/lirc first)
- and follow the instructions given to you by this program. Copy the
- resulting file to /etc/lircd.conf. If you have trouble creating a
- working config file, please read the chapter about adding new remote
- controls -- http://www.lirc.org/html/help.html#new_remote
-
-Q: How can I use the infrared remote shipped with the tv card ?
-
-In the 2.6 kernels the remote simply is registered as keyboard input device
-within the linux input layer. When using the saa7134 driver it "just works",
-with bttv you'll have to load either ir-kbd-gpio or ir-kbd-i2c depending on
-your TV card. If in doubt just try both. Have a look at /proc/bus/input/devices
-file to see whenever the device is present or not.
-
-With the driver loaded the IR just works like a additional keyboard. The numbers
-are mapped to the keypad keys. Depending on the X-Servers keyboard configuration
-(try to pick a multimedia keyboard) other keys like the ones for volume control
-might work too.
-
-Q: But I want use lircd for IR input.
-
-No problem, you can do that too:
-
- 1. Get a recent lircd version with linux input layer support. The 0.6.6
- release is too old, a cvs snapshot or a 0.7 pre-release should do. You
- only need to build the lircd daemon + tools, no lirc kernel drivers
- needed. Take care that the dev/input driver is included when building
- lircd (either ./configure --with-driver=any to simply include all drivers
- or --with-driver=devinput).
- 2. Load the evdev module (which is part of the linux input layer). Check
- /proc/bus/input/devices to see which eventn device the IR input device has.
- 3. Start the daemon this way:
- /usr/sbin/lircd -H dev/input -d /dev/input/eventn.
-
diff --git a/system/lirc/doinst.sh b/system/lirc/doinst.sh
index 07ee0983de..404db1c946 100644
--- a/system/lirc/doinst.sh
+++ b/system/lirc/doinst.sh
@@ -1,19 +1,18 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
rm $NEW
fi
- # Otherwise, we leave the .new copy for the admin to consider...
}
config etc/lircd.conf.new
config etc/lircmd.conf.new
config etc/lircrc.new
+config etc/logrotate.d/lirc.new
-chroot . /sbin/depmod -ae @KERNEL@
-
+if [ -x sbin/depmod ]; then
+ chroot . /sbin/depmod -ae @KERNEL@ 1> /dev/null 2> /dev/null
+fi
diff --git a/system/lirc/lirc-0.8.4a.diff b/system/lirc/lirc-0.8.4a.diff
deleted file mode 100644
index 9f25c81576..0000000000
--- a/system/lirc/lirc-0.8.4a.diff
+++ /dev/null
@@ -1,31 +0,0 @@
-This avoids the building of lirc_gpio and lirc_parallel.
-
-Since SMP-Kernels are usual today, lirc_parallel would break the build.
-
-see lirc_parallel.c:
-#ifdef CONFIG_SMP
-#error "--- Sorry, this driver is not SMP safe. ---"
-#endif
-
-lirc_gpio uses 2 functions, not exported by the kernel shipped with Slackware 12.2.
-These were: bttv_get_cardinfo and bttv_get_gpio_queue
-
-diff -uprN lirc-0.8.4a_orig/configure lirc-0.8.4a/configure
---- lirc-0.8.4a_orig/configure 2008-10-26 15:13:42.000000000 +0100
-+++ lirc-0.8.4a/configure 2009-01-07 07:04:05.805431467 +0100
-@@ -25861,7 +25861,6 @@ elif test "$lirc_driver" = "all"; then
- lirc_atiusb \
- lirc_bt829 \
- lirc_cmdir \
-- lirc_gpio \
- lirc_i2c \
- lirc_igorplugusb \
- lirc_imon \
-@@ -25869,7 +25868,6 @@ elif test "$lirc_driver" = "all"; then
- lirc_ite8709 \
- lirc_mceusb \
- lirc_mceusb2 \
-- lirc_parallel \
- lirc_sasem \
- lirc_serial \
- lirc_sir \
diff --git a/system/lirc/lirc.SlackBuild b/system/lirc/lirc.SlackBuild
index de644df718..363992bd4e 100644
--- a/system/lirc/lirc.SlackBuild
+++ b/system/lirc/lirc.SlackBuild
@@ -2,9 +2,7 @@
# Slackware build script for lirc
-# Copyright 2009 Johann Wilhelm <johann.wilhelm@9mal6.de>
-# Copyright 2007 David Somero <dsomero@hotmail.com>
-#
+# Copyright 2009 Murat D. Kadirov <banderols@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -13,50 +11,50 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=lirc
-VERSION=0.8.4a
+VERSION=${VERSION:-0.8.6}
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+KERNEL=${KERNEL:-$(uname -r)}
+PKG_VERS=${VERSION}_$(echo $KERNEL| tr - _)
+
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# Any of these can be changed by passing the desired value on command line
-# when executing the build script. For example:
-# IRQ=5 ./lirc.SlackBuild
-IRQ=${IRQ:-4}
-PORT=${PORT:-0x3f8}
-KERNEL=${KERNEL:-$(uname -r)}
-
-PKG_VERSION=${VERSION}_$(echo $KERNEL | tr '-' '_')
-
-if [ "${ARCH}" = "i486" ]; then
+if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
-elif [ "${ARCH}" = "i686" ]; then
+ LIBDIRSUFFIX=""
+ SRCARCH=x86
+elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+ SRCARCH=x86
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ SRCARCH=x86
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
+cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
@@ -67,59 +65,65 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Patch configure to not build a couple of things that either won't work
-# or will break compilation
-patch -p1 < $CWD/$PRGNAM-$VERSION.diff
+# Disabling lirc_gpio driver as it does no longer work with kernel 2.6.22+
+sed -i -e "s:lirc_gpio\.o::" drivers/lirc_gpio/Makefile.am || exit 1
+
+autoreconf
+libtoolize
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- --mandir=/usr/man \
- --exec-prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
+ --mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
- --disable-static \
--enable-sandboxed \
--with-driver=all \
--with-transmitter \
- --with-x \
- --with-major=61 \
- --with-port=$PORT \
- --with-irq=$IRQ \
- --with-moduledir=/lib/modules/$KERNEL/misc \
--build=$ARCH-slackware-linux
-make
+# Disable parallel and bt829 because of incompatibility with smp systems
+sed -i -e "s:lirc_parallel::" -e "s:lirc_bt829::" \
+ Makefile drivers/Makefile drivers/*/Makefile tools/Makefile
+
+make SRCARCH=$SRCARCH
make install DESTDIR=$PKG
-mkdir -p $PKG/usr/doc/$PRGNAM-$PKG_VERSION
-cp -a ANNOUNCE AUTHORS COPYING ChangeLog INSTALL NEWS README TODO \
- doc/lirc.hwdb contrib/lircrc $PKG/usr/doc/$PRGNAM-$PKG_VERSION
-install -m 0644 $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$PKG_VERSION
-install -m 0644 $CWD/README.SLACKWARE $PKG/usr/doc/$PRGNAM-$PKG_VERSION
+mkdir -p $PKG/usr/share/$PRGNAM
+cp -a remotes $PKG/usr/share/$PRGNAM
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-)
+mkdir -p $PKG/lib/udev/rules.d
+cat contrib/lirc.rules > $PKG/lib/udev/rules.d/96-lirc.rules
+
+mkdir -p $PKG/etc/logrotate.d
+cat contrib/lircd.conf > $PKG/etc/lircd.conf.new
+cat contrib/lircmd.conf > $PKG/etc/lircmd.conf.new
+cat contrib/lircrc > $PKG/etc/lircrc.new
+cat $CWD/lirc.logrotate > $PKG/etc/logrotate.d/lirc.new
( cd $PKG
- find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
- find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
+ xargs strip --strip-unneeded 2> /dev/null || true
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \
+ xargs strip --strip-unneeded 2> /dev/null
)
-install -D -m 0644 contrib/lircd.conf $PKG/etc/lircd.conf.new
-install -m 0644 contrib/lircmd.conf $PKG/etc/lircmd.conf.new
-install -m 0644 contrib/lircrc $PKG/etc/lircrc.new
-install -D -m 0644 contrib/lirc.rules $PKG/lib/udev/rules.d/96-lirc.rules
+( cd $PKG/usr/man
+ find . -type f -exec gzip -9 {} \;
+ for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+)
-rm -rf $PKG/dev # We don't need this
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ANNOUNCE AUTHORS COPYING ChangeLog INSTALL NEWS README TODO \
+ doc/{html,irxevent.keys,lirc.hwdb} $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
sed "s%@KERNEL@%$KERNEL%" $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$PKG_VERSION-$ARCH-$BUILD$TAG.tgz
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKG_VERS-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/lirc/lirc.info b/system/lirc/lirc.info
index 3f7e2aa8c0..0c76a5cae2 100644
--- a/system/lirc/lirc.info
+++ b/system/lirc/lirc.info
@@ -1,8 +1,10 @@
PRGNAM="lirc"
-VERSION="0.8.4a"
+VERSION="0.8.6"
HOMEPAGE="http://www.lirc.org/"
-DOWNLOAD="http://downloads.sourceforge.net/lirc/lirc-0.8.4a.tar.bz2"
-MD5SUM="606b714ed843d28060163ffc571fc1f7"
-MAINTAINER="Johann Wilhelm"
-EMAIL="johann.wilhelm@9mal6.de"
+DOWNLOAD="http://prdownloads.sourceforge.net/lirc/lirc-0.8.6.tar.bz2"
+MD5SUM="4ca24da6f5e7c2dcea74878c27a4a3f7"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+MAINTAINER="Murat D. Kadirov"
+EMAIL="banderols@gmail.com"
APPROVED="rworkman"
diff --git a/system/lirc/lirc.logrotate b/system/lirc/lirc.logrotate
new file mode 100644
index 0000000000..44bbdbb475
--- /dev/null
+++ b/system/lirc/lirc.logrotate
@@ -0,0 +1,6 @@
+/var/log/lircd {
+ missingok
+ notifempty
+ delaycompress
+}
+
diff --git a/system/lirc/slack-desc b/system/lirc/slack-desc
index d4b0a95d11..dae52f1f73 100644
--- a/system/lirc/slack-desc
+++ b/system/lirc/slack-desc
@@ -6,14 +6,14 @@
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-lirc: lirc (Linux InfraRed Remote Control)
-lirc:
+lirc: lirc (linux infrared remote control)
+lirc:
lirc: LIRC is a package that allows you to decode and send infra-red
lirc: signals of many (but not all) commonly used remote controls.
-lirc:
-lirc: LIRC is released under GNU General Public License. It consists
-lirc: of lircd and lircmd daemons.
lirc:
-lirc: This package contains all drivers provided by lirc except
-lirc: lirc_gpio and lirc_parallel.
+lirc: Homepage: http://www.lirc.org
+lirc:
+lirc:
+lirc:
+lirc:
lirc: