|
|
|
# Driver TODO, sometime maybe:
|
|
|
|
# - audio (req: portaudio)
|
|
|
|
# - caraca (req: caraca_client)
|
|
|
|
# - irman: (req: libirman)
|
|
|
|
# - drivers that need drivers/media/video/bttv*.h (not in kernel-module-devel)
|
|
|
|
# - gpio: flyvideo avermedia avermedia98
|
|
|
|
# - i2c: hauppauge
|
|
|
|
# Other TODO:
|
|
|
|
# - move to -devel (?): irw, *mode2, others?
|
|
|
|
# - don't run as root and/or create dedicated group, reduce fifo permissions?
|
|
|
|
# - Fixup /etc/lirc(m)d.conf %%ghost'ification, existence after erase etc.
|
|
|
|
# - kernel modules: Figure out sane permissions for /dev/lirc, use
|
|
|
|
# console.perms/udev, general FC3 adjustments.
|
|
|
|
|
|
|
|
%{!?kernel: %{expand: %%define kernel %(uname -r)}}
|
|
|
|
%define ksrc %{_libdir}/kernel-module-devel/%{kernel}-%{_target_cpu}
|
|
|
|
# Kernel module drivers
|
|
|
|
%define drivers sir_com3 it87 tekram_bt829 com1 atiusb mceusb lpt1
|
|
|
|
|
|
|
|
Name: lirc
|
|
|
|
Version: 0.7.0
|
|
|
|
Release: 1
|
|
|
|
Summary: The Linux Infrared Remote Control package
|
|
|
|
|
|
|
|
Group: System Environment/Daemons
|
|
|
|
License: GPL
|
|
|
|
URL: http://www.lirc.org/
|
|
|
|
Source0: http://download.sourceforge.net/lirc/%{name}-%{version}.tar.bz2
|
|
|
|
Source1: %{name}.init
|
|
|
|
Source2: %{name}.sysconfig
|
|
|
|
Source3: %{name}.makedev
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
|
|
|
|
BuildRequires: %{__perl}
|
|
|
|
%if 0%{!?_with_kmod:1}
|
|
|
|
BuildRequires: alsa-lib-devel XFree86-devel libusb-devel
|
|
|
|
BuildConflicts: svgalib-devel
|
|
|
|
%endif
|
|
|
|
Requires(post): /sbin/chkconfig /sbin/ldconfig
|
|
|
|
Requires(preun): /sbin/chkconfig
|
|
|
|
Requires(postun): /sbin/ldconfig
|
|
|
|
|
|
|
|
%description
|
|
|
|
LIRC is the Linux Infrared Remote Control package.
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
Summary: Development files for LIRC
|
|
|
|
Group: Development/Libraries
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
%{summary}.
|
|
|
|
|
|
|
|
%package -n kernel-module-%{name}-%{kernel}
|
|
|
|
Summary: Kernel modules for LIRC
|
|
|
|
Group: System Environment/Kernel
|
|
|
|
Provides: kernel-module
|
|
|
|
Provides: kernel-module-%{name} = %{version}
|
|
|
|
%if 0%{?_with_kmod:1}
|
|
|
|
BuildRequires: %{ksrc} MAKEDEV
|
|
|
|
%endif
|
|
|
|
Requires: modutils %{name} = %{version}
|
|
|
|
Requires: /boot/vmlinuz-%{kernel}
|
|
|
|
|
|
|
|
%description -n kernel-module-%{name}-%{kernel}
|
|
|
|
LIRC kernel modules built for kernel
|
|
|
|
%{kernel} (%{_target_cpu}).
|
|
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q
|
|
|
|
%{__perl} -pi -e 's|^CFLAGS="-O2 -g -Wall"|CFLAGS="\$CFLAGS -Wall"|' configure
|
|
|
|
chmod 644 contrib/*
|
|
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
%if 0%{?_with_kmod:1}
|
|
|
|
for driver in %{drivers} ; do
|
|
|
|
# lpt1 is not smp safe @@@ TODO: verify this?
|
|
|
|
test $driver = lpt1 && grep -q '^CONFIG_SMP=y' %{ksrc}/.config && continue
|
|
|
|
mkdir -p buildroot/"$driver"
|
|
|
|
%configure \
|
|
|
|
--enable-sandboxed \
|
|
|
|
--enable-debug \
|
|
|
|
--disable-dependency-tracking \
|
|
|
|
--with-kerneldir=%{ksrc} \
|
|
|
|
--with-moduledir=/tmp \
|
|
|
|
--with-driver=$driver
|
|
|
|
make %{?_smp_mflags} -C drivers
|
|
|
|
make -C drivers install DESTDIR=$PWD/buildroot/$driver
|
|
|
|
done
|
|
|
|
%else
|
|
|
|
%configure \
|
|
|
|
--with-syslog=LOG_DAEMON \
|
|
|
|
--enable-sandboxed \
|
|
|
|
--enable-debug \
|
|
|
|
--disable-dependency-tracking \
|
|
|
|
--with-driver=any
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
rm -rf $RPM_BUILD_ROOT __docs
|
|
|
|
|
|
|
|
%if 0%{?_with_kmod:1}
|
|
|
|
for driver in %{drivers} ; do
|
|
|
|
# lpt1 is not SMP safe @@@ TODO: verify this?
|
|
|
|
test $driver = lpt1 && grep -q '^CONFIG_SMP=y' %{ksrc}/.config && continue
|
|
|
|
install -dm 755 $RPM_BUILD_ROOT/lib/modules/%{kernel}/updates/lirc
|
|
|
|
# 0755 here to allow stripping, fixed later in %%files
|
|
|
|
install -pm 755 buildroot/$driver/tmp/* \
|
|
|
|
$RPM_BUILD_ROOT/lib/modules/%{kernel}/updates/lirc
|
|
|
|
done
|
|
|
|
install -Dpm 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/makedev.d/lirc
|
|
|
|
cp -p %{_sysconfdir}/makedev.d/00macros $RPM_BUILD_ROOT%{_sysconfdir}/makedev.d
|
|
|
|
/dev/MAKEDEV -M \
|
|
|
|
-c $RPM_BUILD_ROOT%{_sysconfdir}/makedev.d \
|
|
|
|
-d $RPM_BUILD_ROOT/dev lirc \
|
|
|
|
| sed "s|$RPM_BUILD_ROOT||g" \
|
|
|
|
| grep -v ' /dev$' \
|
|
|
|
> devices.list
|
|
|
|
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/makedev.d/00macros
|
|
|
|
|
|
|
|
%else
|
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/smode2.1* # if no svgalib
|
|
|
|
install -Dpm 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/lirc
|
|
|
|
%{__perl} -pi -e \
|
|
|
|
's|/etc/|%{_sysconfdir}/|g ;
|
|
|
|
s|/var/|%{_localstatedir}/|g ;
|
|
|
|
s|/usr/sbin/|%{_sbindir}/|g' \
|
|
|
|
$RPM_BUILD_ROOT%{_initrddir}/lirc
|
|
|
|
install -Dpm 644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/lirc
|
|
|
|
mkdir __docs
|
|
|
|
cp -pR doc contrib __docs
|
|
|
|
cd __docs
|
|
|
|
rm -rf doc/Makefile* doc/.libs doc/man* contrib/lirc.* contrib/sendxevent.c
|
|
|
|
cd ..
|
|
|
|
touch $RPM_BUILD_ROOT%{_sysconfdir}/lirc{d,md}.conf
|
|
|
|
install -dm 755 $RPM_BUILD_ROOT/dev
|
|
|
|
touch $RPM_BUILD_ROOT/dev/lirc{d,m}
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%clean
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
|
|
|
|
%post
|
|
|
|
/sbin/ldconfig
|
|
|
|
/sbin/chkconfig --add lirc
|
|
|
|
# Backwards compatibility (init script lircd -> lirc rename):
|
|
|
|
if [ $1 -gt 0 -a -x %{_initrddir}/lircd ] ; then
|
|
|
|
%{_initrddir}/lircd status >/dev/null 2>&1
|
|
|
|
ret=$?
|
|
|
|
%{_initrddir}/lircd stop >/dev/null || :
|
|
|
|
/sbin/chkconfig --del lircd || :
|
|
|
|
if [ $ret -eq 0 ] ; then
|
|
|
|
%{_initrddir}/lirc start >/dev/null || :
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
%post -n kernel-module-%{name}-%{kernel}
|
|
|
|
depmod -ae -F /boot/System.map-%{kernel} %{kernel} >/dev/null || :
|
|
|
|
|
|
|
|
%preun
|
|
|
|
if [ $1 -eq 0 ] ; then
|
|
|
|
%{_initrddir}/lirc stop >/dev/null || :
|
|
|
|
/sbin/chkconfig --del lirc || :
|
|
|
|
fi
|
|
|
|
|
|
|
|
%postun
|
|
|
|
/sbin/ldconfig
|
|
|
|
if [ $1 -gt 0 ] ; then
|
|
|
|
%{_initrddir}/lirc try-restart >/dev/null || :
|
|
|
|
fi
|
|
|
|
|
|
|
|
%postun -n kernel-module-%{name}-%{kernel}
|
|
|
|
depmod -ae -F /boot/System.map-%{kernel} %{kernel} >/dev/null || :
|
|
|
|
|
|
|
|
|
|
|
|
%if 0%{!?_with_kmod:1}
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%doc ANNOUNCE AUTHORS ChangeLog COPYING NEWS README TODO remotes __docs/*
|
|
|
|
%ghost %config(noreplace) %{_sysconfdir}/lirc*d.conf
|
|
|
|
%config(noreplace) %{_sysconfdir}/sysconfig/lirc
|
|
|
|
%config %{_initrddir}/lirc
|
|
|
|
%{_bindir}/ir*
|
|
|
|
%{_bindir}/*mode2
|
|
|
|
%{_sbindir}/lirc*d
|
|
|
|
%{_libdir}/liblirc_client.so.*
|
|
|
|
%{_mandir}/man1/ir*.1*
|
|
|
|
%{_mandir}/man1/*mode2*.1*
|
|
|
|
%{_mandir}/man8/lirc*d.8*
|
|
|
|
%ghost /dev/lirc*
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%{_includedir}/lirc
|
|
|
|
%{_libdir}/liblirc_client.a
|
|
|
|
%{_libdir}/liblirc_client.so
|
|
|
|
%exclude %{_libdir}/liblirc_client.la
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%if 0%{?_with_kmod:1}
|
|
|
|
%files -n kernel-module-%{name}-%{kernel} -f devices.list
|
|
|
|
%defattr(644,root,root,755)
|
|
|
|
%config %{_sysconfdir}/makedev.d
|
|
|
|
/lib/modules/%{kernel}/updates
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
* Sun Dec 5 2004 Ville Skyttä <ville.skytta at iki.fi> - 0.7.0-1
|
|
|
|
- Update to 0.7.0; major rework of the package:
|
|
|
|
- Change default driver to "any".
|
|
|
|
- Add -devel subpackage.
|
|
|
|
- Improve init script, add %%{_sysconfdir}/sysconfig/lirc for options.
|
|
|
|
- Rename init script to "lirc" to follow upstream; the script is not only
|
|
|
|
for lircd, but lircmd as well.
|
|
|
|
- Log to syslog instead of separate log file.
|
|
|
|
- %%ghost'ify /dev/lirc*.
|
|
|
|
- Build kernel modules when rebuilt with "--with kmod". This stuff was mostly
|
|
|
|
borrowed from Axel Thimm's packages, and is not really ready for FC3+ yet.
|
|
|
|
- Enable debugging features.
|
|
|
|
- Specfile cleanups.
|
|
|
|
|
|
|
|
* Mon Aug 30 2004 Matthias Saou <http://freshrpms.net/> 0.6.6-3
|
|
|
|
- Added missing /sbin/ldconfig calls.
|
|
|
|
|
|
|
|
* Wed May 19 2004 Matthias Saou <http://freshrpms.net/> 0.6.6-2
|
|
|
|
- Rebuild for Fedora Core 2... this spec file still _really_ needs reworking!
|
|
|
|
|
|
|
|
* Fri Nov 7 2003 Matthias Saou <http://freshrpms.net/> 0.6.6-2
|
|
|
|
- Rebuild for Fedora Core 1... this spec file _really_ needs reworking!
|
|
|
|
|
|
|
|
* Mon Mar 31 2003 Matthias Saou <http://freshrpms.net/>
|
|
|
|
- Rebuilt for Red Hat Linux 9... this spec file needs some reworking!
|
|
|
|
|
|
|
|
* Mon Oct 7 2002 Matthias Saou <http://freshrpms.net/>
|
|
|
|
- Update to 0.6.6 final.
|
|
|
|
|
|
|
|
* Mon Sep 16 2002 Matthias Saou <http://freshrpms.net/>
|
|
|
|
- Updated to latest pre-version.
|
|
|
|
- Kernel modules still need to be compiled separately and with a custom
|
|
|
|
kernel :-(
|
|
|
|
|
|
|
|
* Thu May 2 2002 Matthias Saou <http://freshrpms.net/>
|
|
|
|
- Update to 0.6.5.
|
|
|
|
- Rebuilt against Red Hat Linux 7.3.
|
|
|
|
- Added the %%{?_smp_mflags} expansion.
|
|
|
|
|
|
|
|
* Thu Oct 4 2001 Matthias Saou <http://freshrpms.net/>
|
|
|
|
- Initial RPM release.
|
|
|
|
|