# - try to make it use builder_kernel_modules and install_kernel_modules; I couldn't make it
# - build is running kernel arch dependent, try to get rid of this
# - libcaraca_client (http://caraca.sourceforge.net/) - no releases yet
+# - create modprobe alias files instead of reminding in post scriptlets
#
# Conditional build:
%bcond_without dist_kernel # without sources of distribution kernel
%endif
%define pname lirc
-%define rel 3
+%define rel 82
#
# main package
Source2: %{pname}d.sysconfig
Source3: %{pname}d.init
Source4: %{pname}md.init
+Source5: %{pname}.tmpfiles
Patch0: %{pname}-opt.patch
Patch1: %{pname}-tmp.patch
Patch2: %{pname}-no-svgalib.patch
Patch4: %{pname}-sparc.patch
Patch5: %{pname}-remotes.patch
Patch6: %{pname}-kernelcc.patch
+Patch7: format-security.patch
+Patch8: %{pname}-am.patch
URL: http://www.lirc.org/
BuildRequires: alsa-lib-devel
BuildRequires: autoconf >= 2.50
BuildRequires: libtool
BuildRequires: libusb-compat-devel >= 0.1.0
%if %{with kernel}
-BuildRequires: kernel%{_alt_kernel}-module-build
BuildRequires: kernel%{_alt_kernel}-headers
+BuildRequires: kernel%{_alt_kernel}-module-build
%endif
%{?with_kernel:BuildRequires: %{kgcc_package}}
BuildRequires: rpm-pythonprov
%{?with_svga:BuildRequires: svgalib-devel}
%{?with_x:BuildRequires: xorg-lib-libX11-devel}
Requires(post,preun): /sbin/chkconfig
+BuildRequires: rpmbuild(macros) >= 1.268
Requires: %{pname}-libs = %{version}-%{release}
Requires: libftdi >= 0.12
+Requires: rc-scripts
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%if %{without userspace}
+%define no_spec_install_post_check_tmpfiles 1
+%endif
+
%description
LIRC is a package that allows you to decode and send infra-red signals
of many (but not all) commonly used remote controls.
%description -l pl.UTF-8
LIRC to program pozwalający na dekodowanie nadchodzących oraz
-wysyłanie sygnałów w podczerwieni za pomocą wielu (ale nie
-wszystkich) popularnych urządzeń do zdalnego sterowania.
+wysyłanie sygnałów w podczerwieni za pomocą wielu (ale nie wszystkich)
+popularnych urządzeń do zdalnego sterowania.
%package remotes
Summary: Lirc remotes database
programs.
%description devel -l pl.UTF-8
-Ten pakiet zawiera pliki niezbędne do tworzenia programów opartych
-na LIRC.
+Ten pakiet zawiera pliki niezbędne do tworzenia programów opartych na
+LIRC.
%package static
Summary: Static library for LIRC development
programs.
%description static -l pl.UTF-8
-Pliki potrzebne do tworzenia łączonych statycznie programów
-opartych na LIRC.
+Pliki potrzebne do tworzenia łączonych statycznie programów opartych
+na LIRC.
%package -n kernel%{_alt_kernel}-char-lirc-atiusb
Summary: Kernel modules for Linux Infrared Remote Control
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Conflicts: dev < 2.8.0-3
%description -n kernel%{_alt_kernel}-char-lirc-atiusb
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Conflicts: dev < 2.8.0-3
%description -n kernel%{_alt_kernel}-char-lirc-bt829
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-dev
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-gpio
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-i2c
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-igorplugusb
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-imon
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Conflicts: dev < 2.8.0-3
%description -n kernel%{_alt_kernel}-char-lirc-sasem
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
%{?with_dist_kernel:Requires: setserial}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-serial
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-sir
Conflicts: dev < 2.8.0-3
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-ttusbir
Conflicts: dev < 2.8.0-3
Moduł lirc_ttusbir.
%package -n kernel%{_alt_kernel}-char-lirc-wpc87691
-Summary: Kernel modules for Linux Infrared Remote Control
-Summary(pl.UTF-8): Moduły jądra dla zdalnej obsługi Linuksa za pomocą podczerwieni
-Release: %{rel}@%{_kernel_ver_str}
-Group: Base/Kernel
+Summary: Kernel modules for Linux Infrared Remote Control
+Summary(pl.UTF-8): Moduły jądra dla zdalnej obsługi Linuksa za pomocą podczerwieni
+Release: %{rel}@%{_kernel_ver_str}
+Group: Base/Kernel
%if %{with dist_kernel}
%requires_releq_kernel
-Requires(postun): %releq_kernel
+Requires(postun): %releq_kernel
%endif
-Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
-Conflicts: dev < 2.8.0-3
+Requires(post,postun): /sbin/depmod
+Requires: %{pname} = %{version}
+Conflicts: dev < 2.8.0-3
%description -n kernel%{_alt_kernel}-char-lirc-wpc87691
This package contains the kernel modules necessary to operate
Requires(postun): %releq_kernel
%endif
Requires(post,postun): /sbin/depmod
-Requires: %{pname} = %{version}-%{rel}
+Requires: %{pname} = %{version}
Obsoletes: lirc-modules
Obsoletes: lirc-modules-parallel
Conflicts: dev < 2.8.0-3
Ten pakiet zawiera moduły jądra niezbędne do obsługi niektórych
pilotów na podczerwień (w tym tych dostarczanych z kartami TV).
-Moduł lirc_parallel dla urządzeń podłączanych do portu
-równoległego.
+Moduł lirc_parallel dla urządzeń podłączanych do portu równoległego.
%prep
%setup -q -n %{pname}-%{version} -a 1
%patch4 -p1
%patch5 -p1
%patch6 -p1
+%patch7 -p1
+%patch8 -p1
%build
echo '#' > drivers/Makefile.am
cd drivers
drivers=%{drivers}
-rm -rf o
-if [ ! -r "%{_kernelsrcdir}/config-dist" ]; then
- exit 1
-fi
-
-install -d o/include/{linux,generated,config} o/arch/powerpc/lib
-ln -sf %{_kernelsrcdir}/config-dist o/.config
-if [ -f %{_kernelsrcdir}/include/generated/autoconf-dist.h ]; then
- ln -sf %{_kernelsrcdir}/include/generated/autoconf-dist.h o/include/generated/autoconf.h
- ln -s ../generated/autoconf.h o/include/linux/autoconf.h
-else
- ln -sf %{_kernelsrcdir}/include/linux/autoconf-dist.h o/include/linux/autoconf.h
-fi
-ln -sf %{_kernelsrcdir}/Module.symvers-dist o/Module.symvers
-
-%if %{without dist_kernel}
- touch o/include/config/MARKER
- ln -sf %{_kernelsrcdir}/scripts o/
-%else
- %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
-%endif
for drv in $drivers; do
cd $drv
- ln -sf ../o
%{__make} clean \
+ LIRC_DEVDIR=`pwd` \
RCS_FIND_IGNORE="-name '*.ko' -o" \
- M=$PWD O=$PWD/o \
%{?with_verbose:V=1}
%{__make} -j1 \
- M=$PWD O=$PWD/o \
+ LIRC_DEVDIR=`pwd` \
CONSTIFY_PLUGIN="" \
KBUILD_MODPOST_WARN=1 \
%{?with_verbose:V=1}
- mv $drv{,-dist}.ko
cd ..
done
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_aclocaldir},/dev,/var/{log,run/lirc}} \
- $RPM_BUILD_ROOT/etc/{lirc,rc.d/init.d,sysconfig}
%if %{with kernel}
drivers=%{drivers}
install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc
for drv in $drivers; do
- install drivers/$drv/$drv-%{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}.ko \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/$drv.ko
+ %install_kernel_modules -m drivers/$drv/$drv -d misc
done
%endif
%if %{with userspace}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_aclocaldir},/dev,/var/{log,run/lirc}} \
+ $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,lirc} \
+ $RPM_BUILD_ROOT%{systemdtmpfilesdir}
+
%{__make} -j1 install \
DESTDIR=$RPM_BUILD_ROOT \
sysconfdir=$RPM_BUILD_ROOT%{_sysconfdir}
#
END
cp -f $RPM_BUILD_ROOT%{_sysconfdir}/lirc/lirc{,m}d.conf
-install contrib/*.m4 $RPM_BUILD_ROOT%{_aclocaldir}
+cp -p contrib/*.m4 $RPM_BUILD_ROOT%{_aclocaldir}
:> $RPM_BUILD_ROOT/var/log/lircd
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/lircd
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/lircd
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/lircmd
+cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/lircd
+install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/lircd
+install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/lircmd
+cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
%endif
%clean
%post
/sbin/chkconfig --add lircd
-if [ -f /var/lock/subsys/lircd ]; then
- /etc/rc.d/init.d/lircd restart >&2
-else
- echo "Run \"/etc/rc.d/init.d/lircd start\" to start lircd." >&2
-fi
/sbin/chkconfig --add lircmd
-if [ -f /var/lock/subsys/lircmd ]; then
- /etc/rc.d/init.d/lircmd restart >&2
-else
- echo "Run \"/etc/rc.d/init.d/lircmd start\" to start lircmd." >&2
-fi
+%service lircd restart
+%service lircmd restart
+
echo "If you are using a kernel-module-based driver, don't forget to"
-echo "install the kernel%{_alt_kernel}-char-lirc-<your_driver> or"
-echo "kernel%{_alt_kernel}-smp-char-lirc-<your_driver> package."
+echo "install the kernel%{_alt_kernel}-char-lirc-<your_driver> package."
%preun
if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/lircd ]; then
- /etc/rc.d/init.d/lircd stop >&2
- fi
+ %service lircd stop
+ %service lircmd stop
/sbin/chkconfig --del lircd
-fi
-if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/lircmd ]; then
- /etc/rc.d/init.d/lircmd stop >&2
- fi
/sbin/chkconfig --del lircmd
fi
%post -n kernel%{_alt_kernel}-char-lirc-atiusb
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_atiusb' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_atiusb' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-atiusb
%post -n kernel%{_alt_kernel}-char-lirc-bt829
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_bt829' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_bt829' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-bt829
%post -n kernel%{_alt_kernel}-char-lirc-gpio
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_gpio' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_gpio' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-gpio
%post -n kernel%{_alt_kernel}-char-lirc-i2c
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_i2c' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_i2c' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-i2c
%post -n kernel%{_alt_kernel}-char-lirc-igorplugusb
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_igorplugusb' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_igorplugusb' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-igorplugusb
%post -n kernel%{_alt_kernel}-char-lirc-imon
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_imon' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_imon' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-imon
%post -n kernel%{_alt_kernel}-char-lirc-sasem
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_sasem' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_sasem' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-sasem
%post -n kernel%{_alt_kernel}-char-lirc-serial
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_serial' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_serial' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-serial
%post -n kernel%{_alt_kernel}-char-lirc-parallel
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_parallel' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_parallel' modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-parallel
%post -n kernel%{_alt_kernel}-char-lirc-sir
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_sir' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_sir' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-sir
%post -n kernel%{_alt_kernel}-char-lirc-ttusbir
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_ttusbir' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_ttusbir' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-ttusbir
%post -n kernel%{_alt_kernel}-char-lirc-wpc87691
%depmod %{_kernel_ver}
if [ "$1" = "1" ]; then
- echo "Don't forget to add an 'alias lirc lirc_wpc87691' line"
- echo "to your /etc/modules.conf."
+ echo "Don't forget to add an 'alias lirc lirc_wpc87691' to modprobe config"
fi
%postun -n kernel%{_alt_kernel}-char-lirc-wpc87691
%{_mandir}/man8/lircmd.8*
%attr(600,root,root) %ghost /var/log/lircd
%dir /var/run/lirc
+%{systemdtmpfilesdir}/%{name}.conf
%files remotes
%defattr(644,root,root,755)