Author: w.kier                       Date: Sun Mar  8 18:30:00 2009 GMT
Module: SPECS                         Tag: DEVEL
---- Log message:
- changed build environement settings
  defined libdirname instead patching source
  some bconds reversed
- removed obsolete patches
- added perl bindings
- added mythfrontend icon - feel free to change it
- added dshowserver support - exclusive for x86/x86_64 archs

---- Files affected:
SPECS:
   mythtv.spec (1.73.2.1 -> 1.73.2.2) 

---- Diffs:

================================================================
Index: SPECS/mythtv.spec
diff -u SPECS/mythtv.spec:1.73.2.1 SPECS/mythtv.spec:1.73.2.2
--- SPECS/mythtv.spec:1.73.2.1  Tue Oct  7 19:20:02 2008
+++ SPECS/mythtv.spec   Sun Mar  8 19:29:54 2009
@@ -2,7 +2,6 @@
 # TODO
 # - bconds: altivec joystick lcd
 # - lcd? (app-misc/lcdproc)
-# - icons for desktop entries
 # - alpha, sparc, ppc arches?
 #
 # Specfile for MythTV
@@ -16,15 +15,18 @@
 %bcond_without lirc            # lirc support
 %bcond_without alsa            # alsa support
 %bcond_without oss             # oss support
-%bcond_without arts            # arts support
+%bcond_with    arts            # arts support
 %bcond_without jack            # jack audio connection kit
 %bcond_without opengl          # opengl vsync
 %bcond_without dvb             # DVB support
 %bcond_without xrandr          # disable X11 resolution switching
-%bcond_with    ivtv            # ivtv support (PVR-250, PVR-350) NFY
+%bcond_without ivtv            # ivtv support (PVR-250, PVR-350) NFY
+%bcond_without iptv
 %bcond_with    firewire        # ieee1394 (NFY)
 %bcond_without xvmc            # do not use XvMCW
-%bcond_with    mmx                     # enable mmx
+%bcond_with    mmx             # enable MMX
+%bcond_with     dshowserver    # enable directshow codecs server
+%bcond_with    directfb
 
 # enable mmx automatically on arches having it
 %ifarch %{ix86} %{x8664}
@@ -33,34 +35,40 @@
 %endif
 %endif
 
-%define                qtver   4.3
-%define                snap    20081007
+# dshowserver is exclusive arch for x86 x86_64 only
+%ifnarch %{ix86} %{x8664}
+%define with_dshowserver 0
+%endif
 
+%define _snap 20090302
+%define _rel 0.3
 Summary:       A personal video recorder (PVR) application
 Summary(pl.UTF-8):     Osobista aplikacja do nagrywania obrazu (PVR)
 Name:          mythtv
 Version:       0.22
-Release:       0.%{snap}.1
+Release:       %{?_snap:%{_snap}.}%{_rel}
 License:       GPL v2
 Group:         Applications/Multimedia
-Source0:       %{name}-%{version}-%{snap}.tar.gz
-# Source0-md5: 5a10a4752a950c246859c2a2710d2f47
+Source0:       %{name}-%{version}-%{?_snap:%{_snap}}.tar.bz2
+# Source0-md5: 49fc135e1cde90cd935c1229467fa37e
 Source1:       mythbackend.sysconfig
 Source2:       mythbackend.init
 Source3:       mythbackend.logrotate
-Source5:       mythfrontend.desktop
-Patch0:                %{name}-configure.patch
+Source5:       pld-mythfrontend.desktop
+Source6:        pld-mythfrontend.png
+%{?with_dshowserver:Source20: dshowcodecs}
+#Patch100:             %{name}-branch.diff
+Patch0:                        %{name}-configure.patch
+#Patch1:               %{name}-mythstream.patch
+#Patch2:               %{name}-pl.patch
+Patch3:                        %{name}-sbinpath.patch
+#Patch4:               mythtv-dvdnav-shared.patch
+%{?with_dshowserver:Patch20: %{name}-dshowserver_trunk.patch}
 URL:           http://www.mythtv.org/
-BuildRequires: OpenGL-devel
-BuildRequires: OpenGL-GLU-devel
-BuildRequires: QtCore-devel >= %{qtver}
-BuildRequires: QtGui-devel >= %{qtver}
-BuildRequires: QtNetwork-devel >= %{qtver}
-BuildRequires: QtOpenGL-devel >= %{qtver}
-BuildRequires: QtSql-devel >= %{qtver}
-BuildRequires: QtWebKit-devel >= %{qtver}
-BuildRequires: QtXml-devel >= %{qtver}
+BuildRequires: OpenGL-devel
+BuildRequires: OpenGL-GLU-devel
 %{?with_alsa:BuildRequires:    alsa-lib-devel}
+%{?with_arts:BuildRequires:    arts-devel >= 13:0.9.5}
 BuildRequires: ffmpeg-devel
 BuildRequires: freetype-devel >= 1:2.0.0
 %{?with_jack:BuildRequires:    jack-audio-connection-kit-devel}
@@ -74,12 +82,31 @@
 BuildRequires: linux-libc-headers >= 7:2.6.10
 %{?with_lirc:BuildRequires:    lirc-devel}
 BuildRequires: mysql-devel
+#BuildRequires:        patchutils
+BuildRequires: qt4-qmake
+BuildRequires: python-devel
+BuildRequires:  rpm-pythonprov
+BuildRequires: perl-devel
+BuildRequires: perl-tools-pod
+BuildRequires: Qt3Support-devel
+BuildRequires: QtOpenGL-devel
+BuildRequires: QtXml-devel
+BuildRequires: qt4-build
+BuildRequires: QtNetwork-devel
+BuildRequires: QtGui-devel
+BuildRequires: QtSql-devel
+BuildRequires: QtCore-devel
+BuildRequires:  QtWebKit-devel
 BuildRequires: rpmbuild(macros) >= 1.228
 BuildRequires: sed >= 4.0
 # for bundled libavcodec
 BuildRequires: libdts-devel
 BuildRequires: xorg-lib-libXext-devel
 BuildRequires: xorg-lib-libXxf86vm-devel
+BuildRequires: Mesa-libGLU-devel
+# for Perl bindings
+BuildRequires: perl-ExtUtils-MakeMaker
+
 ExclusiveArch: %{ix86} %{x8664} ppc
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -224,8 +251,7 @@
 Group:         Libraries
 Requires:      freetype >= 1:2.0.0
 Requires:      lame
-Requires:      qt >= 6:3.2.1-4
-Requires:      qt-plugin-mysql >= 6:3.2.1-4
+Requires:      QtSql-mysql
 
 %description -n libmyth
 Common library code for MythTV and add-on modules (development) MythTV
@@ -263,10 +289,41 @@
 %description -n libmyth-static -l pl.UTF-8
 Statyczna biblioteka libmyth.
 
+%package -n perl-MythTV
+Summary: MythTV Perl bindings
+Summary(pl.UTF-8):     Interfejs Perla dla MythTV
+Group: System Environment/Libraries
+
+%description -n perl-MythTV
+MythTV Perl bindings.
+
+%description -n perl-MythTV -l pl.UTF-8
+Ten pakiet zawiera moduły Perla do tworzenia dodatków dla mythtv.
+
+%package -n python-MythTV
+Summary: MythTV Python bindings
+Summary(pl.UTF-8):     Interfejs Pythona dla MythTV
+Group: System Environment/Libraries
+Requires: MySQL-python
+
+%description -n python-MythTV
+MythTV Python bindings.
+
+%description -n python-MythTV -l pl.UTF-8
+Ten pakiet zawiera moduły Pythona do tworzenia dodatków dla mythtv.
+
 %prep
-%setup -q -n %{name}-%{version}-%{snap}
+
+%setup -q %{SOURCE0}
+
+
 %patch0 -p0
+#%patch1 -p1
+#%patch2 -p1
+%patch3 -p1
+#%patch4 -p1
 
+%{?with_dshowserver:%patch20 -p1}
 rm -rf database/old # not supported in PLD
 
 # lib64 fix - enable to update patch
@@ -280,7 +337,45 @@
 exit 1
 %endif
 
+# Assigning null to QMAKE_LIBDIR_QT will prevent makefiles contain
+# -L$(QTDIR)/%{_lib} and -Wl,-rpath,$(QTDIR)/%{_lib}. And that will
+# prevent compiler finding libs from system when they should be looked
+# from current buildtree.
+# but that made it link with -lqt which doesn't exist, instead of -lqt-mt
+# so we make QMAKE wrapper which will do sed subst after calling
+# qmake. this is the wrapper.
+cat > qmake-wrapper.sh <<'EOF'
+#!/bin/sh
+getmakefile() {
+       while [ $# -gt 0 ]; do
+               case "$1" in
+               -o)
+                       shift
+                       makefile="$1"
+                       return
+                       ;;
+       esac
+               shift
+       done
+}
+
+qmake-qt4 "$@"
+getmakefile "$@"
+if [ "$makefile" ]; then
+       %{__sed} -i -e '
+               s;-Wl,-rpath,$(QTDIR)/%{_lib};;
+               s;-L$(QTDIR)/%{_lib};;
+       ' $makefile
+fi
+EOF
+chmod +x qmake-wrapper.sh
+
+# move perl bindings to vendor prefix
+sed -i -e 's#perl Makefile.PL#%{__perl} Makefile.PL INSTALLDIRS=vendor 
OPTIMIZE="$RPM_OPT_FLAGS"#' \
+   bindings/perl/perl.pro
+
 %build
+
 %if %{with cpu_autodetect}
 # Make sure we have /proc mounted
 if [ ! -r /proc/cpuinfo ]; then
@@ -289,14 +384,10 @@
 fi
 %endif
 
-# NB: not autoconf configure
-# help configure::has_library() to locate libs
-LD_LIBRARY_PATH=%{_libdir} \
-CC="%{__cc}" \
-CXX="%{__cxx}" \
 ./configure \
        --prefix=%{_prefix} \
        --libdir=%{_libdir} \
+       --libdir-name=`basename %{_libdir}` \
        --mandir=%{_mandir} \
        --disable-distcc --disable-ccache \
        --compile-type=%{?debug:debug}%{!?debug:release} \
@@ -327,28 +418,46 @@
        --%{?with_firewire:en}%{!?with_firewire:dis}able-firewire \
        --%{?with_xrandr:en}%{!?with_xrandr:dis}able-xrandr \
        --%{?with_xvmc:en}%{!?with_xvmc:dis}able-xvmc \
+       --%{?with_ivtv:en}%{!?with_ivtv:dis}able-ivtv \
+       --%{?with_iptv:en}%{!?with_iptv:dis}able-iptv \
+       
--%{?with_nellymoserdec:en}%{!?with_nellymoserdec:dis}able-decoder=nellymoser \
+       --%{?with_directfb:en}%{!?with_directfb:dis}able-directfb \
        --enable-xv \
        --enable-x11 \
 
+%{_libdir}/qt4/bin/qmake mythtv.pro
+#sed -i -e 's/usr\/\/usr/usr/g' config.ep
+
+
 %{__make}
 
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,sysconfig} \
                $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_desktopdir}} \
                $RPM_BUILD_ROOT/var/{cache,lib,log,run}/mythtv \
-               $RPM_BUILD_ROOT%{_libdir}/mythtv/plugins
+               $RPM_BUILD_ROOT%{_libdir}/mythtv \
+               $RPM_BUILD_ROOT%{_libdir}/mythtv/plugins \
+               $RPM_BUILD_ROOT%{_pixmapsdir}
 
 %{__make} install \
        INSTALL_ROOT=$RPM_BUILD_ROOT
 
+# required to build some plugins
+#      install libs/libavcodec/*.h $RPM_BUILD_ROOT%{_includedir}/mythtv \
+#              libs/libavformat/*.h $RPM_BUILD_ROOT%{_includedir}/mythtv \
+#              libs/libavutil/*.h $RPM_BUILD_ROOT%{_includedir}/mythtv
+
 # Install the files that we added on top of mythtv's own stuff
 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/mythbackend
 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mythbackend
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/mythbackend
+%{?with_dshowserver:install %{SOURCE20} $RPM_BUILD_ROOT%{_datadir}/mythtv}
 
 # desktop entries
 install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
+install %{SOURCE6} $RPM_BUILD_ROOT%{_pixmapsdir}
 
 # Install settings.pro so people can see the build options we used
 install -d $RPM_BUILD_ROOT%{_datadir}/mythtv/build
@@ -413,16 +522,16 @@
 %files
 %defattr(644,root,root,755)
 %doc README* UPGRADING AUTHORS FAQ
-#%doc docs contrib configfiles
+%doc docs contrib config
 %doc keys.txt mythtvosd mythwelcome mythlcdserver
 
 %files backend
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/mythbackend
-%attr(755,root,root) %{_bindir}/mythcommflag
+%attr(755,root,root) %{_sbindir}/mythbackend
+%attr(755,root,root) %{_sbindir}/mythcommflag
 %attr(755,root,root) %{_bindir}/mythfilldatabase
-%attr(755,root,root) %{_bindir}/mythjobqueue
-%attr(755,root,root) %{_bindir}/mythlcdserver
+%attr(755,root,root) %{_sbindir}/mythjobqueue
+%attr(755,root,root) %{_sbindir}/mythlcdserver
 %attr(755,root,root) %{_bindir}/mythtranscode
 %attr(755,root,root) %{_bindir}/mythreplex
 %attr(775,root,mythtv) %dir /var/lib/mythtv
@@ -449,7 +558,11 @@
 %attr(755,root,root) %{_libdir}/mythtv/filters/*.so
 %{_datadir}/mythtv/*.ttf
 %dir %{_datadir}/mythtv/i18n
+%if %{with dshowserver}
+%attr(644,root,root) %{_datadir}/mythtv/dshowcodecs
+%endif
 %{_desktopdir}/*.desktop
+%{_pixmapsdir}/*.png
 
 %files setup
 %defattr(644,root,root,755)
@@ -462,7 +575,9 @@
 
 %files -n libmyth
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
+%attr(755,root,root) %{_libdir}/lib*.so*
+%attr(755,root,root) %{_libdir}/lib*.a
+%attr(644,root,root) %{_datadir}/mythtv/*.pl
 
 %files -n libmyth-devel
 %defattr(644,root,root,755)
@@ -473,42 +588,48 @@
 %files -n libmyth-static
 %defattr(644,root,root,755)
 
+%files -n perl-MythTV
+%defattr(644,root,root,755)
+%attr(644,root,root) %{perl_vendorlib}/MythTV.pm
+%attr(755,root,root) %dir %{perl_vendorlib}/MythTV
+%attr(644,root,root) %{perl_vendorlib}/MythTV/*.pm
+%attr(644,root,root) %{perl_vendorlib}/IO/Socket/INET/MythTV.pm
+%exclude %{perl_vendorarch}/auto/MythTV/.packlist
+
+%files -n python-MythTV
+%defattr(644,root,root,755)
+%attr(755,root,root) %dir %{python_sitelib}/MythTV/
+%attr(644,root,root) %{python_sitelib}/MythTV/*
+
 %define        date    %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <[email protected]>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
+Exept wk :P
 
 $Log$
-Revision 1.73.2.1  2008/10/07 17:20:02  shadzik
-- 0.22 snap 20081007
-- ffmpeg build works
-- generic build mode
-- works only with qt4
-
-Revision 1.72  2008/10/07 10:10:02  shadzik
-- BR: OpenGL-GL-devel -> OpenGL-devel
-- rel 4
-
-Revision 1.71  2008/10/07 10:05:29  shadzik
-- more BRs
-
-Revision 1.70  2008/10/07 09:48:19  shadzik
-- BR: xorg-lib-libXxf86vm-devel
-- rel 2
-
-Revision 1.69  2008/10/07 09:34:06  shadzik
-- build dvb support by default (there's no known reason why we shouldn't do 
it, analog devices should work properly despite that)
-- rel 1
-
-Revision 1.68  2008/10/07 09:27:50  shadzik
-- 0.21
-- rel 0.1
-- get rid of this "snap" stuff, confuses me
-- del optflags.patch, add fixes.patch
-- renumber patches
-- no --disable-opts option nor --enable-dvb-eit
-- call make with addition QTDIR variable (exporting it works for most cases 
but unfortunately not for all)
-- shall we use the generic build mode instead of our qmake-hack thing? for now 
we let it build as was
+Revision 1.73.2.2  2009/03/08 18:29:54  w.kier
+- changed build environement settings
+  defined libdirname instead patching source
+  some bconds reversed
+- removed obsolete patches
+- added perl bindings
+- added mythfrontend icon - feel free to change it
+- added dshowserver support - exclusive for x86/x86_64 archs
+
+
+Revision 1.69  2008/10/13 10:22:00 wk
+- add python & perl binings packages
+
+Revision 1.68  2008/10/11 18:21:00 wk
+- initial for 0.22 - Qt4 based still devel version
+- rewriten "Requires" for Qt4
+- changed QTDIRS for Qt4
+- add dshowserver support
+- rewriten some base distro patches
+- some others commented as unusable
+- changed state or added some bconds
+- nellymoser flash audio decoder fails to build - bcond added
 
 Revision 1.67  2007/11/11 12:15:00  glen
 - add QTDIR
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/mythtv.spec?r1=1.73.2.1&r2=1.73.2.2&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to