2 # - bconds: altivec joystick lcd
3 # - lcd? (app-misc/lcdproc)
4 # - icons for desktop entries
5 # - alpha, sparc, ppc arches?
9 # MythTV now uses a fairly intelligent cpu-detection script, so if you are
10 # building an rpm by hand on the machine it will be used on, I encourage you
11 # to use "--with cpu_autodetect" to let mythtv decide for you.
14 %bcond_with cpu_autodetect # enable CPU autodetection at compile time (sets "-march", "-mcpu" compile flags really)
15 %bcond_without lirc # lirc support
16 %bcond_without alsa # alsa support
17 %bcond_without oss # oss support
18 %bcond_without arts # arts support
19 %bcond_without jack # jack audio connection kit
20 %bcond_without oggvorbis # ogg vorbis
21 %bcond_without opengl # opengl vsync
22 %bcond_without dvb # DVB support
23 %bcond_without xrandr # disable X11 resolution switching
24 %bcond_with ivtv # ivtv support (PVR-250, PVR-350) NFY
25 %bcond_with firewire # ieee1394 (NFY)
26 %bcond_without xvmc # do not use XvMCW
27 %bcond_with mmx # enable mmx
29 # enable mmx automatically on arches having it
30 %ifarch %{ix86} %{x8664}
31 %ifnarch i386 i486 i586 i686
36 Summary: A personal video recorder (PVR) application
37 Summary(pl): Osobista aplikacja do nagrywania obrazu (PVR)
42 Group: Applications/Multimedia
43 Source0: http://www.mythtv.org/mc/%{name}-%{version}.tar.bz2
44 # Source0-md5: e6cabf88feeaf6ae8f830d3fdf7b113d
45 Source1: mythbackend.sysconfig
46 Source2: mythbackend.init
47 Source3: mythbackend.logrotate
48 Source4: mythepg.desktop
49 Source5: mythfrontend.desktop
50 Source6: mythprofind.desktop
51 Source7: %{name}.desktop
52 Patch0: %{name}-lib64.patch
53 Patch1: %{name}-x86_64-configure.patch
54 Patch2: %{name}-x11.patch
55 Patch3: %{name}-mythstream.patch
56 URL: http://www.mythtv.org/
57 BuildRequires: XFree86-devel
58 #BuildRequires: DirectFB-devel
59 %{?with_alsa:BuildRequires: alsa-lib-devel}
60 %{?with_arts:BuildRequires: arts-devel >= 13:0.9.5}
61 %{?with_dvb:BuildRequires: libdvb-devel}
62 %{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
63 %{?with_oggvorbis:BuildRequires: libvorbis-devel}
65 BuildRequires: libraw1394-devel
66 BuildRequires: libavc1394-devel
67 BuildRequires: libiec61883-devel # missing in PLD?
69 BuildRequires: freetype-devel >= 1:2.0.0
70 BuildRequires: gcc-c++
71 BuildRequires: lame-libs-devel
72 %{?with_xvmc:BuildRequires: libXvMCW-devel}
73 BuildRequires: linux-libc-headers >= 7:2.6.10
74 %{?with_lirc:BuildRequires: lirc-devel}
75 BuildRequires: mysql-devel
76 BuildRequires: qmake >= 6:3.2.1-4
77 BuildRequires: qt-devel >= 6:3.2.1-4
78 BuildRequires: rpmbuild(macros) >= 1.228
79 BuildRequires: sed >= 4.0
80 ExclusiveArch: %{ix86} %{x8664} ppc
81 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
84 MythTV implements the following PVR features, and more, with a unified
86 - Basic 'live-tv' functionality. Pause/Fast Forward/Rewind "live" TV.
87 - Video compression using RTjpeg or MPEG-4
88 - Program listing retrieval using XMLTV
89 - Themable, semi-transparent on-screen display
90 - Electronic program guide
91 - Scheduled recording of TV programs
92 - Resolution of conflicts between scheduled recordings
96 MythTV implementuje nastêpuj±ce mo¿liwo¶ci PVR, a nawet wiêcej, wraz z
97 ujednoliconym interfejsem graficznym:
98 - podstawowa funkcjonalno¶æ "live-tv"; pauza, szybkie przewijanie,
99 przewijanie "¿ywej" telewizji
100 - kompresja obrazu przy u¿yciu RTjpeg lub MPEG-4
101 - odczyt listy programów przy u¿yciu XMLTV
102 - pseudoprzezroczyste wy¶wietlanie na obrazie (OSD) z obs³ug± motywów
103 - elektroniczny przewodnik po programie
104 - planowane nagrywanie programów telewizyjnych
105 - rozwi±zywanie konfliktów miêdzy planowanymi nagraniami
106 - podstawowa edycja obrazu
109 Summary: Server component of mythtv (a PVR)
110 Summary(pl): Czê¶æ serwerowa mythtv (PVR)
111 Group: Applications/Multimedia
112 Requires(pre): /bin/id
113 Requires(pre): /usr/bin/getgid
114 Requires(pre): /usr/sbin/groupadd
115 Requires(pre): /usr/sbin/useradd
116 Requires(postun): /usr/sbin/groupdel
117 Requires(postun): /usr/sbin/userdel
118 Requires(post,preun): /sbin/chkconfig
119 Requires: mythtv = %{version}-%{release}
120 Provides: user(mythtv)
121 Provides: group(mythtv)
124 MythTV provides a unified graphical interface for recording and
125 viewing television programs. Refer to the mythtv package for more
128 This package contains only the server software, which provides video
129 and audio capture and encoding services. In order to be useful, it
130 requires a mythtv-frontend installation, either on the same system or
131 one reachable via the network.
133 %description backend -l pl
134 MythTV dostarcza ujednolicony interfejs graficzny do nagrywania i
135 ogl±dania programów telewizyjnych. Wiêcej informacji w pakiecie
138 Ten pakiet zawiera tylko oprogramowanie serwerowe, udostêpniaj±ce
139 us³ugi przechwytywania i kodowania obrazu i d¼wiêku. Aby by³o
140 przydatne, wymaga instalacji mythtv-frontend - na tym samym systemie,
141 albo innym osi±galnym po sieci.
144 Summary: Client component of mythtv (a PVR)
145 Summary(pl): Czê¶æ kliencka mythtv (PVR)
146 Group: Applications/Multimedia
147 Requires: mythtv = %{version}-%{release}
148 Requires: mythtv-themes = %{version}-%{release}
149 Provides: mythtv-frontend-api = %(echo %{version} | cut -d. -f1,2)
151 %description frontend
152 MythTV provides a unified graphical interface for recording and
153 viewing television programs. Refer to the mythtv package for more
156 This package contains only the client software, which provides a
157 front-end for playback and configuration. It requires access to a
158 mythtv-backend installation, either on the same system or one
159 reachable via the network.
161 %description frontend -l pl
162 MythTV dostarcza ujednolicony interfejs graficzny do nagrywania i
163 ogl±dania programów telewizyjnych. Wiêcej informacji w pakiecie
166 Ten pakiet zawiera tylko oprogramowanie klienckie, dostarczaj±ce
167 frontend do odtwarzania i konfiguracji. Wymaga dostêpu do instalacji
168 mythtv-backend - na tym samym systemie, albo innym osi±galnym po
172 Summary: Setup the mythtv backend
173 Summary(pl): Konfigurator backendu mythtv
174 Group: Applications/Multimedia
177 MythTV provides a unified graphical interface for recording and
178 viewing television programs. Refer to the mythtv package for more
181 This package contains only the setup software for configuring the
184 %description setup -l pl
185 MythTV dostarcza ujednolicony interfejs graficzny do nagrywania i
186 ogl±dania programów telewizyjnych. Wiêcej informacji w pakiecie
189 Ten pakiet zawiera tylko program do konfigurowania backendu mythtv.
192 Summary: Base themes for mythtv's frontend
193 Summary(pl): Podstawowe motywy dla frontendu mythtv
194 Group: Applications/Multimedia
197 MythTV provides a unified graphical interface for recording and
198 viewing television programs. Refer to the mythtv package for more
201 This package contains only the base themes used by the frontend and
204 %description themes -l pl
205 MythTV dostarcza ujednolicony interfejs graficzny do nagrywania i
206 ogl±dania programów telewizyjnych. Wiêcej informacji w pakiecie
209 Ten pakiet zawiera tylko podstawowe motywy u¿ywane przez frontend oraz
213 Summary: Library providing mythtv support
214 Summary(pl): Biblioteka udostêpniaj±ca obs³ugê mythtv
216 Requires: freetype >= 1:2.0.0
218 Requires: qt >= 6:3.2.1-4
219 Requires: qt-plugin-mysql >= 6:3.2.1-4
221 %description -n libmyth
222 Common library code for MythTV and add-on modules (development) MythTV
223 provides a unified graphical interface for recording and viewing
224 television programs. Refer to the mythtv package for more information.
226 %description -n libmyth -l pl
227 Wspólny kod biblioteki dla MythTV i dodatkowych modu³ów MythTV
228 dostarczaj±cy ujednolicony interfejs graficzny do nagrywania i
229 ogl±dania programów telewizyjnych. Wiêcej informacji w pakiecie
232 %package -n libmyth-devel
233 Summary: Development files for libmyth
234 Summary(pl): Pliki nag³ówkowe libmyth
235 Group: Development/Libraries
236 Requires: libmyth = %{version}-%{release}
238 %description -n libmyth-devel
239 This package contains the header files for developing add-ons for
242 %description -n libmyth-devel -l pl
243 Ten pakiet zawiera pliki nag³ówkowe do tworzenia dodatków dla mythtv.
245 %package -n libmyth-static
246 Summary: Static libmyth library
247 Summary(pl): Statyczna biblioteka libmyth
248 Group: Development/Libraries
249 Requires: libmyth-devel = %{version}-%{release}
251 %description -n libmyth-static
252 Static libmyth library.
254 %description -n libmyth-static -l pl
255 Statyczna biblioteka libmyth.
264 rm -rf database/old # not supported in PLD
267 %if %{with cpu_autodetect}
268 # Make sure we have /proc mounted
269 if [ ! -r /proc/cpuinfo ]; then
270 echo "You need to have /proc mounted in order to build with cpu_autodetect!"
274 export QTDIR="%{_prefix}"
276 %if "%{_lib}" != "lib"
277 export QMAKE_LIBDIR_X11=%{_prefix}/X11R6/%{_lib}
280 # BTW: this is not autoconf configure
283 --disable-distcc --disable-ccache \
284 --compile-type=%{?debug:debug}%{!?debug:release} \
285 %{?with_dvb:--enable-dvb --dvb-path=%{_includedir} --enable-dvb-eit} \
286 --extra-cflags="%{rpmcflags} -fomit-frame-pointer" \
287 --extra-cxxflags="%{rpmcxxflags} -fomit-frame-pointer" \
288 %if %{with cpu_autodetect}
295 --cpu=i386 --tune=pentium4 \
301 %{?with_mmx:--enable-mmx} \
303 --%{?with_arts:en}%{!?with_arts:dis}able-audio-arts \
304 --%{?with_alsa:en}%{!?with_alsa:dis}able-audio-alsa \
305 --%{?with_oss:en}%{!?with_oss:dis}able-audio-oss \
306 --%{?with_oss:en}%{!?with_oss:dis}able-audio-jack \
307 --%{?with_opengl:en}%{!?with_opengl:dis}able-opengl-vsync \
308 --%{?with_lirc:en}%{!?with_lirc:dis}able-lirc \
309 --%{?with_oggvorbis:en}%{!?with_oggvorbis:dis}able-vorbis \
310 --%{?with_firewire:en}%{!?with_firewire:dis}able-firewire \
311 --%{?with_xrandr:en}%{!?with_xrandr:dis}able-xrandr \
312 --%{?with_xvmc:en}%{!?with_xvmc:dis}able-xvmc \
315 # --disable-joystick-menu \
317 # --enable-directfb enable DirectFB (Linux non-X11 video)
318 # --enable-directx enable DirectX (Microsoft video)
324 rm -rf $RPM_BUILD_ROOT
325 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,sysconfig} \
326 $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_desktopdir}} \
327 $RPM_BUILD_ROOT/var/{cache,lib,log,run}/mythtv \
328 $RPM_BUILD_ROOT%{_libdir}/mythtv/plugins
330 export QTDIR="%{_prefix}"
332 INSTALL_ROOT=$RPM_BUILD_ROOT
334 # Install the files that we added on top of mythtv's own stuff
335 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/mythbackend
336 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mythbackend
337 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/mythbackend
340 install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}
341 install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
342 install %{SOURCE6} $RPM_BUILD_ROOT%{_desktopdir}
343 install %{SOURCE7} $RPM_BUILD_ROOT%{_desktopdir}
345 # Install settings.pro so people can see the build options we used
346 install -d $RPM_BUILD_ROOT%{_datadir}/mythtv/build
347 install config.mak settings.pro $RPM_BUILD_ROOT%{_datadir}/mythtv/build
350 rm -rf $RPM_BUILD_ROOT
353 %groupadd -g 149 %{name}
354 %useradd -u 149 -d /var/lib/mythtv -g %{name} -c "MythTV User" %{name}
355 %addusertogroup %{name} video
356 %addusertogroup %{name} audio
359 /sbin/chkconfig --add mythbackend
362 if [ "$1" = "0" ]; then
363 %service -q mythbackend stop
364 /sbin/chkconfig --del mythbackend
368 if [ "$1" = "0" ]; then
373 %post -n libmyth -p /sbin/ldconfig
374 %postun -n libmyth -p /sbin/ldconfig
377 if [ "$1" = 1 ]; then
378 %banner -e %{name}-setup <<EOF
379 To grant mysql permissions to mythtv, please run
380 zcat %{_docdir}/%{name}-setup-%{version}/database/mc.sql.gz | mysql
385 %defattr(644,root,root,755)
386 %doc README* UPGRADING AUTHORS FAQ
387 %doc docs contrib configfiles
390 %defattr(644,root,root,755)
391 %attr(755,root,root) %{_bindir}/mythbackend
392 %attr(755,root,root) %{_bindir}/mythfilldatabase
393 %attr(755,root,root) %{_bindir}/mythjobqueue
394 %attr(775,root,mythtv) %dir /var/lib/mythtv
395 %attr(775,root,mythtv) %dir /var/cache/mythtv
396 %attr(775,root,mythtv) %dir /var/run/mythtv
397 %attr(754,root,root) /etc/rc.d/init.d/mythbackend
398 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mythbackend
399 %config /etc/logrotate.d/mythbackend
400 %attr(775,root,mythtv) %dir %{_localstatedir}/log/mythtv
403 %defattr(644,root,root,755)
405 %dir %{_datadir}/mythtv
406 %dir %{_libdir}/mythtv
407 %{_datadir}/mythtv/*.xml
408 %attr(755,root,root) %{_bindir}/mythfrontend
409 %attr(755,root,root) %{_bindir}/mythtv
410 %attr(755,root,root) %{_bindir}/mythepg
411 %attr(755,root,root) %{_bindir}/mythprogfind
412 %attr(755,root,root) %{_bindir}/mythcommflag
413 %attr(755,root,root) %{_bindir}/mythtranscode
414 %attr(755,root,root) %{_bindir}/mythtvosd
415 %dir %{_libdir}/mythtv/filters
416 %dir %{_libdir}/mythtv/plugins
417 %attr(755,root,root) %{_libdir}/mythtv/filters/*.so
418 %{_datadir}/mythtv/*.ttf
419 %{_datadir}/mythtv/i18n
420 %{_desktopdir}/*.desktop
423 %defattr(644,root,root,755)
425 %attr(755,root,root) %{_bindir}/mythtv-setup
428 %defattr(644,root,root,755)
429 %{_datadir}/mythtv/themes
432 %defattr(644,root,root,755)
433 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
435 %files -n libmyth-devel
436 %defattr(644,root,root,755)
437 %attr(755,root,root) %{_libdir}/*.so
439 %{_datadir}/mythtv/build
441 %files -n libmyth-static
442 %defattr(644,root,root,755)