]> git.pld-linux.org Git - packages/lirc.git/blob - lirc.spec
- release 7 (by relup.sh)
[packages/lirc.git] / lirc.spec
1 # TODO
2 # - regenerate plugindocs index when installing plugin with plugindocs
3 # - separate lirc-remotes.spec, update remotes configs from lirc-remotes project
4 #   (http://lirc-remotes.sourceforge.net/ incl. remotes-table.html)
5 #
6 # Conditional build:
7 %bcond_without  portaudio       # Portaudio based audio driver
8 %bcond_without  static_libs     # static libraries
9 %bcond_without  x               # without X11-based utilitied
10
11 Summary:        Linux Infrared Remote Control daemons
12 Summary(pl.UTF-8):      Demony do zdalnego sterowania Linuksem za pomocą podczerwieni
13 Name:           lirc
14 Version:        0.10.1
15 Release:        7
16 License:        GPL v2+
17 Group:          Daemons
18 Source0:        http://downloads.sourceforge.net/lirc/%{name}-%{version}.tar.bz2
19 # Source0-md5:  86c3f8e4efaba10571addb8313d1e040
20 Source1:        http://lirc.sourceforge.net/remotes.tar.bz2
21 # Source1-md5:  238d1773d3c405acc02813674f5a55f8
22 Source2:        %{name}d.sysconfig
23 Source3:        %{name}d.init
24 Source4:        %{name}md.init
25 Source5:        %{name}.tmpfiles
26 Patch0:         %{name}-tmp.patch
27 Patch1:         %{name}-remotes.patch
28 Patch2:         %{name}-link.patch
29 URL:            http://www.lirc.org/
30 BuildRequires:  alsa-lib-devel
31 BuildRequires:  autoconf >= 2.50
32 BuildRequires:  automake
33 BuildRequires:  doxygen
34 BuildRequires:  libftdi1-devel >= 1.0
35 BuildRequires:  libtool >= 2:2
36 BuildRequires:  libusb-compat-devel >= 0.1.0
37 BuildRequires:  libxslt-progs
38 BuildRequires:  pkgconfig
39 %{?with_portaudio:BuildRequires:        portaudio-devel >= 19}
40 BuildRequires:  python3 >= 1:3.5
41 BuildRequires:  python3-PyYAML
42 BuildRequires:  rpmbuild(macros) >= 1.701
43 BuildRequires:  rpm-pythonprov
44 BuildRequires:  systemd-devel
45 BuildRequires:  udev-devel
46 %{?with_x:BuildRequires:        xorg-lib-libX11-devel}
47 Requires(post,preun):   /sbin/chkconfig
48 BuildRequires:  rpmbuild(macros) >= 1.268
49 Requires:       %{name}-libs = %{version}-%{release}
50 Requires:       libftdi1 >= 1.0
51 Requires:       rc-scripts
52 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53
54 # liblirc_driver expects curr_driver to be defined by user
55 %define         skip_post_check_so      liblirc_driver.so.*
56
57 %description
58 LIRC is a package that allows you to decode and send infra-red signals
59 of many (but not all) commonly used remote controls.
60
61 %description -l pl.UTF-8
62 LIRC to program pozwalający na dekodowanie nadchodzących oraz
63 wysyłanie sygnałów w podczerwieni za pomocą wielu (ale nie wszystkich)
64 popularnych urządzeń do zdalnego sterowania.
65
66 %package remotes
67 Summary:        Lirc remotes database
68 Summary(pl.UTF-8):      Baza pilotów obsługiwanych przez lirc
69 Group:          Documentation
70 Requires:       %{name} = %{version}-%{release}
71
72 %description remotes
73 This package contains configuration files for many remotes supported
74 by lirc.
75
76 %description remotes -l pl.UTF-8
77 Ten pakiet zawiera pliki konfiguracyjne dla wielu pilotów
78 obsługiwanych przez lirc.
79
80 %package X11
81 Summary:        Linux Infrared Remote Control - X11 utilities
82 Summary(pl.UTF-8):      Zdalne sterowanie Linuksem za pomocą podczerwieni - narzędzia X11
83 Group:          X11/Applications
84 Requires:       %{name}-libs = %{version}-%{release}
85
86 %description X11
87 Linux Infrared Remote Control - X11 utilities.
88
89 %description X11 -l pl.UTF-8
90 Zdalne sterowanie Linuksem za pomocą podczerwieni - narzędzia X11.
91
92 %package libs
93 Summary:        LIRC libraries
94 Summary(pl.UTF-8):      Biblioteki LIRC
95 Group:          Libraries
96 Obsoletes:      lirc-svga
97 # didn't use /tmp/.lircd
98 Conflicts:      lirc < 0.6.3-3
99
100 %description libs
101 This package provides the libraries necessary to run lirc client
102 programs.
103
104 %description libs -l pl.UTF-8
105 Ten pakiet zawiera biblioteki niezbędne do działania klientów LIRC.
106
107 %package devel
108 Summary:        Header files for LIRC development
109 Summary(pl.UTF-8):      Pliki nagłówkowe do tworzenia programów z obsługą LIRC
110 Group:          Development/Libraries
111 Requires:       %{name}-libs = %{version}-%{release}
112
113 %description devel
114 This package provides the files necessary to develop LIRC-based
115 programs.
116
117 %description devel -l pl.UTF-8
118 Ten pakiet zawiera pliki niezbędne do tworzenia programów opartych na
119 LIRC.
120
121 %package static
122 Summary:        Static library for LIRC development
123 Summary(pl.UTF-8):      Biblioteka statyczna LIRC
124 Group:          Development/Libraries
125 Requires:       %{name}-devel = %{version}-%{release}
126
127 %description static
128 The files necessary for development of statically-linked lirc-based
129 programs.
130
131 %description static -l pl.UTF-8
132 Pliki potrzebne do tworzenia łączonych statycznie programów opartych
133 na LIRC.
134
135 %package doc
136 Summary:        Documentation for LIRC
137 Summary(pl.UTF-8):      Dokumentacja LIRC-a
138 Group:          Documentation
139
140 %description doc
141 Documentation for LIRC.
142
143 %description doc -l pl.UTF-8
144 Dokumentacja LIRC-a.
145
146 %prep
147 %setup -q -a1
148 %patch0 -p1
149 %patch1 -p1
150 %patch2 -p1
151
152 grep -rl /usr/bin/env tools | xargs sed -i -e '1{
153         s,^#!.*bin/env .*python3,#!%{__python3},
154         s,^#!.*bin/env bash,#!%{__bash},
155 }'
156
157 %build
158 %{__libtoolize}
159 %{__aclocal}
160 %{__autoconf}
161 %{__autoheader}
162 %{__automake}
163
164 %configure \
165         %{!?with_portaudio:ac_cv_header_portaudio_h=no} \
166         am_cv_python_pythondir=%{py3_sitescriptdir} \
167         --enable-devinput \
168         %{?with_static_libs:--enable-static} \
169         --enable-uinput \
170         %{?with_x:--with-x}
171
172 %{__make} -j1
173
174 %install
175 rm -rf $RPM_BUILD_ROOT
176
177 install -d $RPM_BUILD_ROOT{%{_bindir},/dev,/var/{log,run/lirc}} \
178         $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,lirc} \
179         $RPM_BUILD_ROOT%{systemdtmpfilesdir}
180
181 %{__make} -j1 install \
182         DESTDIR=$RPM_BUILD_ROOT
183
184 :> $RPM_BUILD_ROOT/var/log/lircd
185
186 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/lircd
187 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/lircd
188 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/lircmd
189 cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
190
191 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lirc/plugins/*.la \
192         $RPM_BUILD_ROOT%{py3_sitedir}/lirc/_client.la
193 %if %{with static_libs}
194 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lirc/plugins/*.a \
195         $RPM_BUILD_ROOT%{py3_sitedir}/lirc/_client.a
196 %endif
197
198 # nothing useful
199 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/lirc/contrib
200 # dist packages
201 %{__rm} $RPM_BUILD_ROOT%{_datadir}/lirc/lirc-%{version}.tar.gz
202 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/lirc/python-pkg
203 # packaged as %doc
204 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/lirc/lircd.conf.d/README.conf.d
205 # useless
206 %{__rm} $RPM_BUILD_ROOT%{_docdir}/lirc/VERSION
207 # packaged as %doc in -X11 package
208 %{__rm} $RPM_BUILD_ROOT%{_docdir}/lirc/irxevent.keys
209
210 %clean
211 rm -rf $RPM_BUILD_ROOT
212
213 %post   libs -p /sbin/ldconfig
214 %postun libs -p /sbin/ldconfig
215
216 %post
217 /sbin/chkconfig --add lircd
218 /sbin/chkconfig --add lircmd
219 %service lircd restart
220 %service lircmd restart
221
222 %preun
223 if [ "$1" = "0" ]; then
224         %service lircd stop
225         %service lircmd stop
226         /sbin/chkconfig --del lircd
227         /sbin/chkconfig --del lircmd
228 fi
229
230 %triggerpostun -- %{name} < 0.8.6-8
231 if [ -f %{_sysconfdir}/lircd.conf.rpmsave ]; then
232         mv -f %{_sysconfdir}/lircd.conf.rpmsave %{_sysconfdir}/lirc/lircd.conf
233 fi
234 if [ -f %{_sysconfdir}/lircmd.conf.rpmsave ]; then
235         mv -f %{_sysconfdir}/lircmd.conf.rpmsave %{_sysconfdir}/lirc/lircmd.conf
236 fi
237
238 %files
239 %defattr(644,root,root,755)
240 %doc AUTHORS ChangeLog NEWS README README.conf.d contrib/lircrc
241 %attr(755,root,root) %{_bindir}/ircat
242 %attr(755,root,root) %{_bindir}/irexec
243 %attr(755,root,root) %{_bindir}/irpipe
244 %attr(755,root,root) %{_bindir}/irpty
245 %attr(755,root,root) %{_bindir}/irrecord
246 %attr(755,root,root) %{_bindir}/irsend
247 %attr(755,root,root) %{_bindir}/irsimreceive
248 %attr(755,root,root) %{_bindir}/irsimsend
249 %attr(755,root,root) %{_bindir}/irtestcase
250 %attr(755,root,root) %{_bindir}/irtext2udp
251 %attr(755,root,root) %{_bindir}/irw
252 %attr(755,root,root) %{_bindir}/lirc-config-tool
253 %attr(755,root,root) %{_bindir}/lirc-init-db
254 %attr(755,root,root) %{_bindir}/lirc-lsremotes
255 %attr(755,root,root) %{_bindir}/lirc-make-devinput
256 %attr(755,root,root) %{_bindir}/lircrcd
257 %attr(755,root,root) %{_bindir}/mode2
258 %attr(755,root,root) %{_bindir}/pronto2lirc
259 %attr(755,root,root) %{_sbindir}/lirc-lsplugins
260 %attr(755,root,root) %{_sbindir}/lircd
261 %attr(755,root,root) %{_sbindir}/lircd-setup
262 %attr(755,root,root) %{_sbindir}/lircd-uinput
263 %attr(755,root,root) %{_sbindir}/lircmd
264 %dir %{_libdir}/lirc
265 %dir %{_libdir}/lirc/plugins
266 %attr(755,root,root) %{_libdir}/lirc/plugins/accent.so
267 %attr(755,root,root) %{_libdir}/lirc/plugins/alsa_usb.so
268 %attr(755,root,root) %{_libdir}/lirc/plugins/atilibusb.so
269 %attr(755,root,root) %{_libdir}/lirc/plugins/atwf83.so
270 %{?with_portaudio:%attr(755,root,root) %{_libdir}/lirc/plugins/audio.so}
271 %attr(755,root,root) %{_libdir}/lirc/plugins/audio_alsa.so
272 %attr(755,root,root) %{_libdir}/lirc/plugins/awlibusb.so
273 %attr(755,root,root) %{_libdir}/lirc/plugins/bte.so
274 %attr(755,root,root) %{_libdir}/lirc/plugins/commandir.so
275 %attr(755,root,root) %{_libdir}/lirc/plugins/creative.so
276 %attr(755,root,root) %{_libdir}/lirc/plugins/creative_infracd.so
277 %attr(755,root,root) %{_libdir}/lirc/plugins/default.so
278 %attr(755,root,root) %{_libdir}/lirc/plugins/devinput.so
279 %attr(755,root,root) %{_libdir}/lirc/plugins/dfclibusb.so
280 %attr(755,root,root) %{_libdir}/lirc/plugins/dsp.so
281 %attr(755,root,root) %{_libdir}/lirc/plugins/ea65.so
282 %attr(755,root,root) %{_libdir}/lirc/plugins/file.so
283 %attr(755,root,root) %{_libdir}/lirc/plugins/ftdi.so
284 %attr(755,root,root) %{_libdir}/lirc/plugins/girs.so
285 %attr(755,root,root) %{_libdir}/lirc/plugins/hiddev.so
286 %attr(755,root,root) %{_libdir}/lirc/plugins/i2cuser.so
287 %attr(755,root,root) %{_libdir}/lirc/plugins/irlink.so
288 %attr(755,root,root) %{_libdir}/lirc/plugins/irtoy.so
289 %attr(755,root,root) %{_libdir}/lirc/plugins/livedrive_midi.so
290 %attr(755,root,root) %{_libdir}/lirc/plugins/livedrive_seq.so
291 %attr(755,root,root) %{_libdir}/lirc/plugins/logitech.so
292 %attr(755,root,root) %{_libdir}/lirc/plugins/mouseremote.so
293 %attr(755,root,root) %{_libdir}/lirc/plugins/mp3anywhere.so
294 %attr(755,root,root) %{_libdir}/lirc/plugins/mplay.so
295 %attr(755,root,root) %{_libdir}/lirc/plugins/pcmak.so
296 %attr(755,root,root) %{_libdir}/lirc/plugins/pinsys.so
297 %attr(755,root,root) %{_libdir}/lirc/plugins/pixelview.so
298 %attr(755,root,root) %{_libdir}/lirc/plugins/silitek.so
299 %attr(755,root,root) %{_libdir}/lirc/plugins/srm7500libusb.so
300 %attr(755,root,root) %{_libdir}/lirc/plugins/tira.so
301 %attr(755,root,root) %{_libdir}/lirc/plugins/udp.so
302 %attr(755,root,root) %{_libdir}/lirc/plugins/uirt2.so
303 %attr(755,root,root) %{_libdir}/lirc/plugins/uirt2_raw.so
304 %attr(755,root,root) %{_libdir}/lirc/plugins/usbx.so
305 %attr(755,root,root) %{_libdir}/lirc/plugins/zotac.so
306 %attr(754,root,root) /etc/rc.d/init.d/lircd
307 %attr(754,root,root) /etc/rc.d/init.d/lircmd
308 %{systemdunitdir}/irexec.service
309 %{systemdunitdir}/lircd.service
310 %{systemdunitdir}/lircd.socket
311 %{systemdunitdir}/lircd-setup.service
312 %{systemdunitdir}/lircd-uinput.service
313 %{systemdunitdir}/lircmd.service
314 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/lircd
315 %dir %{_sysconfdir}/lirc
316 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lirc/irexec.lircrc
317 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lirc/lirc_options.conf
318 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lirc/lircd.conf
319 %{_sysconfdir}/lirc/lircd.conf.d
320 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lirc/lircmd.conf
321 %dir %{_datadir}/lirc
322 %{_datadir}/lirc/configs
323 %{_datadir}/lirc/lirc.hwdb
324 %dir %{_docdir}/lirc
325 %dir %{_docdir}/lirc/plugindocs
326 %{_mandir}/man1/ircat.1*
327 %{_mandir}/man1/irexec.1*
328 %{_mandir}/man1/irpipe.1*
329 %{_mandir}/man1/irpty.1*
330 %{_mandir}/man1/irrecord.1*
331 %{_mandir}/man1/irsend.1*
332 %{_mandir}/man1/irsimreceive.1*
333 %{_mandir}/man1/irsimsend.1*
334 %{_mandir}/man1/irtestcase.1*
335 %{_mandir}/man1/irtext2udp.1*
336 %{_mandir}/man1/irw.1*
337 %{_mandir}/man1/lirc-config-tool.1*
338 %{_mandir}/man1/lirc-lsplugins.1*
339 %{_mandir}/man1/lirc-lsremotes.1*
340 %{_mandir}/man1/lirc-make-devinput.1*
341 %{_mandir}/man1/mode2.1*
342 %{_mandir}/man1/pronto2lirc.1*
343 %{_mandir}/man5/lircd.conf.5*
344 %{_mandir}/man5/lircrc.5*
345 %{_mandir}/man8/lircd.8*
346 %{_mandir}/man8/lircd-setup.8*
347 %{_mandir}/man8/lircd-uinput.8*
348 %{_mandir}/man8/lircmd.8*
349 %{_mandir}/man8/lircrcd.8*
350 %attr(600,root,root) %ghost /var/log/lircd
351 %dir /var/run/lirc
352 %{systemdtmpfilesdir}/%{name}.conf
353
354 %attr(755,root,root) %{_bindir}/irdb-get
355 %attr(755,root,root) %{_bindir}/lirc-setup
356 %{_mandir}/man1/irdb-get.1*
357 %{_mandir}/man1/lirc-setup.1*
358
359 %dir %{py3_sitedir}/lirc
360 %{py3_sitedir}/lirc/__pycache__
361 %{py3_sitedir}/lirc/*.py
362 %attr(755,root,root) %{py3_sitedir}/lirc/_client.so
363
364 %dir %{py3_sitedir}/lirc-setup
365 %{py3_sitedir}/lirc-setup/__pycache__
366 %{py3_sitedir}/lirc-setup/*.py
367 %{py3_sitedir}/lirc-setup/configs
368 %{py3_sitedir}/lirc-setup/lirc-setup
369 %{py3_sitedir}/lirc-setup/lirc-setup.ui
370
371 %files remotes
372 %defattr(644,root,root,755)
373 # XXX: are jpegs in docs (remotes) a good idea?
374 %doc remotes
375
376 %if %{with x}
377 %files X11
378 %defattr(644,root,root,755)
379 %doc doc/irxevent.keys
380 %attr(755,root,root) %{_bindir}/irxevent
381 %attr(755,root,root) %{_bindir}/xmode2
382 %{_mandir}/man1/irxevent.1*
383 %{_mandir}/man1/xmode2.1*
384 %endif
385
386 %files libs
387 %defattr(644,root,root,755)
388 %attr(755,root,root) %{_libdir}/libirrecord.so.*.*.*
389 %attr(755,root,root) %ghost %{_libdir}/libirrecord.so.0
390 %attr(755,root,root) %{_libdir}/liblirc.so.*.*.*
391 %attr(755,root,root) %ghost %{_libdir}/liblirc.so.0
392 %attr(755,root,root) %{_libdir}/liblirc_client.so.*.*.*
393 %attr(755,root,root) %ghost %{_libdir}/liblirc_client.so.0
394 %attr(755,root,root) %{_libdir}/liblirc_driver.so.*.*.*
395 %attr(755,root,root) %ghost %{_libdir}/liblirc_driver.so.0
396
397 %files devel
398 %defattr(644,root,root,755)
399 %attr(755,root,root) %{_libdir}/libirrecord.so
400 %attr(755,root,root) %{_libdir}/liblirc.so
401 %attr(755,root,root) %{_libdir}/liblirc_client.so
402 %attr(755,root,root) %{_libdir}/liblirc_driver.so
403 %{_libdir}/libirrecord.la
404 %{_libdir}/liblirc.la
405 %{_libdir}/liblirc_client.la
406 %{_libdir}/liblirc_driver.la
407 %{_includedir}/lirc
408 %{_includedir}/lirc_client.h
409 %{_includedir}/lirc_driver.h
410 %{_includedir}/lirc_private.h
411 %{_pkgconfigdir}/lirc.pc
412 %{_pkgconfigdir}/lirc-driver.pc
413
414 %if %{with static_libs}
415 %files static
416 %defattr(644,root,root,755)
417 %{_libdir}/libirrecord.a
418 %{_libdir}/liblirc.a
419 %{_libdir}/liblirc_client.a
420 %{_libdir}/liblirc_driver.a
421 %endif
422
423 %files doc
424 %defattr(644,root,root,755)
425 %dir %{_docdir}/lirc
426 %{_docdir}/lirc/html
427 %{_docdir}/lirc/images
428 %{_docdir}/lirc/lirc.org
429 %dir %{_docdir}/lirc/plugindocs
430 %{_docdir}/lirc/plugindocs/README
431 %{_docdir}/lirc/plugindocs/Makefile
432 %{_docdir}/lirc/plugindocs/lirc.css
433 %attr(755,root,root) %{_docdir}/lirc/plugindocs/make-ext-driver-toc.sh
434 %{_docdir}/lirc/plugindocs/*.tmpl
435 %{_docdir}/lirc/plugindocs/*.xsl
436 %{_docdir}/lirc/plugindocs/var
437 # upstream decided to use /var because index can be regenerated after adding more plugins docs
438 %dir /var/lib/lirc
439 /var/lib/lirc/images
440 %dir /var/lib/lirc/plugins
441 # can be regenerated
442 %verify(not md5 mtime size) /var/lib/lirc/plugins/index.html
443 /var/lib/lirc/plugins/lirc.css
This page took 0.089722 seconds and 3 git commands to generate.