[suggest] MPlayer upgrade suggestion

Bjarne Saltbaek arnebjarne72 at hotmail.com
Thu Jun 11 19:41:39 CEST 2009


>From [users]

On Tue, 2009-06-09 at 11:01 +0200, MHR wrote:

> I'm wondering what the chances are that we could get a more recent
> (than 2 years old) version of mplayer on rpmforge.
>
> Just asking.
>
> Thanks.
>
> mhr


>Actually I had a look at it last week. There is a lot of tricks and
>workarounds in the current spec. I was too scared to update it ;)

>Chris

I fiddled around with the MPlayer SPEC and got a brand new MPlayer build on 
a CentOS 5.3 i386.
The static build live555 needs a upgrade too to build.


Here's my suggested patch to the SPEC in

mplayer-1.0-0.40.rc1try2.rf.src.rpm:


mplayer.spec.patch:
--- mplayer.spec.org    2009-06-10 22:55:45.000000000 +0200
+++ mplayer.spec        2009-06-11 19:28:27.000000000 +0200
@@ -1,3 +1,6 @@
+# disable creation of *-debuginfo-*.rpm
+%define debug_package %{nil}
+
 # $Id: mplayer.spec 6491 2008-09-24 00:51:40Z dag $
 # Authority: matthias

@@ -73,15 +76,16 @@
 %{?yd3:%define _without_theora 1}

 # Is this a daily build? If so, put the date like "20020808" otherwise put 
0
-#define date      20060919
-%define rcver     rc1
+%define date      20090611
+%define rcver     rc3
+%define svnver    svn29353

-%define livever   2006.10.18a
+%define livever   2009.06.02

 Summary: MPlayer, the Movie Player for Linux
 Name: mplayer
 Version: 1.0
-Release: 0.40%{?rcver:.%{rcver}}%{?date:.%{date}}try2.rf
+Release: 1%{?rcver:.%{rcver}}%{?date:.%{date}}.rf
 License: GPL
 Group: Applications/Multimedia
 URL: http://mplayerhq.hu/
@@ -101,18 +105,18 @@
 Source0: 
http://www.mplayerhq.hu/MPlayer/releases/MPlayer-%{version}%{?rcver}.tar.bz2
 %endif
 Source1: http://www.live555.com/liveMedia/public/live.%{livever}.tar.gz
-Source2: http://www.mplayerhq.hu/MPlayer/Skin/Blue-1.6.tar.bz2
+Source2: http://www.mplayerhq.hu/MPlayer/Skin/Blue-1.7.tar.bz2
 Source3: mplayer.png
 # Only for reference, required on YDL4 at least
 Source10: uio.h-ppc.patch
-Patch0: MPlayer-0.90pre9-runtimemsg.patch
+#Patch0: MPlayer-0.90pre9-runtimemsg.patch
 Patch1: MPlayer-0.90-playlist.patch
-Patch2: MPlayer-0.90pre10-redhat.patch
+Patch2: MPlayer-1.0pre-redhat.patch
 Patch10: MPlayer-1.0pre6a-fribidi.patch
 # Fixes to 1.0rc1 which won't be needed anymore with 1.0rc2
-Patch50: MPlayer-1.0rc1-dct64_amd.patch
-Patch51: asmrules_fix_20061231.diff
-Patch100: mplayer-1.0rc1-h264-static.patch
+#Patch50: MPlayer-1.0rc1-dct64_amd.patch
+#Patch51: asmrules_fix_20061231.diff
+#Patch100: mplayer-1.0rc1-h264-static.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
 Requires: mplayer-fonts
 BuildRequires: libpng-devel, libjpeg-devel, libungif-devel
@@ -143,12 +147,28 @@
 %{!?_without_vstream:BuildRequires: vstream-client-devel}
 %{!?_without_amrnb:BuildRequires: amrnb-devel}
 %{!?_without_samba:BuildRequires: samba-common}
-%{!?_without_speex:BuildRequires: speex-devel}
+%{!?_without_speex:BuildRequires: speex-devel >= 1.1}
 %{!?_without_nas:BuildRequires: nas-devel}
 %{!?_without_twolame:BuildRequires: twolame-devel}
 %{?_with_modxorg:BuildRequires: libXv-devel, libXxf86vm-devel, libGL-devel, 
libXt-devel}
 %{!?_with_modxorg:%{!?_without_xvmc:BuildRequires: libXvMCW-devel}}
 %{?_with_modxorg:%{!?_without_xvmc:BuildRequires: libXvMC-devel}}
+BuildRequires: desktop-file-utils
+BuildRequires: enca-devel
+BuildRequires: faad2-devel
+BuildRequires: fontconfig-devel
+BuildRequires: freetype-devel >= 2.0.9
+BuildRequires: giflib-devel
+BuildRequires: libXinerama-devel
+BuildRequires: libdvdnav-devel
+BuildRequires: libvorbis-devel
+BuildRequires: openal-devel
+BuildRequires: svgalib-devel
+# for XML docs, SVN only
+BuildRequires: xmms-devel
+BuildRequires: docbook-dtds
+BuildRequires: docbook-style-xsl
+BuildRequires: libxslt

 %description
 MPlayer is a multimedia player. It plays most video formats as well as 
DVDs.
@@ -196,13 +216,13 @@
 %else
 %setup -n MPlayer-%{version}%{?rcver} -a 1
 %endif
-%patch0 -p1 -b .runtimemsg
+#%patch0 -p1 -b .runtimemsg
 %patch1 -p1 -b .playlist
 %patch2 -p0 -b .redhat
 %patch10 -p1 -b .fribidi
-%patch50 -p1 -b .dct64_amd
-%patch51 -p0 -b .asmrules_fix
-%patch100 -p0 -b .h264_static
+#%patch50 -p1 -b .dct64_amd
+#%patch51 -p0 -b .asmrules_fix
+#%patch100 -p0 -b .h264_static

 # Overwrite some of the details of the provided system menu entry
 %{__perl} -pi -e 's|^Exec=gmplayer$|Exec=gmplayer %f|g;
@@ -211,6 +231,16 @@
     etc/mplayer.desktop
 echo 
"MimeType=video/dv;video/mpeg;video/x-mpeg;video/msvideo;video/quicktime;video/x-anim;video/x-avi;video/x-ms-asf;video/
x-ms-wmv;video/x-msvideo;video/x-nsv;video/x-flc;video/x-fli;application/ogg;application/x-ogg;application/x-matroska;audio/x
-mp3;audio/x-mpeg;audio/mpeg;audio/x-wav;audio/x-mpegurl;audio/x-scpls;audio/x-m4a;audio/x-ms-asf;audio/x-ms-asx;audio/x-ms-w
ax;application/vnd.rn-realmedia;audio/x-real-audio;audio/x-pn-realaudio;misc/ultravox;audio/vnd.rn-realaudio;audio/x-pn-aiff;
audio/x-pn-au;audio/x-pn-wav;audio/x-pn-windows-acm;image/vnd.rn-realpix;video/vnd.rn-realvideo;audio/x-pn-realaudio-plugin;"
 >> etc/mplayer.desktop

+echo %{version}%{rcver}-%{svnver} > VERSION
+
+doconv() {
+    iconv -f $1 -t $2 -o DOCS/man/$3/mplayer.1.utf8 DOCS/man/$3/mplayer.1 
&& \
+    %{__mv} DOCS/man/$3/mplayer.1.utf8 DOCS/man/$3/mplayer.1
+}
+for lang in de es fr it ; do doconv iso-8859-1 utf-8 $lang ; done
+for lang in hu pl ; do doconv iso-8859-2 utf-8 $lang ; done
+for lang in ru ; do doconv koi8-r utf-8 $lang ; done
+

 %build
 # Build statically linked live555 libraries
@@ -243,16 +273,26 @@
     %{?_with_modxorg:%{!?_without_xvmc:--enable-xvmc}} \
 %ifarch %{ix86}
     --enable-runtime-cpudetection \
-    --enable-win32 \
-    --with-win32libdir="%{_libdir}/codecs" \
-    --with-xanimlibdir="%{_libdir}/codecs" \
+    --win32codecsdir="%{_libdir}/codecs" \
+    --xanimcodecsdir="%{_libdir}/codecs" \
 %endif
-    --with-reallibdir="%{_libdir}/codecs" \
+    --codecsdir="%{_libdir}/codecs" \
+    --realcodecsdir="%{_libdir}/codecs" \
     --language="all" \
-    %{!?_without_live:--with-livelibdir="$(pwd)/live"}
+    %{!?_without_live:--enable-live} \
+ 
   %{!?_without_live:--extra-cflags="-I./live/liveMedia/include -I./live/groupsock/include 
 -I./live/UsageEnvironment/includ
e -I./live/BasicUsageEnvironment/include"} \
+ 
   %{!?_without_live:--extra-libs="-L./live/liveMedia -lliveMedia -L./live/BasicUsageEnvironment 
 -lBasicUsageEnvironment -L
./live/groupsock -lgroupsock -L./live/UsageEnvironment -lUsageEnvironment"} 
\
+    --enable-dhahelper \
+    --enable-lirc \
+    --enable-xmms \
+    --enable-directfb

 %{__make} %{?_smp_mflags}

+# build HTML documentation from XML files
+pushd DOCS/xml
+%{__make} html-chunked
+popd

 %install
 %{__rm} -rf %{buildroot}
@@ -262,6 +302,8 @@
     DESTDIR=%{buildroot} \
     libdir=%{buildroot}%{_libdir}

+%{__install} -pm 755 TOOLS/midentify.sh %{buildroot}%{_bindir}/
+
 # The default Skin
 %{__mkdir_p} %{buildroot}%{_datadir}/mplayer/Skin/
 %{__tar} -xjf %{SOURCE2} -C %{buildroot}%{_datadir}/mplayer/Skin/
@@ -271,7 +313,11 @@
 %{__rm} -rf %{buildroot}%{_datadir}/mplayer/font || :

 # Remove unwanted stuff from the docs to be included
-%{__rm} -rf DOCS/{man,xml}
+%{__mkdir} doc
+%{__cp} -pR DOCS/* doc/
+%{__rm} -r doc/man doc/xml doc/README
+%{__mv} doc/HTML/* doc/
+%{__rm} -rf doc/HTML

 # Create empty binary codecs directory
 %{__mkdir_p} %{buildroot}%{_libdir}/codecs
@@ -281,6 +327,13 @@
 %{__install} -p -m 0644 %{SOURCE3} \
            %{buildroot}%{_datadir}/pixmaps/mplayer.png

+# Default config files
+%{__install} -Dpm 644 etc/example.conf \
+    %{buildroot}%{_sysconfdir}/mplayer/mplayer.conf
+# use Nimbus Sans L font for OSD (via fontconfig)
+echo "fontconfig=yes" >>%{buildroot}%{_sysconfdir}/mplayer/mplayer.conf
+echo "font=\"Sans\"" >>%{buildroot}%{_sysconfdir}/mplayer/mplayer.conf
+%{__install} -pm 644 etc/{input,menu}.conf 
%{buildroot}%{_sysconfdir}/mplayer/

 %post
 /sbin/ldconfig
@@ -297,19 +350,20 @@

 %files
 %defattr(-, root, root, 0755)
-%doc AUTHORS ChangeLog Copyright LICENSE README etc/*.conf
-%dir %{_sysconfdir}/mplayer/
+%doc AUTHORS Changelog Copyright LICENSE README etc/*.conf
+%dir %{_sysconfdir}/mplayer
 #ghost %config %{_sysconfdir}/mplayer/codecs.conf
-#ghost %config %{_sysconfdir}/mplayer/input.conf
-#ghost %config %{_sysconfdir}/mplayer/menu.conf
-#ghost %config %{_sysconfdir}/mplayer/mplayer.conf
+%config(noreplace) %{_sysconfdir}/mplayer/input.conf
+%config(noreplace) %{_sysconfdir}/mplayer/menu.conf
+%config(noreplace) %{_sysconfdir}/mplayer/mplayer.conf
+%{_bindir}/midentify.sh
 %{_bindir}/gmplayer
 %{_bindir}/mplayer
 %dir %{_libdir}/codecs/
-%{_libdir}/libdha.so*
-%{_libdir}/mplayer/
+#%{_libdir}/libdha.so*
+#%{_libdir}/mplayer/
 %{!?_without_freedesktop:%{_datadir}/applications/mplayer.desktop}
-%{_datadir}/mplayer/
+%{_datadir}/mplayer/Skin/*
 %{_datadir}/pixmaps/mplayer.png
 %{_mandir}/man1/mplayer.1*
 %lang(cs) %{_mandir}/cs/man1/mplayer.1*
@@ -319,7 +373,8 @@
 %lang(hu) %{_mandir}/hu/man1/mplayer.1*
 %lang(it) %{_mandir}/it/man1/mplayer.1*
 %lang(pl) %{_mandir}/pl/man1/mplayer.1*
-%lang(sv) %{_mandir}/sv/man1/mplayer.1*
+%lang(ru) %{_mandir}/ru/man1/mplayer.1*
+%lang(zh_CN) %{_mandir}/zh_CN/man1/mplayer.1*

 %files -n mencoder
 %defattr(-, root, root, 0755)
@@ -332,14 +387,27 @@
 %lang(hu) %{_mandir}/hu/man1/mencoder.1*
 %lang(it) %{_mandir}/it/man1/mencoder.1*
 %lang(pl) %{_mandir}/pl/man1/mencoder.1*
-%lang(sv) %{_mandir}/sv/man1/mencoder.1*
+%lang(ru) %{_mandir}/ru/man1/mencoder.1*
+%lang(zh_CN) %{_mandir}/zh_CN/man1/mencoder.1*

 %files docs
 %defattr(-, root, root, 0755)
-%doc DOCS/*
+%doc doc/en/ doc/tech/
+%lang(cs) %doc doc/cs/
+%lang(de) %doc doc/de/
+%lang(es) %doc doc/es/
+%lang(fr) %doc doc/fr/
+%lang(hu) %doc doc/hu/
+%lang(pl) %doc doc/pl/
+%lang(ru) %doc doc/ru/
+%lang(zh_CN) %doc doc/zh_CN/


 %changelog
+* Thu Jun 11 2009 Bjarne Saltbaek <arnebjarne72 at hotmail.com> - 
1.0-1.rc3.20090611
+- Rebuild against MPlayer svn version 29353.
+- Update live library to 2009.06.02 (Mplayer requirements).
+
 * Wed Sep 24 2008 Dag Wieers <dag at wieers.com> - 1.0-0.40.rc1tr2 - 6491/dag
 - Rebuild against directfb-1.2.4.


and a new MPlayer-1.0pre-redhat.patch:

MPlayer-1.0pre-redhat.patch:
--- configure.org       2009-06-11 14:23:20.000000000 +0200
+++ configure   2009-06-11 14:23:56.000000000 +0200
@@ -1401,7 +1401,7 @@
 else # if test -z "$_target"
   system_name=$(echo $_target | cut -d '-' -f 2)
   case "$(echo $system_name | tr A-Z a-z)" in
-    linux) system_name=Linux ;;
+    linux|redhat) system_name=Linux ;;
     freebsd) system_name=FreeBSD ;;
     gnu/kfreebsd) system_name=FreeBSD ;;
     netbsd) system_name=NetBSD ;;

 




More information about the users mailing list