From e1e12d7c88dd438adbe1ceaf51bcca8eab816425 Mon Sep 17 00:00:00 2001 From: Aurelien Bompard Date: Fri, 8 Dec 2006 07:31:46 +0000 Subject: [PATCH 001/150] version 1.1.3 --- .cvsignore | 2 +- sources | 2 +- xine-lib-cleanup-sources.sh | 11 ++--- xine-lib.spec | 98 +++++++++++++++++++++++++++++-------- 4 files changed, 84 insertions(+), 29 deletions(-) diff --git a/.cvsignore b/.cvsignore index 7d987ff..58ed34c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -xine-lib-1.1.2.tar.bz2 +xine-lib-1.1.3-pruned.tar.bz2 diff --git a/sources b/sources index b512d76..d2f7c97 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d1afb34d2335f8c9ded4d9a2b741251e xine-lib-1.1.2.tar.bz2 +eff682745f198e1881773509f12c70c3 xine-lib-1.1.3-pruned.tar.bz2 diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index dfa3ef4..97da5bd 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -6,8 +6,9 @@ if [ -z "$1" -o $# -ne 1 ]; then fi version=$1 -tarball="xine-lib-$version.tar.bz2" +tarball="xine-lib-$version.tar.gz" dir="xine-lib-$version" +modtarball="xine-lib-$version-pruned.tar.bz2" if [ ! -f $tarball ]; then @@ -17,7 +18,7 @@ fi echo "Uncompressing $tarball..." rm -rf $dir -tar -xjf $tarball +tar -xzf $tarball cd $dir # Main libraries @@ -58,8 +59,6 @@ sed -i -e 's/planar//g;s/deinterlace//g' src/post/Makefile.am # fails to build # All clean ! cd .. -echo "Generating $tarball..." -rm -f $tarball.orig -mv $tarball $tarball.orig -tar -cjf $tarball $dir +echo "Generating $modtarball..." +tar -cjf $modtarball $dir rm -rf $dir diff --git a/xine-lib.spec b/xine-lib.spec index faf767c..c19b862 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,20 +1,21 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ -# - polypaudio +# - pulseaudio %define codecdir %{_libdir}/codecs #%define vdrver 0.7.9 Summary: Xine library Name: xine-lib -Version: 1.1.2 -Release: 17%{?dist} +Version: 1.1.3 +Release: 1%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code -Source0: http://dl.sourceforge.net/xine/xine-lib-1.1.2.tar.bz2 +#Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.gz +Source0: xine-lib-%{version}-pruned.tar.bz2 Source1: xine-lib-cleanup-sources.sh Patch1: xine-lib-1.1.1-configure-no-mcpu-march.patch Patch6: xine-lib-1.1.1-deepbind-939.patch @@ -24,22 +25,26 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel libGLU-devel # Video BuildRequires: freetype-devel SDL-devel libtheora-devel libmng-devel -BuildRequires: aalib-devel >= 1.4 libcaca-devel +BuildRequires: aalib-devel >= 1.4 +%if 0%{!?_without_directfb:1} +BuildRequires: directfb-devel +%endif +%if 0%{!?_without_imagemagick:1} +BuildRequires: ImageMagick-devel >= 6.2.4.6-1 +%endif # Audio BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 +BuildRequires: jack-audio-connection-kit-devel +%if 0%{?_with_caca:1} +BuildRequires: libcaca-devel >= 0.99 +%endif # CDs BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel BuildRequires: libtool >= 1.4.0 /usr/bin/automake-1.9 samba-common -%if 0%{?_with_directfb:1} -BuildRequires: directfb-devel -%endif -%if 0%{!?_without_imagemagick:1} -BuildRequires: ImageMagick-devel >= 6.2.4.6-1 -%endif #Provides: %{name}(vdr) = %{vdrver} %package devel @@ -50,6 +55,11 @@ Requires: pkgconfig zlib-devel #Requires: %{name}(vdr) = %{vdrver} #Provides: %{name}-devel(vdr) = %{vdrver} +%package extras +Summary: Additional plugins for xine-lib +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} + %description This package contains the Xine library. Xine is a free multimedia player. @@ -58,11 +68,31 @@ disk drives, and displays multimedia streamed over the Internet. It interprets many of the most common multimedia formats available - and some of the most uncommon formats, too. Non-default rpmbuild options: --without imagemagick: Disable ImageMagick support ---with directfb: Enable DirectFB support +--without directfb: Disable DirectFB support +--with caca: Enable CACA support %description devel This package contains development files for xine-lib. +%description extras +This package contains extra plugins for xine-lib: + - Arts + - ESD + - Jack + - GNOME VFS + - SDL + - AAlib +%if 0%{?_with_caca:1} + - CACAlib +%endif +%if 0%{!?_without_imagemagick:1} + - image decoding +%endif +%if 0%{!?_without_directfb:1} + - DirectFB output +%endif + + %prep %setup -q @@ -85,21 +115,24 @@ sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure %build -FFMPEG_CPPFLAGS=" "; FFMPEG_LIBS=" "; export FFMPEG_CPPFLAGS FFMPEG_LIBS +export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " +export FFMPEG_POSTPROC_CFLAGS=" " FFMPEG_POSTPROC_LIBS=" " +export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %configure --disable-dependency-tracking \ --with-xv-path=%{_libdir} \ --with-w32-path=%{codecdir} \ --with-external-ffmpeg \ --enable-ipv6 \ -%if 0%{?_with_directfb:1} +%if 0%{!?_without_directfb:1} --enable-directfb \ %endif %if 0%{?_without_imagemagick:1} - --disable-imagemagick \ + --without-imagemagick \ +%endif +%if 0%{!?_with_caca:1} + --without-caca \ %endif - --disable-rte \ --disable-libfame \ - --disable-ffmpegtest \ --disable-faad \ --disable-mad \ --disable-asf \ @@ -146,7 +179,6 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/xine/plugins/%{version}/ # I list all the plugins because I don't want a non-free plugin # to sneak into a future version -# these plugins do not have legal problems according to the SuSE RPM %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_alsa.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_oss.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_none.so @@ -154,6 +186,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_file.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_opengl.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_syncfb.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xv.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_dvb.so @@ -201,7 +234,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_flac.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_gdk_pixbuf.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so @@ -213,13 +245,24 @@ rm -rf $RPM_BUILD_ROOT %endif %{_libdir}/xine/plugins/%{version}/post/ %{_libdir}/xine/plugins/%{version}/vidix/ -# Put it in a xine-lib-extras package one day ? + + +%files extras %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_arts.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so +%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so +%if 0%{?_with_caca:1} +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so +%endif +%if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{version}/xineplug_decode_image.so +%endif +%if 0%{!?_without_directfb:1} +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so +%endif %files devel @@ -233,9 +276,22 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/pkgconfig/libxine.pc %{_mandir}/man1/xine-config.1* -# -------------------------------------------------------------------- + %changelog +* Mon Dec 04 2006 Aurelien Bompard 1.1.3-1 +- version 1.1.3 +- patch2 applied upstream +- Disable CACA support by default, needs newer than what's in FE ATM. +- Split extras plugins in a separate package +- Enable JACK support (in extras subpackage) +- Enable DirectFB support (in extras subpackage) + +* Sat Nov 11 2006 Aurelien Bompard 1.1.2-18 +- Make shn files available to amarok. References: + http://xine.cvs.sourceforge.net/xine/xine-lib/src/demuxers/demux_shn.c?r1=1.1.2.2&r2=1.2 + https://launchpad.net/distros/ubuntu/+source/xine-lib/+bug/63130 + * Wed Oct 18 2006 Aurelien Bompard 1.1.2-17 - cleanup docs - remove mms From 2fc26a813ef2224d22ec320384eea7042c035502 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 8 Dec 2006 18:28:34 +0000 Subject: [PATCH 002/150] Add %defattr for extras subpackage, cosmetics. --- xine-lib.spec | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index c19b862..de1ac9a 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -3,7 +3,6 @@ # - pulseaudio %define codecdir %{_libdir}/codecs -#%define vdrver 0.7.9 Summary: Xine library Name: xine-lib @@ -26,6 +25,9 @@ BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel libGLU- # Video BuildRequires: freetype-devel SDL-devel libtheora-devel libmng-devel BuildRequires: aalib-devel >= 1.4 +%if 0%{?_with_caca:1} +BuildRequires: libcaca-devel >= 0.99 +%endif %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel %endif @@ -36,24 +38,17 @@ BuildRequires: ImageMagick-devel >= 6.2.4.6-1 BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 BuildRequires: jack-audio-connection-kit-devel -%if 0%{?_with_caca:1} -BuildRequires: libcaca-devel >= 0.99 -%endif # CDs BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel BuildRequires: libtool >= 1.4.0 /usr/bin/automake-1.9 samba-common -#Provides: %{name}(vdr) = %{vdrver} - %package devel Summary: Xine library development files Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: pkgconfig zlib-devel -#Requires: %{name}(vdr) = %{vdrver} -#Provides: %{name}-devel(vdr) = %{vdrver} %package extras Summary: Additional plugins for xine-lib @@ -76,17 +71,17 @@ This package contains development files for xine-lib. %description extras This package contains extra plugins for xine-lib: - - Arts - - ESD - - Jack + - aRts + - EsounD + - JACK - GNOME VFS - SDL - - AAlib + - AA-lib %if 0%{?_with_caca:1} - - CACAlib + - Libcaca %endif %if 0%{!?_without_imagemagick:1} - - image decoding + - Image decoding %endif %if 0%{!?_without_directfb:1} - DirectFB output @@ -97,7 +92,6 @@ This package contains extra plugins for xine-lib: %prep %setup -q %patch1 -p0 -b .nomcpu -###cp -p debian/changelog ChangeLog.vdr # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel @@ -201,7 +195,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_rtp.so -#%{_libdir}/xine/plugins/%{version}/xineplug_inp_vdr.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_bitplane.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_vorbis.so @@ -248,6 +241,7 @@ rm -rf $RPM_BUILD_ROOT %files extras +%defattr(-,root,root,-) %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_arts.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so From 05ae5ea126069d4490757bb5ed69a186d5d51c7b Mon Sep 17 00:00:00 2001 From: Aurelien Bompard Date: Sat, 9 Dec 2006 15:36:50 +0000 Subject: [PATCH 003/150] Move SMB and GDK-Pixbuf plugins into the extras subpackage --- xine-lib.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index de1ac9a..82de8f5 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -190,7 +190,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_inp_net.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_pnm.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_cdda.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_stdin_fifo.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_pvr.so @@ -226,7 +225,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_dmx_slave.so %{_libdir}/xine/plugins/%{version}/xineplug_flac.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_gdk_pixbuf.so %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so @@ -246,8 +244,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so +%{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_gdk_pixbuf.so %if 0%{?_with_caca:1} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so %endif @@ -280,6 +280,7 @@ rm -rf $RPM_BUILD_ROOT - Split extras plugins in a separate package - Enable JACK support (in extras subpackage) - Enable DirectFB support (in extras subpackage) +- Move SMB and GDK-Pixbuf plugins into the extras subpackage * Sat Nov 11 2006 Aurelien Bompard 1.1.2-18 - Make shn files available to amarok. References: From 657fde1f026299ea7efbdd308b9a71c08065d842 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 9 Dec 2006 16:08:08 +0000 Subject: [PATCH 004/150] Update -extras description. --- xine-lib.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 82de8f5..4f9da0e 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -74,7 +74,9 @@ This package contains extra plugins for xine-lib: - aRts - EsounD - JACK + - GDK-Pixbuf - GNOME VFS + - SMB - SDL - AA-lib %if 0%{?_with_caca:1} @@ -280,7 +282,6 @@ rm -rf $RPM_BUILD_ROOT - Split extras plugins in a separate package - Enable JACK support (in extras subpackage) - Enable DirectFB support (in extras subpackage) -- Move SMB and GDK-Pixbuf plugins into the extras subpackage * Sat Nov 11 2006 Aurelien Bompard 1.1.2-18 - Make shn files available to amarok. References: From 4a03c988500b200d9a0da51db87a3597b521bf8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 17 Dec 2006 11:41:11 +0000 Subject: [PATCH 005/150] =?UTF-8?q?*=20Sun=20Dec=2017=202006=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.3-2=20-=20Don?= =?UTF-8?q?'t=20run=20autotools=20during=20build.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 1 + sources | 1 + xine-lib-1.1.1-configure-no-mcpu-march.patch | 13 ------- xine-lib-1.1.3-optflags.patch | 22 ++++++++++++ xine-lib.spec | 37 +++++++++++--------- 5 files changed, 45 insertions(+), 29 deletions(-) delete mode 100644 xine-lib-1.1.1-configure-no-mcpu-march.patch create mode 100644 xine-lib-1.1.3-optflags.patch diff --git a/.cvsignore b/.cvsignore index 58ed34c..c99b3db 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1,2 @@ xine-lib-1.1.3-pruned.tar.bz2 +xine-lib-1.1.3-autotools.patch.bz2 diff --git a/sources b/sources index d2f7c97..3bdc00e 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ eff682745f198e1881773509f12c70c3 xine-lib-1.1.3-pruned.tar.bz2 +a58fce450d9288224caa413ad8bc1f8d xine-lib-1.1.3-autotools.patch.bz2 diff --git a/xine-lib-1.1.1-configure-no-mcpu-march.patch b/xine-lib-1.1.1-configure-no-mcpu-march.patch deleted file mode 100644 index 4b6ba9e..0000000 --- a/xine-lib-1.1.1-configure-no-mcpu-march.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- m4/optimizations.m4.orig 2005-11-27 01:20:08.000000000 +0100 -+++ m4/optimizations.m4 2005-11-27 01:22:56.000000000 +0100 -@@ -161,10 +161,6 @@ - ;; - - esac -- if test x"$archopt_val" != x; then -- CFLAGS="$sarchopt=$archopt_val $CFLAGS" -- DEBUG_CFLAGS="$sarchopt=$archopt_val $DEBUG_CFLAGS" -- fi - fi - else - dnl we have the Intel compiler diff --git a/xine-lib-1.1.3-optflags.patch b/xine-lib-1.1.3-optflags.patch new file mode 100644 index 0000000..8413f5a --- /dev/null +++ b/xine-lib-1.1.3-optflags.patch @@ -0,0 +1,22 @@ +--- xine-lib-1.1.3/m4/optimizations.m4~ 2006-06-17 18:20:56.000000000 +0300 ++++ xine-lib-1.1.3/m4/optimizations.m4 2006-12-17 11:49:44.000000000 +0200 +@@ -107,7 +107,7 @@ + + DEBUG_CFLAGS="-O $DEBUG_CFLAGS" + +- if test x"$sarchopt" != "xno"; then ++ if false ; then + archopt_val= + + case "$host_or_hostalias" in +--- xine-lib-1.1.3/configure~ 2006-12-03 21:41:27.000000000 +0200 ++++ xine-lib-1.1.3/configure 2006-12-17 11:50:07.000000000 +0200 +@@ -46971,7 +46971,7 @@ + + DEBUG_CFLAGS="-O $DEBUG_CFLAGS" + +- if test x"$sarchopt" != "xno"; then ++ if false ; then + archopt_val= + + case "$host_or_hostalias" in diff --git a/xine-lib.spec b/xine-lib.spec index 4f9da0e..f317955 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -7,19 +7,25 @@ Summary: Xine library Name: xine-lib Version: 1.1.3 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code #Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.gz -Source0: xine-lib-%{version}-pruned.tar.bz2 -Source1: xine-lib-cleanup-sources.sh -Patch1: xine-lib-1.1.1-configure-no-mcpu-march.patch -Patch6: xine-lib-1.1.1-deepbind-939.patch -Patch7: xine-lib-1.1.1-multilib-devel.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot +Source0: %{name}-%{version}-pruned.tar.bz2 +Source1: %{name}-cleanup-sources.sh +# To recreate the autotools patch: install build deps, extract source0, +# remove run_configure "$@" from autogen.sh, copy the dir to -patched, +# run autogen.sh (doesn't work with automake 1.10 as of 1.1.3 so use 1.9), +# remove autom4te.cache, then diff the dirs. Apply rest of the patches during +# build so that autotools do not need to be run again. +Patch0: %{name}-1.1.3-autotools.patch.bz2 +Patch1: %{name}-1.1.3-optflags.patch +Patch6: %{name}-1.1.1-deepbind-939.patch +Patch7: %{name}-1.1.1-multilib-devel.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel libGLU-devel # Video @@ -41,8 +47,7 @@ BuildRequires: jack-audio-connection-kit-devel # CDs BuildRequires: libcdio-devel # Other -BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel -BuildRequires: libtool >= 1.4.0 /usr/bin/automake-1.9 samba-common +BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel samba-common %package devel Summary: Xine library development files @@ -93,19 +98,16 @@ This package contains extra plugins for xine-lib: %prep %setup -q -%patch1 -p0 -b .nomcpu +%patch0 -p1 -b .autotools +cp -p m4/optimizations.m4 m4/optimizations.m4.stamp +%patch1 -p1 -b .optflags +touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel find . -name "*.[hc]" | xargs chmod -c -x -aclocal-1.9 -I m4 -libtoolize --force -autoheader -automake-1.9 --gnu --add-missing -autoconf - # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -275,6 +277,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Dec 17 2006 Ville Skyttä - 1.1.3-2 +- Don't run autotools during build. + * Mon Dec 04 2006 Aurelien Bompard 1.1.3-1 - version 1.1.3 - patch2 applied upstream From b2b1cd2002e8a2eb5873157cd94ff53933f26725 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 3 Jan 2007 20:27:13 +0000 Subject: [PATCH 006/150] =?UTF-8?q?*=20Wed=20Jan=20=203=202007=20Ville=20S?= =?UTF-8?q?kytt=C3=A4=20=20-=201.1.3-3=20-=20F?= =?UTF-8?q?ix=20libflac=20decoder=20with=20FLAC=20<=201.1.3=20(#220961).?= =?UTF-8?q?=20-=20Apply=20upstream=20patch=20for=20FLAC=20>=3D=201.1.3.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib-1.1.3-flac113.patch | 149 ++++++++++++++++++++++++++ xine-lib-1.1.3-legacy-flac-init.patch | 16 +++ xine-lib.spec | 10 +- 3 files changed, 174 insertions(+), 1 deletion(-) create mode 100644 xine-lib-1.1.3-flac113.patch create mode 100644 xine-lib-1.1.3-legacy-flac-init.patch diff --git a/xine-lib-1.1.3-flac113.patch b/xine-lib-1.1.3-flac113.patch new file mode 100644 index 0000000..f698b90 --- /dev/null +++ b/xine-lib-1.1.3-flac113.patch @@ -0,0 +1,149 @@ +Index: xine-lib/src/libflac/decoder_flac.c +diff -u xine-lib/src/libflac/decoder_flac.c:1.21 xine-lib/src/libflac/decoder_flac.c:1.22 +--- xine-lib/src/libflac/decoder_flac.c:1.21 Sat Aug 5 13:34:42 2006 ++++ xine-lib/src/libflac/decoder_flac.c Mon Dec 25 19:22:00 2006 +@@ -30,6 +30,13 @@ + + #include + ++#if !defined FLAC_API_VERSION_CURRENT || FLAC_API_VERSION_CURRENT < 8 ++#include ++#define LEGACY_FLAC ++#else ++#undef LEGACY_FLAC ++#endif ++ + #define LOG_MODULE "flac_decoder" + #define LOG_VERBOSE + +@@ -344,6 +351,7 @@ + + this->flac_decoder = FLAC__stream_decoder_new(); + ++#ifdef LEGACY_FLAC + FLAC__stream_decoder_set_read_callback (this->flac_decoder, + flac_read_callback); + FLAC__stream_decoder_set_write_callback (this->flac_decoder, +@@ -359,6 +367,22 @@ + free (this); + return NULL; + } ++#else ++ if ( FLAC__stream_decoder_init_stream (this->flac_decoder, ++ flac_read_callback, ++ NULL, /* seek */ ++ NULL, /* tell */ ++ NULL, /* length */ ++ NULL, /* eof */ ++ flac_write_callback, ++ NULL, /* metadata */ ++ flac_error_callback, ++ this ++ ) != FLAC__STREAM_DECODER_INIT_STATUS_OK ) { ++ free (this); ++ return NULL; ++ } ++#endif + + return (audio_decoder_t *) this; + } +Index: xine-lib/src/libflac/demux_flac.c +diff -u xine-lib/src/libflac/demux_flac.c:1.24 xine-lib/src/libflac/demux_flac.c:1.25 +--- xine-lib/src/libflac/demux_flac.c:1.24 Sat Oct 21 18:50:41 2006 ++++ xine-lib/src/libflac/demux_flac.c Mon Dec 25 19:22:00 2006 +@@ -441,7 +441,11 @@ + lprintf("demux_flac_dispose\n"); + + if (this->flac_decoder) ++#ifdef LEGACY_FLAC + FLAC__seekable_stream_decoder_delete (this->flac_decoder); ++#else ++ FLAC__stream_decoder_delete (this->flac_decoder); ++#endif + + free(this); + return; +@@ -494,8 +498,13 @@ + } + target_sample = (uint64_t)(distance * this->total_samples); + ++#ifdef LEGACY_FLAC + s = FLAC__seekable_stream_decoder_seek_absolute (this->flac_decoder, + target_sample); ++#else ++ s = FLAC__stream_decoder_seek_absolute (this->flac_decoder, ++ target_sample); ++#endif + + if (s) { + lprintf ("Seek to: %d successfull!\n", start_time); +@@ -618,9 +627,6 @@ + /* Get a new FLAC decoder and hook up callbacks */ + #ifdef LEGACY_FLAC + this->flac_decoder = FLAC__seekable_stream_decoder_new(); +-#else +- this->flac_decoder = FLAC__stream_decoder_new(); +-#endif + lprintf("this->flac_decoder: %p\n", this->flac_decoder); + + FLAC__seekable_stream_decoder_set_md5_checking (this->flac_decoder, false); +@@ -644,6 +650,37 @@ + this); + + FLAC__seekable_stream_decoder_init (this->flac_decoder); ++#else ++ this->flac_decoder = FLAC__stream_decoder_new(); ++ lprintf("this->flac_decoder: %p\n", this->flac_decoder); ++ ++ if ( ! this->flac_decoder ) { ++ free(this); ++ return NULL; ++ } ++ ++ FLAC__stream_decoder_set_md5_checking (this->flac_decoder, false); ++ ++ if ( FLAC__stream_decoder_init_stream(this->flac_decoder, ++ flac_read_callback, ++ flac_seek_callback, ++ flac_tell_callback, ++ flac_length_callback, ++ flac_eof_callback, ++ flac_write_callback, ++ flac_metadata_callback, ++ flac_error_callback, ++ this ++ ) != FLAC__STREAM_DECODER_INIT_STATUS_OK ) { ++#ifdef LEGACY_FLAC ++ FLAC__seekable_stream_decoder_delete (this->flac_decoder); ++#else ++ FLAC__stream_decoder_delete (this->flac_decoder); ++#endif ++ free(this); ++ return NULL; ++ } ++#endif + + /* Get some stream info */ + this->data_size = this->input->get_length (this->input); +@@ -653,13 +690,21 @@ + * this flac stream + */ + this->status = DEMUX_OK; ++#ifdef LEGACY_FLAC + FLAC__seekable_stream_decoder_process_until_end_of_metadata (this->flac_decoder); ++#else ++ FLAC__stream_decoder_process_until_end_of_metadata (this->flac_decoder); ++#endif + + lprintf("Processed file until end of metadata: %s\n", + this->status == DEMUX_OK ? "success" : "failure"); + + if (this->status != DEMUX_OK) { ++#ifdef LEGACY_FLAC + FLAC__seekable_stream_decoder_delete (this->flac_decoder); ++#else ++ FLAC__stream_decoder_delete (this->flac_decoder); ++#endif + free (this); + return NULL; + } diff --git a/xine-lib-1.1.3-legacy-flac-init.patch b/xine-lib-1.1.3-legacy-flac-init.patch new file mode 100644 index 0000000..ba1cdb7 --- /dev/null +++ b/xine-lib-1.1.3-legacy-flac-init.patch @@ -0,0 +1,16 @@ +Index: src/libflac/decoder_flac.c +=================================================================== +RCS file: /cvsroot/xine/xine-lib/src/libflac/decoder_flac.c,v +retrieving revision 1.22 +diff -u -r1.22 decoder_flac.c +--- src/libflac/decoder_flac.c 25 Dec 2006 19:22:00 -0000 1.22 ++++ src/libflac/decoder_flac.c 3 Jan 2007 19:58:07 -0000 +@@ -363,7 +363,7 @@ + + FLAC__stream_decoder_set_client_data (this->flac_decoder, this); + +- if (FLAC__stream_decoder_init (this->flac_decoder) == FLAC__STREAM_DECODER_SEARCH_FOR_METADATA) { ++ if (FLAC__stream_decoder_init (this->flac_decoder) != FLAC__STREAM_DECODER_SEARCH_FOR_METADATA) { + free (this); + return NULL; + } diff --git a/xine-lib.spec b/xine-lib.spec index f317955..8477e9b 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -7,7 +7,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.3 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -23,6 +23,8 @@ Source1: %{name}-cleanup-sources.sh # build so that autotools do not need to be run again. Patch0: %{name}-1.1.3-autotools.patch.bz2 Patch1: %{name}-1.1.3-optflags.patch +Patch2: %{name}-1.1.3-flac113.patch +Patch3: %{name}-1.1.3-legacy-flac-init.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.1-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -102,6 +104,8 @@ This package contains extra plugins for xine-lib: cp -p m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 +%patch2 -p1 -b .flac113 +%patch3 -p0 -b .legacy-flac-init # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel @@ -277,6 +281,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jan 3 2007 Ville Skyttä - 1.1.3-3 +- Fix libflac decoder with FLAC < 1.1.3 (#220961). +- Apply upstream patch for FLAC >= 1.1.3. + * Sun Dec 17 2006 Ville Skyttä - 1.1.3-2 - Don't run autotools during build. From b42ce18b7a893d10899db1a647d517107e9ff916 Mon Sep 17 00:00:00 2001 From: Aurelien Bompard Date: Thu, 18 Jan 2007 20:34:56 +0000 Subject: [PATCH 007/150] rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 8477e9b..efff6c3 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -7,7 +7,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.3 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -281,6 +281,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Jan 18 2007 Aurelien Bompard 1.1.3-4 +- rebuild + * Wed Jan 3 2007 Ville Skyttä - 1.1.3-3 - Fix libflac decoder with FLAC < 1.1.3 (#220961). - Apply upstream patch for FLAC >= 1.1.3. From 293dad2c1bba195b7b1c15a78eec244cd1798977 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 31 Jan 2007 19:58:30 +0000 Subject: [PATCH 008/150] =?UTF-8?q?*=20Wed=20Jan=2031=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.4-1=20-=201.1?= =?UTF-8?q?.4,=20with=20wavpack=20and=20system=20libmpcdec=20support.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.3-flac113.patch | 149 ------------------ ...ags.patch => xine-lib-1.1.4-optflags.patch | 10 +- xine-lib-mk-autotools-patch.sh | 24 +++ xine-lib.spec | 42 ++--- 6 files changed, 57 insertions(+), 176 deletions(-) delete mode 100644 xine-lib-1.1.3-flac113.patch rename xine-lib-1.1.3-optflags.patch => xine-lib-1.1.4-optflags.patch (61%) create mode 100644 xine-lib-mk-autotools-patch.sh diff --git a/.cvsignore b/.cvsignore index c99b3db..aea6ec7 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.3-pruned.tar.bz2 -xine-lib-1.1.3-autotools.patch.bz2 +xine-lib-1.1.4-pruned.tar.bz2 +xine-lib-1.1.4-autotools.patch.bz2 diff --git a/sources b/sources index 3bdc00e..2a4625c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -eff682745f198e1881773509f12c70c3 xine-lib-1.1.3-pruned.tar.bz2 -a58fce450d9288224caa413ad8bc1f8d xine-lib-1.1.3-autotools.patch.bz2 +81faabf1e38abed44639dbe4c76719f9 xine-lib-1.1.4-pruned.tar.bz2 +a916758545ed73a369f40648c7bc449c xine-lib-1.1.4-autotools.patch.bz2 diff --git a/xine-lib-1.1.3-flac113.patch b/xine-lib-1.1.3-flac113.patch deleted file mode 100644 index f698b90..0000000 --- a/xine-lib-1.1.3-flac113.patch +++ /dev/null @@ -1,149 +0,0 @@ -Index: xine-lib/src/libflac/decoder_flac.c -diff -u xine-lib/src/libflac/decoder_flac.c:1.21 xine-lib/src/libflac/decoder_flac.c:1.22 ---- xine-lib/src/libflac/decoder_flac.c:1.21 Sat Aug 5 13:34:42 2006 -+++ xine-lib/src/libflac/decoder_flac.c Mon Dec 25 19:22:00 2006 -@@ -30,6 +30,13 @@ - - #include - -+#if !defined FLAC_API_VERSION_CURRENT || FLAC_API_VERSION_CURRENT < 8 -+#include -+#define LEGACY_FLAC -+#else -+#undef LEGACY_FLAC -+#endif -+ - #define LOG_MODULE "flac_decoder" - #define LOG_VERBOSE - -@@ -344,6 +351,7 @@ - - this->flac_decoder = FLAC__stream_decoder_new(); - -+#ifdef LEGACY_FLAC - FLAC__stream_decoder_set_read_callback (this->flac_decoder, - flac_read_callback); - FLAC__stream_decoder_set_write_callback (this->flac_decoder, -@@ -359,6 +367,22 @@ - free (this); - return NULL; - } -+#else -+ if ( FLAC__stream_decoder_init_stream (this->flac_decoder, -+ flac_read_callback, -+ NULL, /* seek */ -+ NULL, /* tell */ -+ NULL, /* length */ -+ NULL, /* eof */ -+ flac_write_callback, -+ NULL, /* metadata */ -+ flac_error_callback, -+ this -+ ) != FLAC__STREAM_DECODER_INIT_STATUS_OK ) { -+ free (this); -+ return NULL; -+ } -+#endif - - return (audio_decoder_t *) this; - } -Index: xine-lib/src/libflac/demux_flac.c -diff -u xine-lib/src/libflac/demux_flac.c:1.24 xine-lib/src/libflac/demux_flac.c:1.25 ---- xine-lib/src/libflac/demux_flac.c:1.24 Sat Oct 21 18:50:41 2006 -+++ xine-lib/src/libflac/demux_flac.c Mon Dec 25 19:22:00 2006 -@@ -441,7 +441,11 @@ - lprintf("demux_flac_dispose\n"); - - if (this->flac_decoder) -+#ifdef LEGACY_FLAC - FLAC__seekable_stream_decoder_delete (this->flac_decoder); -+#else -+ FLAC__stream_decoder_delete (this->flac_decoder); -+#endif - - free(this); - return; -@@ -494,8 +498,13 @@ - } - target_sample = (uint64_t)(distance * this->total_samples); - -+#ifdef LEGACY_FLAC - s = FLAC__seekable_stream_decoder_seek_absolute (this->flac_decoder, - target_sample); -+#else -+ s = FLAC__stream_decoder_seek_absolute (this->flac_decoder, -+ target_sample); -+#endif - - if (s) { - lprintf ("Seek to: %d successfull!\n", start_time); -@@ -618,9 +627,6 @@ - /* Get a new FLAC decoder and hook up callbacks */ - #ifdef LEGACY_FLAC - this->flac_decoder = FLAC__seekable_stream_decoder_new(); --#else -- this->flac_decoder = FLAC__stream_decoder_new(); --#endif - lprintf("this->flac_decoder: %p\n", this->flac_decoder); - - FLAC__seekable_stream_decoder_set_md5_checking (this->flac_decoder, false); -@@ -644,6 +650,37 @@ - this); - - FLAC__seekable_stream_decoder_init (this->flac_decoder); -+#else -+ this->flac_decoder = FLAC__stream_decoder_new(); -+ lprintf("this->flac_decoder: %p\n", this->flac_decoder); -+ -+ if ( ! this->flac_decoder ) { -+ free(this); -+ return NULL; -+ } -+ -+ FLAC__stream_decoder_set_md5_checking (this->flac_decoder, false); -+ -+ if ( FLAC__stream_decoder_init_stream(this->flac_decoder, -+ flac_read_callback, -+ flac_seek_callback, -+ flac_tell_callback, -+ flac_length_callback, -+ flac_eof_callback, -+ flac_write_callback, -+ flac_metadata_callback, -+ flac_error_callback, -+ this -+ ) != FLAC__STREAM_DECODER_INIT_STATUS_OK ) { -+#ifdef LEGACY_FLAC -+ FLAC__seekable_stream_decoder_delete (this->flac_decoder); -+#else -+ FLAC__stream_decoder_delete (this->flac_decoder); -+#endif -+ free(this); -+ return NULL; -+ } -+#endif - - /* Get some stream info */ - this->data_size = this->input->get_length (this->input); -@@ -653,13 +690,21 @@ - * this flac stream - */ - this->status = DEMUX_OK; -+#ifdef LEGACY_FLAC - FLAC__seekable_stream_decoder_process_until_end_of_metadata (this->flac_decoder); -+#else -+ FLAC__stream_decoder_process_until_end_of_metadata (this->flac_decoder); -+#endif - - lprintf("Processed file until end of metadata: %s\n", - this->status == DEMUX_OK ? "success" : "failure"); - - if (this->status != DEMUX_OK) { -+#ifdef LEGACY_FLAC - FLAC__seekable_stream_decoder_delete (this->flac_decoder); -+#else -+ FLAC__stream_decoder_delete (this->flac_decoder); -+#endif - free (this); - return NULL; - } diff --git a/xine-lib-1.1.3-optflags.patch b/xine-lib-1.1.4-optflags.patch similarity index 61% rename from xine-lib-1.1.3-optflags.patch rename to xine-lib-1.1.4-optflags.patch index 8413f5a..a76864a 100644 --- a/xine-lib-1.1.3-optflags.patch +++ b/xine-lib-1.1.4-optflags.patch @@ -1,5 +1,5 @@ ---- xine-lib-1.1.3/m4/optimizations.m4~ 2006-06-17 18:20:56.000000000 +0300 -+++ xine-lib-1.1.3/m4/optimizations.m4 2006-12-17 11:49:44.000000000 +0200 +--- xine-lib-1.1.4/m4/optimizations.m4~ 2006-06-17 18:20:56.000000000 +0300 ++++ xine-lib-1.1.4/m4/optimizations.m4 2007-01-30 23:03:27.000000000 +0200 @@ -107,7 +107,7 @@ DEBUG_CFLAGS="-O $DEBUG_CFLAGS" @@ -9,9 +9,9 @@ archopt_val= case "$host_or_hostalias" in ---- xine-lib-1.1.3/configure~ 2006-12-03 21:41:27.000000000 +0200 -+++ xine-lib-1.1.3/configure 2006-12-17 11:50:07.000000000 +0200 -@@ -46971,7 +46971,7 @@ +--- xine-lib-1.1.4/configure~ 2007-01-30 23:02:56.000000000 +0200 ++++ xine-lib-1.1.4/configure 2007-01-30 23:03:40.000000000 +0200 +@@ -47754,7 +47754,7 @@ DEBUG_CFLAGS="-O $DEBUG_CFLAGS" diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh new file mode 100644 index 0000000..88db99c --- /dev/null +++ b/xine-lib-mk-autotools-patch.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +# be sure to have all build deps + libtool installed before running this + +set -e + +if [ -z "$1" -o $# -ne 1 ]; then + echo "Usage: $0 " + exit 2 +fi + +version=$1 + +rm -rf xine-lib-$version xine-lib-$version-pruned +tar jxf xine-lib-$version-pruned.tar.bz2 +cp -a xine-lib-$version xine-lib-$version-pruned + +cd xine-lib-$version +./autogen.sh noconfig +rm -rf autom4te.cache *~ +cd .. + +diff -Nru xine-lib-$version-pruned xine-lib-$version \ +| bzip2 --best > xine-lib-$version-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index efff6c3..b902952 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,29 +1,26 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ # - pulseaudio +# - --enable-antialiasing? %define codecdir %{_libdir}/codecs Summary: Xine library Name: xine-lib -Version: 1.1.3 -Release: 4%{?dist} +Version: 1.1.4 +Release: 1%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code -#Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.gz +#Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 Source0: %{name}-%{version}-pruned.tar.bz2 Source1: %{name}-cleanup-sources.sh -# To recreate the autotools patch: install build deps, extract source0, -# remove run_configure "$@" from autogen.sh, copy the dir to -patched, -# run autogen.sh (doesn't work with automake 1.10 as of 1.1.3 so use 1.9), -# remove autom4te.cache, then diff the dirs. Apply rest of the patches during -# build so that autotools do not need to be run again. -Patch0: %{name}-1.1.3-autotools.patch.bz2 -Patch1: %{name}-1.1.3-optflags.patch -Patch2: %{name}-1.1.3-flac113.patch +Source2: %{name}-mk-autotools-patch.sh +# autotools patch created with source2 +Patch0: %{name}-1.1.4-autotools.patch.bz2 +Patch1: %{name}-1.1.4-optflags.patch Patch3: %{name}-1.1.3-legacy-flac-init.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.1-multilib-devel.patch @@ -45,7 +42,7 @@ BuildRequires: ImageMagick-devel >= 6.2.4.6-1 # Audio BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 -BuildRequires: jack-audio-connection-kit-devel +BuildRequires: jack-audio-connection-kit-devel wavpack-devel libmpcdec-devel # CDs BuildRequires: libcdio-devel # Other @@ -101,10 +98,10 @@ This package contains extra plugins for xine-lib: %prep %setup -q %patch0 -p1 -b .autotools -cp -p m4/optimizations.m4 m4/optimizations.m4.stamp +touch -r configure.ac aclocal.m4 +touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 -%patch2 -p1 -b .flac113 %patch3 -p0 -b .legacy-flac-init # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind @@ -124,6 +121,9 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --with-xv-path=%{_libdir} \ --with-w32-path=%{codecdir} \ --with-external-ffmpeg \ + --with-external-libmpcdec \ + --with-libflac \ + --with-wavpack \ --enable-ipv6 \ %if 0%{!?_without_directfb:1} --enable-directfb \ @@ -149,8 +149,8 @@ make %{?_smp_mflags} rm -rf $RPM_BUILD_ROOT __docs make install DESTDIR=$RPM_BUILD_ROOT %find_lang libxine1 -cp -pR $RPM_BUILD_ROOT%{_docdir}/xine __docs -rm -rf $RPM_BUILD_ROOT%{_docdir}/xine +cp -pR $RPM_BUILD_ROOT%{_docdir}/xine-lib __docs +rm -rf $RPM_BUILD_ROOT%{_docdir}/xine-lib # Removing useless files rm -Rf $RPM_BUILD_ROOT%{_libdir}/libxine.la __docs/README \ @@ -166,12 +166,14 @@ rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig + %postun -p /sbin/ldconfig %files -f libxine1.lang %defattr(-,root,root,-) -%doc AUTHORS COPYING CREDITS ChangeLog* README TODO __docs/README.* __docs/faq +%doc AUTHORS COPYING CREDITS ChangeLog* README TODO +%doc __docs/README.* __docs/faq.* %dir %{codecdir} %{_datadir}/xine %{_libdir}/libxine.so.* @@ -213,6 +215,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_decode_theora.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so %{_libdir}/xine/plugins/%{version}/xineplug_dmx_yuv_frames.so %{_libdir}/xine/plugins/%{version}/xineplug_dmx_real.so %{_libdir}/xine/plugins/%{version}/xineplug_dmx_audio.so @@ -232,7 +235,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_dmx_games.so %{_libdir}/xine/plugins/%{version}/xineplug_dmx_slave.so %{_libdir}/xine/plugins/%{version}/xineplug_flac.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so +%{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so @@ -281,6 +284,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jan 31 2007 Ville Skyttä - 1.1.4-1 +- 1.1.4, with wavpack and system libmpcdec support. + * Thu Jan 18 2007 Aurelien Bompard 1.1.3-4 - rebuild From df97efc8ef983be6c55dda3af9026abdfc36ce12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 14 Feb 2007 18:44:03 +0000 Subject: [PATCH 009/150] =?UTF-8?q?*=20Wed=20Feb=2014=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.4-2=20-=20Reb?= =?UTF-8?q?uild.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index b902952..54db4dc 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -8,7 +8,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.4 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -284,6 +284,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Feb 14 2007 Ville Skyttä - 1.1.4-2 +- Rebuild. + * Wed Jan 31 2007 Ville Skyttä - 1.1.4-1 - 1.1.4, with wavpack and system libmpcdec support. From 074bb17cdcebb45f114c82cb0ee35369c0a05f09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 10 Mar 2007 22:13:01 +0000 Subject: [PATCH 010/150] =?UTF-8?q?*=20Sat=20Mar=2010=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.4-3=20-=20App?= =?UTF-8?q?ly=20upstream=20fix=20for=20CVE-2007-1246.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib-1.1.4-CVE-2007-1246.patch | 40 ++++++++++++++++++++++++++++++ xine-lib.spec | 7 +++++- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 xine-lib-1.1.4-CVE-2007-1246.patch diff --git a/xine-lib-1.1.4-CVE-2007-1246.patch b/xine-lib-1.1.4-CVE-2007-1246.patch new file mode 100644 index 0000000..c7fec5d --- /dev/null +++ b/xine-lib-1.1.4-CVE-2007-1246.patch @@ -0,0 +1,40 @@ +--------------------- +PatchSet 8656 +Date: 2007/03/10 02:41:34 +Author: dgp85 +Branch: HEAD +Tag: (none) +Log: + * Security fixes: + - Fix heap overflow in DMO loader. (CVE-2007-1246) [bug #1676925] + Thanks to Kees Cook for reporting. + +Members: + ChangeLog:1.724->1.725 + src/libw32dll/DirectShow/DS_VideoDecoder.c:1.9->1.10 + src/libw32dll/dmo/DMO_VideoDecoder.c:1.4->1.5 + +Index: xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c +diff -u xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c:1.9 xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c:1.10 +--- xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c:1.9 Wed Dec 24 16:55:36 2003 ++++ xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c Sat Mar 10 00:41:34 2007 +@@ -110,6 +110,7 @@ + + this->iv.m_bh = (BITMAPINFOHEADER*)malloc(bihs); + memcpy(this->iv.m_bh, format, bihs); ++ this->iv.m_bh->biSize = bihs; + + this->iv.m_State = STOP; + //this->iv.m_pFrame = 0; +Index: xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c +diff -u xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c:1.4 xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c:1.5 +--- xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c:1.4 Wed Dec 24 16:55:36 2003 ++++ xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c Sat Mar 10 00:41:34 2007 +@@ -118,6 +118,7 @@ + + this->iv.m_bh = (BITMAPINFOHEADER*)malloc(bihs); + memcpy(this->iv.m_bh, format, bihs); ++ this->iv.m_bh->biSize = bihs; + + this->iv.m_State = STOP; + //this->iv.m_pFrame = 0; diff --git a/xine-lib.spec b/xine-lib.spec index 54db4dc..2397a7b 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -8,7 +8,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.4 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -21,6 +21,7 @@ Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 Patch0: %{name}-1.1.4-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch +Patch2: %{name}-1.1.4-CVE-2007-1246.patch Patch3: %{name}-1.1.3-legacy-flac-init.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.1-multilib-devel.patch @@ -101,6 +102,7 @@ This package contains extra plugins for xine-lib: touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags +%patch2 -p1 -b .CVE-2007-1246 touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch3 -p0 -b .legacy-flac-init # Patch6 needed at least when compiling with external ffmpeg, #939. @@ -284,6 +286,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Mar 10 2007 Ville Skyttä - 1.1.4-3 +- Apply upstream fix for CVE-2007-1246. + * Wed Feb 14 2007 Ville Skyttä - 1.1.4-2 - Rebuild. From e9deeb7216effcc19fbf223a435ad6cefacfa0e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Mon, 26 Mar 2007 19:56:33 +0000 Subject: [PATCH 011/150] =?UTF-8?q?*=20Mon=20Mar=2026=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.4-4=20-=20Add?= =?UTF-8?q?=20PulseAudio=20support=20(in=20-extras,=20#234035/Jost=20Diede?= =?UTF-8?q?richs).=20-=20Adjust=20Samba=20build=20dependencies=20to=20work?= =?UTF-8?q?=20for=20both=20<=3D=20and=20>=20FC6.=20-=20Add=20--with=20free?= =?UTF-8?q?type=20and=20--with=20antialiasing=20build=20time=20options,=20?= =?UTF-8?q?=20=20default=20disabled,=20and=20an=20upstream=20patch=20for?= =?UTF-8?q?=20FreeType=20memory=20leak=20(#233194).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib-1.1.4-ftfree.patch | 20 ++++++++++++++++++++ xine-lib.spec | 34 ++++++++++++++++++++++++++++------ 2 files changed, 48 insertions(+), 6 deletions(-) create mode 100644 xine-lib-1.1.4-ftfree.patch diff --git a/xine-lib-1.1.4-ftfree.patch b/xine-lib-1.1.4-ftfree.patch new file mode 100644 index 0000000..e8e7cd0 --- /dev/null +++ b/xine-lib-1.1.4-ftfree.patch @@ -0,0 +1,20 @@ +--- src/xine-engine/osd.c 2007/02/20 00:34:58 1.84 ++++ src/xine-engine/osd.c 2007/03/03 22:59:37 1.86 +@@ -1481,7 +1481,16 @@ + while( osd ) { + if ( osd == osd_to_close ) { + free( osd->area ); +- if( osd->ft2 ) free( osd->ft2 ); ++ ++#ifdef HAVE_FT2 ++ if( osd->ft2 ) { ++ if ( osd->ft2->library ) ++ FT_Done_FreeType(osd->ft2->library); ++ ++ free( osd->ft2 ); ++ } ++#endif ++ + osd_free_encoding(osd); + + if( last ) diff --git a/xine-lib.spec b/xine-lib.spec index 2397a7b..a46faaa 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,14 +1,12 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ -# - pulseaudio -# - --enable-antialiasing? %define codecdir %{_libdir}/codecs Summary: Xine library Name: xine-lib Version: 1.1.4 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -23,13 +21,14 @@ Patch0: %{name}-1.1.4-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch Patch2: %{name}-1.1.4-CVE-2007-1246.patch Patch3: %{name}-1.1.3-legacy-flac-init.patch +Patch4: %{name}-1.1.4-ftfree.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.1-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel libGLU-devel # Video -BuildRequires: freetype-devel SDL-devel libtheora-devel libmng-devel +BuildRequires: SDL-devel libtheora-devel libmng-devel BuildRequires: aalib-devel >= 1.4 %if 0%{?_with_caca:1} BuildRequires: libcaca-devel >= 0.99 @@ -40,14 +39,20 @@ BuildRequires: directfb-devel %if 0%{!?_without_imagemagick:1} BuildRequires: ImageMagick-devel >= 6.2.4.6-1 %endif +%if 0%{?_with_freetype:1} +BuildRequires: fontconfig-devel +%endif # Audio BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 BuildRequires: jack-audio-connection-kit-devel wavpack-devel libmpcdec-devel +BuildRequires: pulseaudio-lib-devel # CDs BuildRequires: libcdio-devel # Other -BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel samba-common +BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel +# samba-common in <= FC-6, libsmbclient-devel in FC7+ +BuildRequires: %{_includedir}/libsmbclient.h %package devel Summary: Xine library development files @@ -70,6 +75,8 @@ of the most uncommon formats, too. Non-default rpmbuild options: --without imagemagick: Disable ImageMagick support --without directfb: Disable DirectFB support --with caca: Enable CACA support +--with freetype: Enable FreeType/Fontconfig support +--with antialiasing: Enable font antialiasing (with FreeType/FontConfig) %description devel This package contains development files for xine-lib. @@ -79,6 +86,7 @@ This package contains extra plugins for xine-lib: - aRts - EsounD - JACK + - Pulseaudio - GDK-Pixbuf - GNOME VFS - SMB @@ -105,6 +113,7 @@ touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch2 -p1 -b .CVE-2007-1246 touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch3 -p0 -b .legacy-flac-init +%patch4 -p0 -b .ftfree # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel @@ -135,6 +144,13 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %endif %if 0%{!?_with_caca:1} --without-caca \ +%endif +%if 0%{?_with_freetype:1} + --with-freetype \ + --with-fontconfig \ +%if 0%{?_with_antialiasing:1} + --enable-antialiasing \ +%endif %endif --disable-libfame \ --disable-faad \ @@ -256,6 +272,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_arts.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so +%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_pulseaudio.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so @@ -284,8 +301,13 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/xine-config.1* - %changelog +* Mon Mar 26 2007 Ville Skyttä - 1.1.4-4 +- Add PulseAudio support (in -extras, #234035/Jost Diederichs). +- Adjust Samba build dependencies to work for both <= and > FC6. +- Add --with freetype and --with antialiasing build time options, + default disabled, and an upstream patch for FreeType memory leak (#233194). + * Sat Mar 10 2007 Ville Skyttä - 1.1.4-3 - Apply upstream fix for CVE-2007-1246. From 5274bd95b2a4030f1138be14ef43404bea81af44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 8 Apr 2007 14:13:18 +0000 Subject: [PATCH 012/150] Using bz2 tarball --- xine-lib-cleanup-sources.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 97da5bd..9cd32fd 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -6,7 +6,7 @@ if [ -z "$1" -o $# -ne 1 ]; then fi version=$1 -tarball="xine-lib-$version.tar.gz" +tarball="xine-lib-$version.tar.bz2" dir="xine-lib-$version" modtarball="xine-lib-$version-pruned.tar.bz2" @@ -18,7 +18,7 @@ fi echo "Uncompressing $tarball..." rm -rf $dir -tar -xzf $tarball +tar -xjf $tarball cd $dir # Main libraries From 8a1dd4f6d7128d5767395cff668816f6cf4aaf1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 8 Apr 2007 18:09:47 +0000 Subject: [PATCH 013/150] Order/expand all plugins in %files, don't ship empty vidix dir. --- xine-lib.spec | 153 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 92 insertions(+), 61 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index a46faaa..4530cdb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -2,6 +2,11 @@ # - libstk: http://www.libstk.net/ %define codecdir %{_libdir}/codecs +%ifarch %{ix86} +%define have_vidix 1 +%else +%define have_vidix 0 +%endif Summary: Xine library Name: xine-lib @@ -199,72 +204,94 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/xine/ %dir %{_libdir}/xine/plugins/ %dir %{_libdir}/xine/plugins/%{version}/ -# I list all the plugins because I don't want a non-free plugin -# to sneak into a future version +# Listing every plugin separately for better control over binary packages +# containing exactly the plugins we want, nothing accidentally snuck in +# nor dropped. +%dir %{_libdir}/xine/plugins/%{version}/post/ +%{_libdir}/xine/plugins/%{version}/post/xineplug_post_audio_filters.so +%{_libdir}/xine/plugins/%{version}/post/xineplug_post_goom.so +%{_libdir}/xine/plugins/%{version}/post/xineplug_post_mosaico.so +%{_libdir}/xine/plugins/%{version}/post/xineplug_post_switch.so +%{_libdir}/xine/plugins/%{version}/post/xineplug_post_visualizations.so +%if %{have_vidix} +%dir %{_libdir}/xine/plugins/%{version}/vidix/ +%{_libdir}/xine/plugins/%{version}/vidix/cyberblade_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/mach64_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/mga_crtc2_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/mga_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/nvidia_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/pm2_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/pm3_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/radeon_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/rage128_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/savage_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/sis_vid.so +%{_libdir}/xine/plugins/%{version}/vidix/unichrome_vid.so +%endif %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_alsa.so -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_oss.so -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_none.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_file.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_none.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_opengl.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_syncfb.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xshm.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xv.so +%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_none.so +%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_oss.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_bitplane.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_lpcm.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so +%ifarch %ix86 +%{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so +%endif +%{_libdir}/xine/plugins/%{version}/xineplug_decode_real.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_real_audio.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_speex.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_theora.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_vorbis.so +%ifarch %ix86 +%{_libdir}/xine/plugins/%{version}/xineplug_decode_w32dll.so +%endif +%{_libdir}/xine/plugins/%{version}/xineplug_decode_yuv.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_audio.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_avi.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_fli.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_flv.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_games.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_iff.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_image.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_matroska.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_mng.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_nsv.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_ogg.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_pva.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_qt.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_rawdv.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_real.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_slave.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_sputext.so +%{_libdir}/xine/plugins/%{version}/xineplug_dmx_yuv_frames.so +%{_libdir}/xine/plugins/%{version}/xineplug_flac.so +%{_libdir}/xine/plugins/%{version}/xineplug_inp_cdda.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_dvb.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_v4l.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_file.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_http.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_net.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_pnm.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_cdda.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_stdin_fifo.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_rtp.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_bitplane.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_vorbis.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_yuv.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_lpcm.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_real.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_real_audio.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_speex.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_theora.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_yuv_frames.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_real.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_audio.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_iff.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_avi.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_flv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_image.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_matroska.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_ogg.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_fli.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_nsv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_mng.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_pva.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_qt.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_rawdv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_sputext.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_games.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_slave.so -%{_libdir}/xine/plugins/%{version}/xineplug_flac.so -%{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so -%ifarch %ix86 +%{_libdir}/xine/plugins/%{version}/xineplug_inp_rtsp.so +%{_libdir}/xine/plugins/%{version}/xineplug_inp_stdin_fifo.so +%{_libdir}/xine/plugins/%{version}/xineplug_inp_v4l.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_fb.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_none.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_opengl.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_syncfb.so +%if %{have_vidix} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_w32dll.so %endif -%ifnarch ppc64 s390 s390x -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xxmc.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xshm.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xv.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xvmc.so -%endif -%{_libdir}/xine/plugins/%{version}/post/ -%{_libdir}/xine/plugins/%{version}/vidix/ +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xxmc.so +%{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so %files extras @@ -273,20 +300,20 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_pulseaudio.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_gdk_pixbuf.so -%if 0%{?_with_caca:1} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so -%endif %if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{version}/xineplug_decode_image.so %endif +%{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so +%{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so +%if 0%{?_with_caca:1} +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so +%endif %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so %endif +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so %files devel @@ -302,6 +329,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Apr 8 2007 Ville Skyttä +- Exclude vidix dir on systems that don't have vidix. +- Specfile cleanups. + * Mon Mar 26 2007 Ville Skyttä - 1.1.4-4 - Add PulseAudio support (in -extras, #234035/Jost Diederichs). - Adjust Samba build dependencies to work for both <= and > FC6. From 3d651b1200ac692a613769ee8af558cbaebb7619 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 11 Apr 2007 21:36:29 +0000 Subject: [PATCH 014/150] =?UTF-8?q?*=20Wed=20Apr=2011=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.5-1=20-=201.1?= =?UTF-8?q?.5.=20-=20Include=20GSM=2006.10=20decoder=20(#228186).=20-=20Re?= =?UTF-8?q?-enable=20CACA=20support.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.3-legacy-flac-init.patch | 16 -------- xine-lib-1.1.4-CVE-2007-1246.patch | 40 ------------------ xine-lib-1.1.4-ftfree.patch | 20 --------- ...tch => xine-lib-1.1.5-multilib-devel.patch | 8 ++-- xine-lib-1.1.5-pthread-check.patch | 24 +++++++++++ xine-lib-cleanup-sources.sh | 16 +++++++- xine-lib-mk-autotools-patch.sh | 8 ++++ xine-lib.spec | 41 ++++++++----------- 10 files changed, 70 insertions(+), 111 deletions(-) delete mode 100644 xine-lib-1.1.3-legacy-flac-init.patch delete mode 100644 xine-lib-1.1.4-CVE-2007-1246.patch delete mode 100644 xine-lib-1.1.4-ftfree.patch rename xine-lib-1.1.1-multilib-devel.patch => xine-lib-1.1.5-multilib-devel.patch (77%) create mode 100644 xine-lib-1.1.5-pthread-check.patch diff --git a/.cvsignore b/.cvsignore index aea6ec7..41883b2 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.4-pruned.tar.bz2 -xine-lib-1.1.4-autotools.patch.bz2 +xine-lib-1.1.5-pruned.tar.bz2 +xine-lib-1.1.5-autotools.patch.bz2 diff --git a/sources b/sources index 2a4625c..f2e30be 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -81faabf1e38abed44639dbe4c76719f9 xine-lib-1.1.4-pruned.tar.bz2 -a916758545ed73a369f40648c7bc449c xine-lib-1.1.4-autotools.patch.bz2 +f903a0426a812ea70200b7a528f67b00 xine-lib-1.1.5-pruned.tar.bz2 +f955ece2fba4dfbbf22fbb2a8376ae60 xine-lib-1.1.5-autotools.patch.bz2 diff --git a/xine-lib-1.1.3-legacy-flac-init.patch b/xine-lib-1.1.3-legacy-flac-init.patch deleted file mode 100644 index ba1cdb7..0000000 --- a/xine-lib-1.1.3-legacy-flac-init.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: src/libflac/decoder_flac.c -=================================================================== -RCS file: /cvsroot/xine/xine-lib/src/libflac/decoder_flac.c,v -retrieving revision 1.22 -diff -u -r1.22 decoder_flac.c ---- src/libflac/decoder_flac.c 25 Dec 2006 19:22:00 -0000 1.22 -+++ src/libflac/decoder_flac.c 3 Jan 2007 19:58:07 -0000 -@@ -363,7 +363,7 @@ - - FLAC__stream_decoder_set_client_data (this->flac_decoder, this); - -- if (FLAC__stream_decoder_init (this->flac_decoder) == FLAC__STREAM_DECODER_SEARCH_FOR_METADATA) { -+ if (FLAC__stream_decoder_init (this->flac_decoder) != FLAC__STREAM_DECODER_SEARCH_FOR_METADATA) { - free (this); - return NULL; - } diff --git a/xine-lib-1.1.4-CVE-2007-1246.patch b/xine-lib-1.1.4-CVE-2007-1246.patch deleted file mode 100644 index c7fec5d..0000000 --- a/xine-lib-1.1.4-CVE-2007-1246.patch +++ /dev/null @@ -1,40 +0,0 @@ ---------------------- -PatchSet 8656 -Date: 2007/03/10 02:41:34 -Author: dgp85 -Branch: HEAD -Tag: (none) -Log: - * Security fixes: - - Fix heap overflow in DMO loader. (CVE-2007-1246) [bug #1676925] - Thanks to Kees Cook for reporting. - -Members: - ChangeLog:1.724->1.725 - src/libw32dll/DirectShow/DS_VideoDecoder.c:1.9->1.10 - src/libw32dll/dmo/DMO_VideoDecoder.c:1.4->1.5 - -Index: xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c -diff -u xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c:1.9 xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c:1.10 ---- xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c:1.9 Wed Dec 24 16:55:36 2003 -+++ xine-lib/src/libw32dll/DirectShow/DS_VideoDecoder.c Sat Mar 10 00:41:34 2007 -@@ -110,6 +110,7 @@ - - this->iv.m_bh = (BITMAPINFOHEADER*)malloc(bihs); - memcpy(this->iv.m_bh, format, bihs); -+ this->iv.m_bh->biSize = bihs; - - this->iv.m_State = STOP; - //this->iv.m_pFrame = 0; -Index: xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c -diff -u xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c:1.4 xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c:1.5 ---- xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c:1.4 Wed Dec 24 16:55:36 2003 -+++ xine-lib/src/libw32dll/dmo/DMO_VideoDecoder.c Sat Mar 10 00:41:34 2007 -@@ -118,6 +118,7 @@ - - this->iv.m_bh = (BITMAPINFOHEADER*)malloc(bihs); - memcpy(this->iv.m_bh, format, bihs); -+ this->iv.m_bh->biSize = bihs; - - this->iv.m_State = STOP; - //this->iv.m_pFrame = 0; diff --git a/xine-lib-1.1.4-ftfree.patch b/xine-lib-1.1.4-ftfree.patch deleted file mode 100644 index e8e7cd0..0000000 --- a/xine-lib-1.1.4-ftfree.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- src/xine-engine/osd.c 2007/02/20 00:34:58 1.84 -+++ src/xine-engine/osd.c 2007/03/03 22:59:37 1.86 -@@ -1481,7 +1481,16 @@ - while( osd ) { - if ( osd == osd_to_close ) { - free( osd->area ); -- if( osd->ft2 ) free( osd->ft2 ); -+ -+#ifdef HAVE_FT2 -+ if( osd->ft2 ) { -+ if ( osd->ft2->library ) -+ FT_Done_FreeType(osd->ft2->library); -+ -+ free( osd->ft2 ); -+ } -+#endif -+ - osd_free_encoding(osd); - - if( last ) diff --git a/xine-lib-1.1.1-multilib-devel.patch b/xine-lib-1.1.5-multilib-devel.patch similarity index 77% rename from xine-lib-1.1.1-multilib-devel.patch rename to xine-lib-1.1.5-multilib-devel.patch index ff0c549..5b5d05d 100644 --- a/xine-lib-1.1.1-multilib-devel.patch +++ b/xine-lib-1.1.5-multilib-devel.patch @@ -1,5 +1,5 @@ ---- misc/xine-config.in~ 2005-09-05 20:02:57.000000000 +0300 -+++ misc/xine-config.in 2006-06-13 01:43:55.000000000 +0300 +--- misc/xine-config.in~ 2007-04-05 01:18:00.000000000 +0300 ++++ misc/xine-config.in 2007-04-11 01:32:44.000000000 +0300 @@ -2,8 +2,8 @@ # # @@ -24,12 +24,12 @@ fi if test "$echo_cflags" = "yes"; then -- echo -I@includedir@ @THREAD_CPPFLAGS@ +- echo -I@includedir@ @PTHREAD_CFLAGS@ + pkg-config libxine --cflags fi if test "$echo_libs" = "yes"; then -- echo -L@libdir@ -lxine @ZLIB_LIBS@ @NET_LIBS@ @THREAD_LIBS@ @LIBICONV@ @RT_LIBS@ +- echo -L@libdir@ -lxine @ZLIB_LIBS@ @NET_LIBS@ @PTHREAD_LIBS@ @LIBICONV@ @RT_LIBS@ + pkg-config libxine --libs fi if test "$echo_plugindir" = "yes"; then diff --git a/xine-lib-1.1.5-pthread-check.patch b/xine-lib-1.1.5-pthread-check.patch new file mode 100644 index 0000000..9a6a974 --- /dev/null +++ b/xine-lib-1.1.5-pthread-check.patch @@ -0,0 +1,24 @@ +Upstream changeset 8743:defc4f072bde + additional fix in fakethread(). + +diff -r d1512848e87b -r defc4f072bde m4/pthreads.m4 +--- a/m4/pthreads.m4 Tue Apr 10 17:08:22 2007 +0100 ++++ b/m4/pthreads.m4 Wed Apr 11 17:32:13 2007 +0200 +@@ -36,11 +36,15 @@ AC_DEFUN([CC_PTHREAD_FLAGS], [ + [ac_save_CFLAGS="$CFLAGS" + ac_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $cc_cv_werror $PTHREAD_CFLAGS" ++ + LIBS="$LIBS $PTHREAD_LIBS" +- AC_COMPILE_IFELSE( ++ AC_LINK_IFELSE( + [AC_LANG_PROGRAM( +- [[#include ]], +- [[pthread_create(NULL, NULL, NULL, NULL);]] ++ [[#include ++ void *fakethread(void *arg) { return NULL; } ++ pthread_t fakevariable; ++ ]], ++ [[pthread_create(&fakevariable, NULL, &fakethread, NULL);]] + )], + [cc_cv_pthreads=yes], + [cc_cv_pthreads=no]) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 9cd32fd..0a240f2 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -22,7 +22,7 @@ tar -xjf $tarball cd $dir # Main libraries -for remove in libfaad libffmpeg libmad libmpeg2 dxr3 libspudec libxineadec libspucmml libspucc liba52 libdts; do +for remove in libfaad libffmpeg libmad libmpeg2 dxr3 libspudec libspucmml libspucc liba52 libdts; do echo "removing src/$remove..." rm -rf src/$remove sed -i -e "/$remove/d" src/Makefile.am @@ -53,8 +53,20 @@ for p in mpeg mpeg_block mpeg_ts mpeg_elem mpeg_pes yuv4mpeg2; do [ -f src/demuxers/demux_$p.c ] && rm -f src/demuxers/demux_$p.c sed -i -e "/xineplug_dmx_$p/d" src/demuxers/Makefile.am done +# Postprocessors echo "removing planar and deinterlace postprocessors..." -sed -i -e 's/planar//g;s/deinterlace//g' src/post/Makefile.am # fails to build +sed -i -e 's/deinterlace //g' src/post/Makefile.am # see comments in speedy.c +sed -i -e 's/planar //g' src/post/Makefile.am # requires libpostproc +sed -i -e '/post\/\(deinterlace\|planar\)/d' configure.ac +rm -rf src/post/{deinterlace,planar} +# NSF decoder +echo "removing NSF decoder..." +rm -rf src/libxineadec/{nosefart,nsf.c} +sed -i -e '/^xineplug_decode_nsf_la/,/^\s*$/d' \ + -e /xineplug_decode_nsf/d \ + -e 's/ nosefart//' \ + src/libxineadec/Makefile.am +sed -i -e /nosefart/d configure.ac # All clean ! diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index 88db99c..4166b06 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -11,11 +11,19 @@ fi version=$1 +# missing dependency on autoconf >= (apparently) 2.61 in upstream autofoo files +acversion="$(rpm -q --qf=%{VERSION} autoconf)" +case $acversion in + 2.6*) ;; + *) echo "ERROR: autoconf >= 2.61 required" ; exit 1 ;; +esac + rm -rf xine-lib-$version xine-lib-$version-pruned tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned cd xine-lib-$version +patch -p1 < ../xine-lib-$version-pthread-check.patch # XXX hopefully temporary ./autogen.sh noconfig rm -rf autom4te.cache *~ cd .. diff --git a/xine-lib.spec b/xine-lib.spec index 4530cdb..0dcdc74 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,5 +1,6 @@ # TODO, sometime, maybe: -# - libstk: http://www.libstk.net/ +# - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog +# - xcb stuff when it's available %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -10,8 +11,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.4 -Release: 4%{?dist} +Version: 1.1.5 +Release: 1%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -22,22 +23,19 @@ Source0: %{name}-%{version}-pruned.tar.bz2 Source1: %{name}-cleanup-sources.sh Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 -Patch0: %{name}-1.1.4-autotools.patch.bz2 +Patch0: %{name}-1.1.5-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch -Patch2: %{name}-1.1.4-CVE-2007-1246.patch -Patch3: %{name}-1.1.3-legacy-flac-init.patch -Patch4: %{name}-1.1.4-ftfree.patch +# Patch2 applied while creating full autotools patch +Patch2: %{name}-1.1.5-pthread-check.patch Patch6: %{name}-1.1.1-deepbind-939.patch -Patch7: %{name}-1.1.1-multilib-devel.patch +Patch7: %{name}-1.1.5-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel libGLU-devel # Video BuildRequires: SDL-devel libtheora-devel libmng-devel BuildRequires: aalib-devel >= 1.4 -%if 0%{?_with_caca:1} BuildRequires: libcaca-devel >= 0.99 -%endif %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel %endif @@ -79,7 +77,6 @@ interprets many of the most common multimedia formats available - and some of the most uncommon formats, too. Non-default rpmbuild options: --without imagemagick: Disable ImageMagick support --without directfb: Disable DirectFB support ---with caca: Enable CACA support --with freetype: Enable FreeType/Fontconfig support --with antialiasing: Enable font antialiasing (with FreeType/FontConfig) @@ -97,9 +94,7 @@ This package contains extra plugins for xine-lib: - SMB - SDL - AA-lib -%if 0%{?_with_caca:1} - Libcaca -%endif %if 0%{!?_without_imagemagick:1} - Image decoding %endif @@ -115,16 +110,11 @@ This package contains extra plugins for xine-lib: touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags -%patch2 -p1 -b .CVE-2007-1246 touch -r m4/optimizations.m4.stamp m4/optimizations.m4 -%patch3 -p0 -b .legacy-flac-init -%patch4 -p0 -b .ftfree # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel -find . -name "*.[hc]" | xargs chmod -c -x - # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -147,9 +137,6 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{?_without_imagemagick:1} --without-imagemagick \ %endif -%if 0%{!?_with_caca:1} - --without-caca \ -%endif %if 0%{?_with_freetype:1} --with-freetype \ --with-fontconfig \ @@ -195,7 +182,7 @@ rm -rf $RPM_BUILD_ROOT %files -f libxine1.lang %defattr(-,root,root,-) -%doc AUTHORS COPYING CREDITS ChangeLog* README TODO +%doc AUTHORS COPYING COPYING.LIB CREDITS ChangeLog* README TODO %doc __docs/README.* __docs/faq.* %dir %{codecdir} %{_datadir}/xine @@ -204,6 +191,7 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/xine/ %dir %{_libdir}/xine/plugins/ %dir %{_libdir}/xine/plugins/%{version}/ +%{_libdir}/xine/plugins/%{version}/mime.types # Listing every plugin separately for better control over binary packages # containing exactly the plugins we want, nothing accidentally snuck in # nor dropped. @@ -233,13 +221,13 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_none.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_oss.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_bitplane.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_lpcm.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so %endif %{_libdir}/xine/plugins/%{version}/xineplug_decode_real.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_real_audio.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_speex.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so @@ -307,9 +295,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so -%if 0%{?_with_caca:1} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so -%endif %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so %endif @@ -329,6 +315,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Apr 11 2007 Ville Skyttä - 1.1.5-1 +- 1.1.5. +- Include GSM 06.10 decoder (#228186). +- Re-enable CACA support. + * Sun Apr 8 2007 Ville Skyttä - Exclude vidix dir on systems that don't have vidix. - Specfile cleanups. From 11a6980ba9d63b5dba2d445ad796531a35d32104 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 18 Apr 2007 17:57:19 +0000 Subject: [PATCH 015/150] =?UTF-8?q?*=20Wed=20Apr=2018=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.6-1=20-=201.1?= =?UTF-8?q?.6.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib-1.1.5-pthread-check.patch | 24 ------------------------ xine-lib-mk-autotools-patch.sh | 1 - xine-lib.spec | 10 ++++++---- 5 files changed, 10 insertions(+), 33 deletions(-) delete mode 100644 xine-lib-1.1.5-pthread-check.patch diff --git a/.cvsignore b/.cvsignore index 41883b2..1a3b46f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.5-pruned.tar.bz2 -xine-lib-1.1.5-autotools.patch.bz2 +xine-lib-1.1.6-pruned.tar.bz2 +xine-lib-1.1.6-autotools.patch.bz2 diff --git a/sources b/sources index f2e30be..0470388 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -f903a0426a812ea70200b7a528f67b00 xine-lib-1.1.5-pruned.tar.bz2 -f955ece2fba4dfbbf22fbb2a8376ae60 xine-lib-1.1.5-autotools.patch.bz2 +3869f0045311b3638c5724cd1ac122e9 xine-lib-1.1.6-pruned.tar.bz2 +25742f2347a1d9c4c08476c82f3ec5fc xine-lib-1.1.6-autotools.patch.bz2 diff --git a/xine-lib-1.1.5-pthread-check.patch b/xine-lib-1.1.5-pthread-check.patch deleted file mode 100644 index 9a6a974..0000000 --- a/xine-lib-1.1.5-pthread-check.patch +++ /dev/null @@ -1,24 +0,0 @@ -Upstream changeset 8743:defc4f072bde + additional fix in fakethread(). - -diff -r d1512848e87b -r defc4f072bde m4/pthreads.m4 ---- a/m4/pthreads.m4 Tue Apr 10 17:08:22 2007 +0100 -+++ b/m4/pthreads.m4 Wed Apr 11 17:32:13 2007 +0200 -@@ -36,11 +36,15 @@ AC_DEFUN([CC_PTHREAD_FLAGS], [ - [ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $cc_cv_werror $PTHREAD_CFLAGS" -+ - LIBS="$LIBS $PTHREAD_LIBS" -- AC_COMPILE_IFELSE( -+ AC_LINK_IFELSE( - [AC_LANG_PROGRAM( -- [[#include ]], -- [[pthread_create(NULL, NULL, NULL, NULL);]] -+ [[#include -+ void *fakethread(void *arg) { return NULL; } -+ pthread_t fakevariable; -+ ]], -+ [[pthread_create(&fakevariable, NULL, &fakethread, NULL);]] - )], - [cc_cv_pthreads=yes], - [cc_cv_pthreads=no]) diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index 4166b06..93590b4 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -23,7 +23,6 @@ tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned cd xine-lib-$version -patch -p1 < ../xine-lib-$version-pthread-check.patch # XXX hopefully temporary ./autogen.sh noconfig rm -rf autom4te.cache *~ cd .. diff --git a/xine-lib.spec b/xine-lib.spec index 0dcdc74..6c822ce 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -11,7 +11,7 @@ Summary: Xine library Name: xine-lib -Version: 1.1.5 +Version: 1.1.6 Release: 1%{?dist} License: GPL Group: System Environment/Libraries @@ -23,10 +23,8 @@ Source0: %{name}-%{version}-pruned.tar.bz2 Source1: %{name}-cleanup-sources.sh Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 -Patch0: %{name}-1.1.5-autotools.patch.bz2 +Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch -# Patch2 applied while creating full autotools patch -Patch2: %{name}-1.1.5-pthread-check.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.5-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -298,6 +296,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xdirectfb.so %endif %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so @@ -315,6 +314,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Apr 18 2007 Ville Skyttä - 1.1.6-1 +- 1.1.6. + * Wed Apr 11 2007 Ville Skyttä - 1.1.5-1 - 1.1.5. - Include GSM 06.10 decoder (#228186). From 4ff7d1bbce5e644fdff73373daed4a729f71ec65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 25 Apr 2007 17:45:04 +0000 Subject: [PATCH 016/150] =?UTF-8?q?*=20Wed=20Apr=2025=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.6-2=20-=20Mak?= =?UTF-8?q?e=20Real=20codec=20search=20path=20/usr/lib(64)/codecs=20again?= =?UTF-8?q?=20(#237743).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 6c822ce..f2a41cb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -12,7 +12,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.6 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -124,6 +124,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %configure --disable-dependency-tracking \ --with-xv-path=%{_libdir} \ --with-w32-path=%{codecdir} \ + --with-real-codecs-path=%{codecdir} \ --with-external-ffmpeg \ --with-external-libmpcdec \ --with-libflac \ @@ -182,8 +183,8 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root,-) %doc AUTHORS COPYING COPYING.LIB CREDITS ChangeLog* README TODO %doc __docs/README.* __docs/faq.* -%dir %{codecdir} -%{_datadir}/xine +%dir %{codecdir}/ +%{_datadir}/xine/ %{_libdir}/libxine.so.* %{_mandir}/man5/xine.5* %dir %{_libdir}/xine/ @@ -314,6 +315,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Apr 25 2007 Ville Skyttä - 1.1.6-2 +- Make Real codec search path /usr/lib(64)/codecs again (#237743). + * Wed Apr 18 2007 Ville Skyttä - 1.1.6-1 - 1.1.6. From 2cbdd03d78adbba875d4d419f78af85e6a8d0184 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 6 Jun 2007 16:23:53 +0000 Subject: [PATCH 017/150] * Wed Jun 06 2007 Rex Dieter - 1.1.6-3 - respin (for libmpcdec) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index f2a41cb..9b6afd7 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -12,7 +12,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.6 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -315,6 +315,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jun 06 2007 Rex Dieter - 1.1.6-3 +- respin (for libmpcdec) + * Wed Apr 25 2007 Ville Skyttä - 1.1.6-2 - Make Real codec search path /usr/lib(64)/codecs again (#237743). From 0fc6f1617779242a7ad2bd6fd2c9b75610551055 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Thu, 7 Jun 2007 20:40:52 +0000 Subject: [PATCH 018/150] =?UTF-8?q?*=20Thu=20Jun=20=207=202007=20Ville=20S?= =?UTF-8?q?kytt=C3=A4=20=20-=201.1.7-1=20-=201?= =?UTF-8?q?.1.7.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib.spec | 10 +++++++--- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/.cvsignore b/.cvsignore index 1a3b46f..e98b803 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.6-pruned.tar.bz2 -xine-lib-1.1.6-autotools.patch.bz2 +xine-lib-1.1.7-pruned.tar.bz2 +xine-lib-1.1.7-autotools.patch.bz2 diff --git a/sources b/sources index 0470388..4131b00 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -3869f0045311b3638c5724cd1ac122e9 xine-lib-1.1.6-pruned.tar.bz2 -25742f2347a1d9c4c08476c82f3ec5fc xine-lib-1.1.6-autotools.patch.bz2 +8f0714de28dab403288bbccf1a8c30c2 xine-lib-1.1.7-pruned.tar.bz2 +6b7f1d168b8b367a8c7709db687c60f6 xine-lib-1.1.7-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index 9b6afd7..8aa1cae 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -11,8 +11,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.6 -Release: 3%{?dist} +Version: 1.1.7 +Release: 1%{?dist} License: GPL Group: System Environment/Libraries URL: http://xinehq.de/ @@ -129,6 +129,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --with-external-libmpcdec \ --with-libflac \ --with-wavpack \ + --with-arts \ --enable-ipv6 \ %if 0%{!?_without_directfb:1} --enable-directfb \ @@ -315,7 +316,10 @@ rm -rf $RPM_BUILD_ROOT %changelog -* Wed Jun 06 2007 Rex Dieter - 1.1.6-3 +* Thu Jun 7 2007 Ville Skyttä - 1.1.7-1 +- 1.1.7. + +* Wed Jun 06 2007 Rex Dieter - 1.1.6-3 - respin (for libmpcdec) * Wed Apr 25 2007 Ville Skyttä - 1.1.6-2 From 25721fadffb5e10516e76763f259826ead7d2d1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Tue, 14 Aug 2007 11:59:58 +0000 Subject: [PATCH 019/150] =?UTF-8?q?*=20Tue=20Aug=2014=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.7-2=20-=20Inc?= =?UTF-8?q?lude=20XCB=20output=20plugins=20(in=20-extras=20at=20least=20fo?= =?UTF-8?q?r=20now).=20-=20Protect=20"open"=20with=20glibc=202.6.90=20and?= =?UTF-8?q?=20-D=5FFORTIFY=5FSOURCE=3D2.=20-=20Clean=20up=20%configure=20o?= =?UTF-8?q?ptions.=20-=20License:=20GPLv2+?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib-1.1.7-open.patch | 101 ++++++++++++++++++++++++++++++++++++++ xine-lib.spec | 70 +++++++++++++++----------- 2 files changed, 143 insertions(+), 28 deletions(-) create mode 100644 xine-lib-1.1.7-open.patch diff --git a/xine-lib-1.1.7-open.patch b/xine-lib-1.1.7-open.patch new file mode 100644 index 0000000..e3d7a6a --- /dev/null +++ b/xine-lib-1.1.7-open.patch @@ -0,0 +1,101 @@ +--- xine-lib-1.1.7/src/libxinevdec/image.c~ 2007-04-15 20:42:16.000000000 +0300 ++++ xine-lib-1.1.7/src/libxinevdec/image.c 2007-08-14 00:40:05.000000000 +0300 +@@ -81,7 +81,7 @@ static void image_decode_data (video_dec + + if (!this->video_open) { + lprintf("opening video\n"); +- this->stream->video_out->open(this->stream->video_out, this->stream); ++ (this->stream->video_out->open)(this->stream->video_out, this->stream); + this->video_open = 1; + } + +--- xine-lib-1.1.7/src/libxinevdec/gdkpixbuf.c~ 2007-04-15 20:42:16.000000000 +0300 ++++ xine-lib-1.1.7/src/libxinevdec/gdkpixbuf.c 2007-08-14 00:45:36.000000000 +0300 +@@ -74,7 +74,7 @@ static void image_decode_data (video_dec + + if (!this->video_open) { + lprintf("opening video\n"); +- this->stream->video_out->open(this->stream->video_out, this->stream); ++ (this->stream->video_out->open)(this->stream->video_out, this->stream); + this->video_open = 1; + } + +--- xine-lib-1.1.7/src/libxineadec/xine_lpcm_decoder.c~ 2007-04-17 04:00:50.000000000 +0300 ++++ xine-lib-1.1.7/src/libxineadec/xine_lpcm_decoder.c 2007-08-14 00:50:49.000000000 +0300 +@@ -134,12 +134,12 @@ static void lpcm_decode_data (audio_deco + + /* force 24-bit samples into 16 bits for now */ + if (this->bits_per_sample == 24) +- this->output_open = this->stream->audio_out->open (this->stream->audio_out, this->stream, ++ this->output_open = (this->stream->audio_out->open) (this->stream->audio_out, this->stream, + 16, + this->rate, + this->ao_cap_mode) ; + else +- this->output_open = this->stream->audio_out->open (this->stream->audio_out, this->stream, ++ this->output_open = (this->stream->audio_out->open) (this->stream->audio_out, this->stream, + this->bits_per_sample, + this->rate, + this->ao_cap_mode) ; +--- xine-lib-1.1.7/src/xine-engine/audio_out.c~ 2007-06-05 00:37:38.000000000 +0300 ++++ xine-lib-1.1.7/src/xine-engine/audio_out.c 2007-08-14 00:34:30.000000000 +0300 +@@ -1401,7 +1401,7 @@ static int ao_change_settings(aos_t *thi + _("stereo not supported by driver, converting to mono.\n")); + } + +- output_sample_rate=this->driver->open(this->driver,bits,(this->force_rate ? this->force_rate : rate),mode); ++ output_sample_rate=(this->driver->open)(this->driver,bits,(this->force_rate ? this->force_rate : rate),mode); + } else + output_sample_rate = this->input.rate; + +--- xine-lib-1.1.7/src/xine-engine/xine.c~ 2007-05-06 17:20:54.000000000 +0300 ++++ xine-lib-1.1.7/src/xine-engine/xine.c 2007-08-14 00:26:30.000000000 +0300 +@@ -462,7 +462,7 @@ static int stream_rewire_audio(xine_post + + if (stream->audio_out->status(stream->audio_out, stream, &bits, &rate, &mode)) { + /* register our stream at the new output port */ +- new_port->open(new_port, stream, bits, rate, mode); ++ (new_port->open)(new_port, stream, bits, rate, mode); + stream->audio_out->close(stream->audio_out, stream); + } + stream->audio_out = new_port; +@@ -486,7 +486,7 @@ static int stream_rewire_video(xine_post + + if (stream->video_out->status(stream->video_out, stream, &width, &height, &img_duration)) { + /* register our stream at the new output port */ +- new_port->open(new_port, stream); ++ (new_port->open)(new_port, stream); + stream->video_out->close(stream->video_out, stream); + } + stream->video_out = new_port; +@@ -773,7 +773,7 @@ static int open_internal (xine_stream_t + _x_meta_info_set_utf8(stream, XINE_META_INFO_INPUT_PLUGIN, + (stream->input_plugin->input_class->get_identifier (stream->input_plugin->input_class))); + +- res = stream->input_plugin->open(stream->input_plugin); ++ res = (stream->input_plugin->open)(stream->input_plugin); + switch(res) { + case 1: /* Open successfull */ + free(input_source); +--- xine-lib-1.1.7/src/libreal/xine_real_audio_decoder.c~ 2007-04-17 04:00:50.000000000 +0300 ++++ xine-lib-1.1.7/src/libreal/xine_real_audio_decoder.c 2007-08-14 01:00:32.000000000 +0300 +@@ -339,7 +339,7 @@ static int init_codec (realdec_decoder_t + return 0; + } + +- this->stream->audio_out->open(this->stream->audio_out, ++ (this->stream->audio_out->open)(this->stream->audio_out, + this->stream, + bits_per_sample, + samples_per_sec, +--- xine-lib-1.1.7/src/libreal/xine_real_video_decoder.c~ 2007-04-17 04:00:50.000000000 +0300 ++++ xine-lib-1.1.7/src/libreal/xine_real_video_decoder.c 2007-08-14 00:54:52.000000000 +0300 +@@ -268,7 +268,7 @@ static int init_codec (realdec_decoder_t + this->rvyuv_custom_message (&cmsg_data, this->context); + } + +- this->stream->video_out->open(this->stream->video_out, this->stream); ++ (this->stream->video_out->open)(this->stream->video_out, this->stream); + + this->frame_size = this->width * this->height; + this->frame_buffer = xine_xmalloc (this->width * this->height * 3 / 2); diff --git a/xine-lib.spec b/xine-lib.spec index 8aa1cae..0474184 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,6 +1,8 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog -# - xcb stuff when it's available + +# TODO: drop the opengl video out plugin? +# http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -12,8 +14,8 @@ Summary: Xine library Name: xine-lib Version: 1.1.7 -Release: 1%{?dist} -License: GPL +Release: 2%{?dist} +License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ # The tarball is generated from the upstream tarball using @@ -25,11 +27,13 @@ Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch +Patch2: %{name}-1.1.7-open.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.5-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 -BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel libGLU-devel +BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel +BuildRequires: libGLU-devel libxcb-devel # Video BuildRequires: SDL-devel libtheora-devel libmng-devel BuildRequires: aalib-devel >= 1.4 @@ -109,6 +113,7 @@ touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 +%patch2 -p1 -b .open # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel @@ -121,36 +126,37 @@ sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " export FFMPEG_POSTPROC_CFLAGS=" " FFMPEG_POSTPROC_LIBS=" " export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" -%configure --disable-dependency-tracking \ - --with-xv-path=%{_libdir} \ - --with-w32-path=%{codecdir} \ - --with-real-codecs-path=%{codecdir} \ - --with-external-ffmpeg \ - --with-external-libmpcdec \ - --with-libflac \ - --with-wavpack \ - --with-arts \ +# Keep list of options in mostly the same order as ./configure --help. +%configure \ + --disable-dependency-tracking \ --enable-ipv6 \ %if 0%{!?_without_directfb:1} --enable-directfb \ -%endif -%if 0%{?_without_imagemagick:1} - --without-imagemagick \ -%endif +%endif # directfb + --disable-a52dec \ + --disable-mad \ + --disable-dvdnavtest --with-external-dvdnav \ + --disable-vcd \ + --disable-asf \ + --disable-faad \ %if 0%{?_with_freetype:1} - --with-freetype \ - --with-fontconfig \ %if 0%{?_with_antialiasing:1} --enable-antialiasing \ -%endif -%endif - --disable-libfame \ - --disable-faad \ - --disable-mad \ - --disable-asf \ - --disable-vcd \ - --disable-a52dec \ - --with-external-dvdnav --disable-dvdnavtest +%endif # antialiasing + --with-freetype \ + --with-fontconfig \ +%endif # freetype + --with-external-ffmpeg \ + --with-xv-path=%{_libdir} \ + --with-libflac \ + --with-external-libmpcdec \ +%if 0%{?_without_imagemagick:1} + --without-imagemagick \ +%endif # imagemagick + --with-arts \ + --with-wavpack \ + --with-real-codecs-path=%{codecdir} \ + --with-w32-path=%{codecdir} make %{?_smp_mflags} @@ -301,6 +307,8 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xdirectfb.so %endif %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbshm.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbxv.so %files devel @@ -316,6 +324,12 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Aug 14 2007 Ville Skyttä - 1.1.7-2 +- Include XCB output plugins (in -extras at least for now). +- Protect "open" with glibc 2.6.90 and -D_FORTIFY_SOURCE=2. +- Clean up %%configure options. +- License: GPLv2+ + * Thu Jun 7 2007 Ville Skyttä - 1.1.7-1 - 1.1.7. From 2b05f7403e9988366e6baf83b27a1648b8703582 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Thu, 16 Aug 2007 13:53:44 +0000 Subject: [PATCH 020/150] Add Pulseaudio TODO item. --- xine-lib.spec | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 0474184..fe240a0 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,8 +1,9 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog - -# TODO: drop the opengl video out plugin? -# http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html +# - drop the opengl video out plugin? +# http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html +# - move pulseaudio to main package from -extras? +# http://fedoraproject.org/wiki/Releases/FeaturePulseaudio %define codecdir %{_libdir}/codecs %ifarch %{ix86} From 63f2faf8f27ad3a638cb3f730a010c179b76eac4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Tue, 21 Aug 2007 10:19:07 +0000 Subject: [PATCH 021/150] No PA move yet --- xine-lib.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xine-lib.spec b/xine-lib.spec index fe240a0..ad54150 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -4,6 +4,8 @@ # http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html # - move pulseaudio to main package from -extras? # http://fedoraproject.org/wiki/Releases/FeaturePulseaudio +# --> not yet: +# http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html %define codecdir %{_libdir}/codecs %ifarch %{ix86} From 9a9a9d19dcbeffb89b346a4ade6973dd413c7c44 Mon Sep 17 00:00:00 2001 From: Aurelien Bompard Date: Sat, 25 Aug 2007 21:23:05 +0000 Subject: [PATCH 022/150] * Sat Aug 25 2007 Aurelien Bompard 1.1.7-3 - Split the aRts plugin into its own subpackage --- xine-lib.spec | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index ad54150..c0fe9b5 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -17,7 +17,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.7 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -68,10 +68,16 @@ Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: pkgconfig zlib-devel +%package arts +Summary: aRts plugin for xine-lib +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} + %package extras Summary: Additional plugins for xine-lib Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} +Requires: %{name}-arts = %{version}-%{release} %description @@ -88,9 +94,11 @@ of the most uncommon formats, too. Non-default rpmbuild options: %description devel This package contains development files for xine-lib. +%description arts +This package contains the aRts extra plugin for xine-lib. + %description extras This package contains extra plugins for xine-lib: - - aRts - EsounD - JACK - Pulseaudio @@ -291,9 +299,12 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so -%files extras +%files arts %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_arts.so + +%files extras +%defattr(-,root,root,-) %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_pulseaudio.so @@ -327,6 +338,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Aug 25 2007 Aurelien Bompard 1.1.7-3 +- Split the aRts plugin into its own subpackage + * Tue Aug 14 2007 Ville Skyttä - 1.1.7-2 - Include XCB output plugins (in -extras at least for now). - Protect "open" with glibc 2.6.90 and -D_FORTIFY_SOURCE=2. From 24a2b8df9f6459375e4ac30c645fdb40a51c1104 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 1 Sep 2007 09:19:38 +0000 Subject: [PATCH 023/150] =?UTF-8?q?*=20Thu=20Aug=2030=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.8-1=20-=201.1?= =?UTF-8?q?.8,=20"open"=20patch=20applied=20upstream.=20-=20Build=20XCB=20?= =?UTF-8?q?plugins=20by=20default=20for=20Fedora=208+=20only.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.7-open.patch | 101 -------------------------------------- xine-lib.spec | 26 +++++++--- 4 files changed, 24 insertions(+), 111 deletions(-) delete mode 100644 xine-lib-1.1.7-open.patch diff --git a/.cvsignore b/.cvsignore index e98b803..0426b0d 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.7-pruned.tar.bz2 -xine-lib-1.1.7-autotools.patch.bz2 +xine-lib-1.1.8-pruned.tar.bz2 +xine-lib-1.1.8-autotools.patch.bz2 diff --git a/sources b/sources index 4131b00..00ae4ec 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -8f0714de28dab403288bbccf1a8c30c2 xine-lib-1.1.7-pruned.tar.bz2 -6b7f1d168b8b367a8c7709db687c60f6 xine-lib-1.1.7-autotools.patch.bz2 +6cbfae9d31fc138c7cb3c3d178e1286d xine-lib-1.1.8-pruned.tar.bz2 +b4a7c7a9af428b26667402d6dc180107 xine-lib-1.1.8-autotools.patch.bz2 diff --git a/xine-lib-1.1.7-open.patch b/xine-lib-1.1.7-open.patch deleted file mode 100644 index e3d7a6a..0000000 --- a/xine-lib-1.1.7-open.patch +++ /dev/null @@ -1,101 +0,0 @@ ---- xine-lib-1.1.7/src/libxinevdec/image.c~ 2007-04-15 20:42:16.000000000 +0300 -+++ xine-lib-1.1.7/src/libxinevdec/image.c 2007-08-14 00:40:05.000000000 +0300 -@@ -81,7 +81,7 @@ static void image_decode_data (video_dec - - if (!this->video_open) { - lprintf("opening video\n"); -- this->stream->video_out->open(this->stream->video_out, this->stream); -+ (this->stream->video_out->open)(this->stream->video_out, this->stream); - this->video_open = 1; - } - ---- xine-lib-1.1.7/src/libxinevdec/gdkpixbuf.c~ 2007-04-15 20:42:16.000000000 +0300 -+++ xine-lib-1.1.7/src/libxinevdec/gdkpixbuf.c 2007-08-14 00:45:36.000000000 +0300 -@@ -74,7 +74,7 @@ static void image_decode_data (video_dec - - if (!this->video_open) { - lprintf("opening video\n"); -- this->stream->video_out->open(this->stream->video_out, this->stream); -+ (this->stream->video_out->open)(this->stream->video_out, this->stream); - this->video_open = 1; - } - ---- xine-lib-1.1.7/src/libxineadec/xine_lpcm_decoder.c~ 2007-04-17 04:00:50.000000000 +0300 -+++ xine-lib-1.1.7/src/libxineadec/xine_lpcm_decoder.c 2007-08-14 00:50:49.000000000 +0300 -@@ -134,12 +134,12 @@ static void lpcm_decode_data (audio_deco - - /* force 24-bit samples into 16 bits for now */ - if (this->bits_per_sample == 24) -- this->output_open = this->stream->audio_out->open (this->stream->audio_out, this->stream, -+ this->output_open = (this->stream->audio_out->open) (this->stream->audio_out, this->stream, - 16, - this->rate, - this->ao_cap_mode) ; - else -- this->output_open = this->stream->audio_out->open (this->stream->audio_out, this->stream, -+ this->output_open = (this->stream->audio_out->open) (this->stream->audio_out, this->stream, - this->bits_per_sample, - this->rate, - this->ao_cap_mode) ; ---- xine-lib-1.1.7/src/xine-engine/audio_out.c~ 2007-06-05 00:37:38.000000000 +0300 -+++ xine-lib-1.1.7/src/xine-engine/audio_out.c 2007-08-14 00:34:30.000000000 +0300 -@@ -1401,7 +1401,7 @@ static int ao_change_settings(aos_t *thi - _("stereo not supported by driver, converting to mono.\n")); - } - -- output_sample_rate=this->driver->open(this->driver,bits,(this->force_rate ? this->force_rate : rate),mode); -+ output_sample_rate=(this->driver->open)(this->driver,bits,(this->force_rate ? this->force_rate : rate),mode); - } else - output_sample_rate = this->input.rate; - ---- xine-lib-1.1.7/src/xine-engine/xine.c~ 2007-05-06 17:20:54.000000000 +0300 -+++ xine-lib-1.1.7/src/xine-engine/xine.c 2007-08-14 00:26:30.000000000 +0300 -@@ -462,7 +462,7 @@ static int stream_rewire_audio(xine_post - - if (stream->audio_out->status(stream->audio_out, stream, &bits, &rate, &mode)) { - /* register our stream at the new output port */ -- new_port->open(new_port, stream, bits, rate, mode); -+ (new_port->open)(new_port, stream, bits, rate, mode); - stream->audio_out->close(stream->audio_out, stream); - } - stream->audio_out = new_port; -@@ -486,7 +486,7 @@ static int stream_rewire_video(xine_post - - if (stream->video_out->status(stream->video_out, stream, &width, &height, &img_duration)) { - /* register our stream at the new output port */ -- new_port->open(new_port, stream); -+ (new_port->open)(new_port, stream); - stream->video_out->close(stream->video_out, stream); - } - stream->video_out = new_port; -@@ -773,7 +773,7 @@ static int open_internal (xine_stream_t - _x_meta_info_set_utf8(stream, XINE_META_INFO_INPUT_PLUGIN, - (stream->input_plugin->input_class->get_identifier (stream->input_plugin->input_class))); - -- res = stream->input_plugin->open(stream->input_plugin); -+ res = (stream->input_plugin->open)(stream->input_plugin); - switch(res) { - case 1: /* Open successfull */ - free(input_source); ---- xine-lib-1.1.7/src/libreal/xine_real_audio_decoder.c~ 2007-04-17 04:00:50.000000000 +0300 -+++ xine-lib-1.1.7/src/libreal/xine_real_audio_decoder.c 2007-08-14 01:00:32.000000000 +0300 -@@ -339,7 +339,7 @@ static int init_codec (realdec_decoder_t - return 0; - } - -- this->stream->audio_out->open(this->stream->audio_out, -+ (this->stream->audio_out->open)(this->stream->audio_out, - this->stream, - bits_per_sample, - samples_per_sec, ---- xine-lib-1.1.7/src/libreal/xine_real_video_decoder.c~ 2007-04-17 04:00:50.000000000 +0300 -+++ xine-lib-1.1.7/src/libreal/xine_real_video_decoder.c 2007-08-14 00:54:52.000000000 +0300 -@@ -268,7 +268,7 @@ static int init_codec (realdec_decoder_t - this->rvyuv_custom_message (&cmsg_data, this->context); - } - -- this->stream->video_out->open(this->stream->video_out, this->stream); -+ (this->stream->video_out->open)(this->stream->video_out, this->stream); - - this->frame_size = this->width * this->height; - this->frame_buffer = xine_xmalloc (this->width * this->height * 3 / 2); diff --git a/xine-lib.spec b/xine-lib.spec index c0fe9b5..935e1d4 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -13,11 +13,16 @@ %else %define have_vidix 0 %endif +%if 0%{?fedora} >= 8 +%define with_xcb 1 +%else +%define with_xcb 0 +%endif Summary: Xine library Name: xine-lib -Version: 1.1.7 -Release: 3%{?dist} +Version: 1.1.8 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -30,13 +35,15 @@ Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch -Patch2: %{name}-1.1.7-open.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.5-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel -BuildRequires: libGLU-devel libxcb-devel +BuildRequires: libGLU-devel +%if %{with_xcb} +BuildRequires: libxcb-devel +%endif # Video BuildRequires: SDL-devel libtheora-devel libmng-devel BuildRequires: aalib-devel >= 1.4 @@ -114,7 +121,9 @@ This package contains extra plugins for xine-lib: %if 0%{!?_without_directfb:1} - DirectFB output %endif - +%if %{with_xcb} + - XCB output +%endif %prep @@ -124,7 +133,6 @@ touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 -%patch2 -p1 -b .open # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel @@ -321,8 +329,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xdirectfb.so %endif %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so +%if %{with_xcb} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbshm.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbxv.so +%endif %files devel @@ -338,6 +348,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Aug 30 2007 Ville Skyttä - 1.1.8-1 +- 1.1.8, "open" patch applied upstream. +- Build XCB plugins by default for Fedora 8+ only. + * Sat Aug 25 2007 Aurelien Bompard 1.1.7-3 - Split the aRts plugin into its own subpackage From 7741b9a2a7d8377952a15b3ecd7ad46cae64859e Mon Sep 17 00:00:00 2001 From: Aurelien Bompard Date: Sun, 9 Sep 2007 14:50:02 +0000 Subject: [PATCH 024/150] * Sun Sep 09 2007 Aurelien Bompard 1.1.8-2 - remove the dependency from -extras to -arts, and use Obsoletes to provide an upgrade path --- xine-lib.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 935e1d4..c9a2d89 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -22,7 +22,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.8 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -79,12 +79,13 @@ Requires: pkgconfig zlib-devel Summary: aRts plugin for xine-lib Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} +# -arts was split off the -extras subpackage at 1.1.7-3 +Obsoletes: xine-lib-extras < 1.1.7-3 %package extras Summary: Additional plugins for xine-lib Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} -Requires: %{name}-arts = %{version}-%{release} %description @@ -348,6 +349,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Sep 09 2007 Aurelien Bompard 1.1.8-2 +- remove the dependency from -extras to -arts, and use Obsoletes to + provide an upgrade path + * Thu Aug 30 2007 Ville Skyttä - 1.1.8-1 - 1.1.8, "open" patch applied upstream. - Build XCB plugins by default for Fedora 8+ only. From 1e7ec3f6bf770b5d44da037b7f17b4ec3c7102e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 19 Sep 2007 19:04:27 +0000 Subject: [PATCH 025/150] =?UTF-8?q?*=20Sat=20Sep=2015=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.8-3=20-=20Mov?= =?UTF-8?q?e=20XCB=20plugins=20to=20the=20main=20package.=20-=20Make=20aal?= =?UTF-8?q?ib,=20caca,=20pulseaudio,=20jack,=20and=20wavpack=20support=20o?= =?UTF-8?q?ptional=20at=20build=20=20=20time=20in=20preparation=20for=20th?= =?UTF-8?q?e=20first=20EPEL=20build.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 106 +++++++++++++++++++++++++++++++++++--------------- 1 file changed, 74 insertions(+), 32 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index c9a2d89..d953df1 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -9,20 +9,33 @@ %define codecdir %{_libdir}/codecs %ifarch %{ix86} -%define have_vidix 1 + %define have_vidix 1 %else -%define have_vidix 0 + %define have_vidix 0 %endif %if 0%{?fedora} >= 8 -%define with_xcb 1 + %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else -%define with_xcb 0 + %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} +%endif +%if 0%{?fedora} + %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} + %define with_caca %{?_without_caca:0}%{!?_without_caca:1} + %define with_jack %{?_without_jack:0}%{!?_without_jack:1} + %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} + %define with_wpack %{?_without_wavpack:0}%{!?_without_wavpack:1} +%else + %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} + %define with_caca %{?_with_caca:1}%{!?_with_caca:0} + %define with_jack %{?_with_jack:1}%{!?_with_jack:0} + %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} + %define with_wpack %{?_with_wavpack:1}%{!?_with_wavpack:0} %endif Summary: Xine library Name: xine-lib Version: 1.1.8 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -43,25 +56,37 @@ BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel BuildRequires: libGLU-devel %if %{with_xcb} BuildRequires: libxcb-devel -%endif +%endif # xcb # Video BuildRequires: SDL-devel libtheora-devel libmng-devel +%if %{with_aalib} BuildRequires: aalib-devel >= 1.4 +%endif # aalib +%if %{with_caca} BuildRequires: libcaca-devel >= 0.99 +%endif # caca %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel -%endif +%endif # directfb %if 0%{!?_without_imagemagick:1} BuildRequires: ImageMagick-devel >= 6.2.4.6-1 -%endif +%endif # imagemagick %if 0%{?_with_freetype:1} BuildRequires: fontconfig-devel -%endif +%endif # freetype # Audio BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 -BuildRequires: jack-audio-connection-kit-devel wavpack-devel libmpcdec-devel +BuildRequires: libmpcdec-devel +%if %{with_wpack} +BuildRequires: wavpack-devel +%endif # wpack +%if %{with_pa} BuildRequires: pulseaudio-lib-devel +%endif # pa +%if %{with_jack} +BuildRequires: jack-audio-connection-kit-devel +%endif # jack # CDs BuildRequires: libcdio-devel # Other @@ -93,11 +118,10 @@ This package contains the Xine library. Xine is a free multimedia player. It can play back various media. It also decodes multimedia files from local disk drives, and displays multimedia streamed over the Internet. It interprets many of the most common multimedia formats available - and some -of the most uncommon formats, too. Non-default rpmbuild options: ---without imagemagick: Disable ImageMagick support ---without directfb: Disable DirectFB support ---with freetype: Enable FreeType/Fontconfig support ---with antialiasing: Enable font antialiasing (with FreeType/FontConfig) +of the most uncommon formats, too. --with/--without rpmbuild options +(some default values depend on target distribution): aalib, caca, directfb, +imagemagick, freetype, antialiasing (with freetype), jack, pulseaudio, +wavpack, xcb. %description devel This package contains development files for xine-lib. @@ -108,23 +132,28 @@ This package contains the aRts extra plugin for xine-lib. %description extras This package contains extra plugins for xine-lib: - EsounD +%if %{with_jack} - JACK +%endif # jack +%if %{with_pa} - Pulseaudio +%endif # pa - GDK-Pixbuf - GNOME VFS - SMB - SDL +%if %{with_aalib} - AA-lib +%endif # aalib +%if %{with_caca} - Libcaca +%endif # caca %if 0%{!?_without_imagemagick:1} - Image decoding -%endif +%endif # imagemagick %if 0%{!?_without_directfb:1} - DirectFB output -%endif -%if %{with_xcb} - - XCB output -%endif +%endif # directfb %prep @@ -174,7 +203,9 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --without-imagemagick \ %endif # imagemagick --with-arts \ +%if %{with_wpack} --with-wavpack \ +%endif --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} @@ -241,7 +272,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/vidix/savage_vid.so %{_libdir}/xine/plugins/%{version}/vidix/sis_vid.so %{_libdir}/xine/plugins/%{version}/vidix/unichrome_vid.so -%endif +%endif # vidix %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_alsa.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_file.so %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_none.so @@ -252,7 +283,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so -%endif +%endif # ix86 %{_libdir}/xine/plugins/%{version}/xineplug_decode_real.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_speex.so @@ -262,7 +293,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_decode_vorbis.so %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/xineplug_decode_w32dll.so -%endif +%endif # ix86 %{_libdir}/xine/plugins/%{version}/xineplug_decode_yuv.so %{_libdir}/xine/plugins/%{version}/xineplug_dmx_audio.so %{_libdir}/xine/plugins/%{version}/xineplug_dmx_avi.so @@ -300,14 +331,17 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_syncfb.so %if %{have_vidix} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so -%endif +%endif # vidix +%if %{with_xcb} +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbshm.so +%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbxv.so +%endif # xcb %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xv.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xxmc.so %{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so - %files arts %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_arts.so @@ -315,26 +349,29 @@ rm -rf $RPM_BUILD_ROOT %files extras %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so +%if %{with_jack} %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so +%endif # jack +%if %{with_pa} %{_libdir}/xine/plugins/%{version}/xineplug_ao_out_pulseaudio.so +%endif # pa %{_libdir}/xine/plugins/%{version}/xineplug_decode_gdk_pixbuf.so %if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{version}/xineplug_decode_image.so -%endif +%endif # imagemagick %{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so +%if %{with_aalib} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so +%endif # aalib +%if %{with_caca} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so +%endif # caca %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xdirectfb.so -%endif +%endif # directfb %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so -%if %{with_xcb} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbshm.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbxv.so -%endif - %files devel %defattr(-,root,root,-) @@ -349,6 +386,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Sep 15 2007 Ville Skyttä - 1.1.8-3 +- Move XCB plugins to the main package. +- Make aalib, caca, pulseaudio, jack, and wavpack support optional at build + time in preparation for the first EPEL build. + * Sun Sep 09 2007 Aurelien Bompard 1.1.8-2 - remove the dependency from -extras to -arts, and use Obsoletes to provide an upgrade path From 3c63a080040549bca1239ae6ec7017cd125324cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 19 Sep 2007 19:32:59 +0000 Subject: [PATCH 026/150] =?UTF-8?q?*=20Wed=20Sep=2019=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.8-4=20-=20Fix?= =?UTF-8?q?=20"--without=20wavpack"=20build.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index d953df1..69784e8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -35,7 +35,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.8 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -340,7 +340,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xv.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xxmc.so +%if %{with_wpack} %{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so +%endif # wpack %files arts %defattr(-,root,root,-) @@ -386,6 +388,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Sep 19 2007 Ville Skyttä - 1.1.8-4 +- Fix "--without wavpack" build. + * Sat Sep 15 2007 Ville Skyttä - 1.1.8-3 - Move XCB plugins to the main package. - Make aalib, caca, pulseaudio, jack, and wavpack support optional at build From 6ee255e778ea9cf5a1cc1c7c656aa939caa5899d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Mon, 24 Sep 2007 19:29:46 +0000 Subject: [PATCH 027/150] =?UTF-8?q?*=20Sun=20Sep=2023=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.8-5=20-=20Ena?= =?UTF-8?q?ble=20JACK=20support=20by=20default=20for=20all=20distros.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 69784e8..052f450 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -18,16 +18,15 @@ %else %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif + %define with_jack %{?_without_jack:0}%{!?_without_jack:1} %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} %define with_caca %{?_without_caca:0}%{!?_without_caca:1} - %define with_jack %{?_without_jack:0}%{!?_without_jack:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} %define with_wpack %{?_without_wavpack:0}%{!?_without_wavpack:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} %define with_caca %{?_with_caca:1}%{!?_with_caca:0} - %define with_jack %{?_with_jack:1}%{!?_with_jack:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} %define with_wpack %{?_with_wavpack:1}%{!?_with_wavpack:0} %endif @@ -35,7 +34,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.8 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -388,6 +387,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Sep 23 2007 Ville Skyttä - 1.1.8-5 +- Enable JACK support by default for all distros. + * Wed Sep 19 2007 Ville Skyttä - 1.1.8-4 - Fix "--without wavpack" build. From a90db5af5acda5cf05a856843a57a31bbf93bc28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Thu, 27 Sep 2007 20:24:11 +0000 Subject: [PATCH 028/150] =?UTF-8?q?*=20Thu=20Sep=2027=202007=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.8-6=20-=20Ena?= =?UTF-8?q?ble=20wavpack=20support=20by=20default=20for=20all=20distros.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 052f450..41896b8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -19,22 +19,21 @@ %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif %define with_jack %{?_without_jack:0}%{!?_without_jack:1} + %define with_wpack %{?_without_wavpack:0}%{!?_without_wavpack:1} %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} %define with_caca %{?_without_caca:0}%{!?_without_caca:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} - %define with_wpack %{?_without_wavpack:0}%{!?_without_wavpack:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} %define with_caca %{?_with_caca:1}%{!?_with_caca:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} - %define with_wpack %{?_with_wavpack:1}%{!?_with_wavpack:0} %endif Summary: Xine library Name: xine-lib Version: 1.1.8 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -387,6 +386,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Sep 27 2007 Ville Skyttä - 1.1.8-6 +- Enable wavpack support by default for all distros. + * Sun Sep 23 2007 Ville Skyttä - 1.1.8-5 - Enable JACK support by default for all distros. From 7c6c8a918be72278cedfd4e9ef6caadb3a6c7fc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 6 Jan 2008 21:51:14 +0000 Subject: [PATCH 029/150] =?UTF-8?q?*=20Sun=20Jan=20=206=202008=20Ville=20S?= =?UTF-8?q?kytt=C3=A4=20=20-=201.1.9-1=20-=201?= =?UTF-8?q?.1.9.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib-cleanup-sources.sh | 2 +- xine-lib.spec | 15 +++++++++------ 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/.cvsignore b/.cvsignore index 0426b0d..b094455 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.8-pruned.tar.bz2 -xine-lib-1.1.8-autotools.patch.bz2 +xine-lib-1.1.9-pruned.tar.bz2 +xine-lib-1.1.9-autotools.patch.bz2 diff --git a/sources b/sources index 00ae4ec..f1a3f24 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -6cbfae9d31fc138c7cb3c3d178e1286d xine-lib-1.1.8-pruned.tar.bz2 -b4a7c7a9af428b26667402d6dc180107 xine-lib-1.1.8-autotools.patch.bz2 +34315b3d150dee3929abd35682e65f53 xine-lib-1.1.9-pruned.tar.bz2 +29c46faf035a32c3a454dc5541b8fa3e xine-lib-1.1.9-autotools.patch.bz2 diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 0a240f2..dddb8d6 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -66,7 +66,7 @@ sed -i -e '/^xineplug_decode_nsf_la/,/^\s*$/d' \ -e /xineplug_decode_nsf/d \ -e 's/ nosefart//' \ src/libxineadec/Makefile.am -sed -i -e /nosefart/d configure.ac +sed -i -e '/nosefart\/Makefile/d' configure.ac # All clean ! diff --git a/xine-lib.spec b/xine-lib.spec index 41896b8..6204baf 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -12,12 +12,12 @@ %define have_vidix 1 %else %define have_vidix 0 -%endif +%endif # ix86 %if 0%{?fedora} >= 8 %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} -%endif +%endif # >= F8 %define with_jack %{?_without_jack:0}%{!?_without_jack:1} %define with_wpack %{?_without_wavpack:0}%{!?_without_wavpack:1} %if 0%{?fedora} @@ -28,18 +28,18 @@ %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} %define with_caca %{?_with_caca:1}%{!?_with_caca:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} -%endif +%endif # Fedora Summary: Xine library Name: xine-lib -Version: 1.1.8 -Release: 6%{?dist} +Version: 1.1.9 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code -#Source0: http://dl.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 +#Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 Source0: %{name}-%{version}-pruned.tar.bz2 Source1: %{name}-cleanup-sources.sh Source2: %{name}-mk-autotools-patch.sh @@ -386,6 +386,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jan 6 2008 Ville Skyttä - 1.1.9-1 +- 1.1.9. + * Thu Sep 27 2007 Ville Skyttä - 1.1.8-6 - Enable wavpack support by default for all distros. From a1849e2fcf6878989d0f581e23e1051aad8dd375 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 12 Jan 2008 11:21:23 +0000 Subject: [PATCH 030/150] =?UTF-8?q?*=20Sat=20Jan=2012=202008=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.9.1-1=20-=201?= =?UTF-8?q?.1.9.1=20(security=20update).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib.spec | 5 ++++- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.cvsignore b/.cvsignore index b094455..56b7d0f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.9-pruned.tar.bz2 -xine-lib-1.1.9-autotools.patch.bz2 +xine-lib-1.1.9.1-pruned.tar.bz2 +xine-lib-1.1.9.1-autotools.patch.bz2 diff --git a/sources b/sources index f1a3f24..8967d77 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -34315b3d150dee3929abd35682e65f53 xine-lib-1.1.9-pruned.tar.bz2 -29c46faf035a32c3a454dc5541b8fa3e xine-lib-1.1.9-autotools.patch.bz2 +012fbd83dec565a06697426620baf21e xine-lib-1.1.9.1-pruned.tar.bz2 +fae182d050b231fff79eddf335b9a618 xine-lib-1.1.9.1-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index 6204baf..100a7b0 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -32,7 +32,7 @@ Summary: Xine library Name: xine-lib -Version: 1.1.9 +Version: 1.1.9.1 Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries @@ -386,6 +386,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Jan 12 2008 Ville Skyttä - 1.1.9.1-1 +- 1.1.9.1 (security update). + * Sun Jan 6 2008 Ville Skyttä - 1.1.9-1 - 1.1.9. From 55201a3d7bd4ff3212e18af4a3da7f23162aec03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 23 Jan 2008 17:04:56 +0000 Subject: [PATCH 031/150] Sync with F-8. --- xine-lib-1.1.9.1-aoclose-429182.patch | 19 +++++++++++++++++++ xine-lib.spec | 13 ++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 xine-lib-1.1.9.1-aoclose-429182.patch diff --git a/xine-lib-1.1.9.1-aoclose-429182.patch b/xine-lib-1.1.9.1-aoclose-429182.patch new file mode 100644 index 0000000..e90c6be --- /dev/null +++ b/xine-lib-1.1.9.1-aoclose-429182.patch @@ -0,0 +1,19 @@ +http://thread.gmane.org/gmane.comp.video.xine.devel/17682 + +diff -up xine-lib-1.1.9.1/src/xine-engine/audio_out.c~ xine-lib-1.1.9.1/src/xine-engine/audio_out.c +--- xine-lib-1.1.9.1/src/xine-engine/audio_out.c~ 2008-01-01 15:30:09.000000000 +0200 ++++ xine-lib-1.1.9.1/src/xine-engine/audio_out.c 2008-01-20 11:46:40.000000000 +0200 +@@ -1612,11 +1612,13 @@ static void ao_close(xine_audio_port_t * + xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_out: no streams left, closing driver\n"); + + if (this->audio_loop_running) { ++#if 0 + if (this->clock->speed == XINE_SPEED_PAUSE || + (this->clock->speed != XINE_FINE_SPEED_NORMAL && !this->slow_fast_audio)) { + /* discard buffers, otherwise we'll wait forever */ + ao_set_property(this_gen, AO_PROP_DISCARD_BUFFERS, 1); + } ++#endif + /* make sure there are no more buffers on queue */ + fifo_wait_empty(this->out_fifo); + } diff --git a/xine-lib.spec b/xine-lib.spec index 100a7b0..6ff5bb1 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.9.1 -Release: 1%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -46,6 +46,7 @@ Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch +Patch2: %{name}-1.1.9.1-aoclose-429182.patch Patch6: %{name}-1.1.1-deepbind-939.patch Patch7: %{name}-1.1.5-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -161,6 +162,7 @@ touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 +%patch2 -p1 -b .aoclose # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind %patch7 -p0 -b .multilib-devel @@ -168,6 +170,9 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure +# Quick and dirty fix for #429487, check if still needed in > 1.1.9.1: +sed -i -e 's/^\(Version:\s*\).*/\1%{version}/i' misc/libxine.pc.in + %build export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " @@ -386,6 +391,12 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jan 21 2008 Ville Skyttä - 1.1.9.1-3 +- Fix version number in libxine.pc (#429487). + +* Sun Jan 20 2008 Ville Skyttä - 1.1.9.1-2 +- Disable upstream "discard buffers on ao close" 1.1.9 changeset (#429182). + * Sat Jan 12 2008 Ville Skyttä - 1.1.9.1-1 - 1.1.9.1 (security update). From 05855294e3fca91f54ffcd426d261aef7699830b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 26 Jan 2008 23:27:32 +0000 Subject: [PATCH 032/150] Sync with F-8 --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib.spec | 14 +++++--------- 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/.cvsignore b/.cvsignore index 56b7d0f..e2128b7 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.9.1-pruned.tar.bz2 -xine-lib-1.1.9.1-autotools.patch.bz2 +xine-lib-1.1.10-pruned.tar.bz2 +xine-lib-1.1.10-autotools.patch.bz2 diff --git a/sources b/sources index 8967d77..29adf6a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -012fbd83dec565a06697426620baf21e xine-lib-1.1.9.1-pruned.tar.bz2 -fae182d050b231fff79eddf335b9a618 xine-lib-1.1.9.1-autotools.patch.bz2 +38b23253ba2fff335bb41cf8d7e87afe xine-lib-1.1.10-pruned.tar.bz2 +823ca0360094a627857a303e069f5439 xine-lib-1.1.10-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index 6ff5bb1..21601d6 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -32,8 +32,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.9.1 -Release: 3%{?dist} +Version: 1.1.10 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -46,9 +46,7 @@ Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch -Patch2: %{name}-1.1.9.1-aoclose-429182.patch Patch6: %{name}-1.1.1-deepbind-939.patch -Patch7: %{name}-1.1.5-multilib-devel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel @@ -162,17 +160,12 @@ touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 -%patch2 -p1 -b .aoclose # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind -%patch7 -p0 -b .multilib-devel # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure -# Quick and dirty fix for #429487, check if still needed in > 1.1.9.1: -sed -i -e 's/^\(Version:\s*\).*/\1%{version}/i' misc/libxine.pc.in - %build export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " @@ -391,6 +384,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jan 27 2008 Ville Skyttä - 1.1.10-1 +- 1.1.10 (security update). + * Mon Jan 21 2008 Ville Skyttä - 1.1.9.1-3 - Fix version number in libxine.pc (#429487). From fd15e85a16c6bc3d27b04b6c3fcbdb2bf50dd1dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 26 Jan 2008 23:31:13 +0000 Subject: [PATCH 033/150] =?UTF-8?q?*=20Sun=20Jan=2027=202008=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.10-2=20-=20In?= =?UTF-8?q?clude=20spu,=20spucc,=20and=20spucmml=20decoders=20(#213597).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib-cleanup-sources.sh | 4 ++-- xine-lib.spec | 14 +++++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index dddb8d6..5710edf 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -22,14 +22,14 @@ tar -xjf $tarball cd $dir # Main libraries -for remove in libfaad libffmpeg libmad libmpeg2 dxr3 libspudec libspucmml libspucc liba52 libdts; do +for remove in libfaad libffmpeg libmad libmpeg2 dxr3 liba52 libdts; do echo "removing src/$remove..." rm -rf src/$remove sed -i -e "/$remove/d" src/Makefile.am sed -i -e "/^src\/$remove/d" configure.ac done # Input plugin libraries -for remove in libdvdnav vcd; do +for remove in vcd; do echo "removing src/input/$remove..." rm -rf src/input/$remove sed -i -e "s/SUBDIRS = \(.*\)${remove}\(.*\)/SUBDIRS = \1\2/g" src/input/Makefile.am diff --git a/xine-lib.spec b/xine-lib.spec index 21601d6..6992539 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -6,6 +6,7 @@ # http://fedoraproject.org/wiki/Releases/FeaturePulseaudio # --> not yet: # http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html +# - external dvdnav - not compatible as of 1.1.9.1 and 4.1.1 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -33,7 +34,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.10 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -87,9 +88,7 @@ BuildRequires: jack-audio-connection-kit-devel # CDs BuildRequires: libcdio-devel # Other -BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel -# samba-common in <= FC-6, libsmbclient-devel in FC7+ -BuildRequires: %{_includedir}/libsmbclient.h +BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel libsmbclient-devel %package devel Summary: Xine library development files @@ -180,7 +179,6 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %endif # directfb --disable-a52dec \ --disable-mad \ - --disable-dvdnavtest --with-external-dvdnav \ --disable-vcd \ --disable-asf \ --disable-faad \ @@ -283,6 +281,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{version}/xineplug_decode_real.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_speex.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_spu.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_spucc.so +%{_libdir}/xine/plugins/%{version}/xineplug_decode_spucmml.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so %{_libdir}/xine/plugins/%{version}/xineplug_decode_theora.so @@ -384,6 +385,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jan 27 2008 Ville Skyttä - 1.1.10-2 +- Include spu, spucc, and spucmml decoders (#213597). + * Sun Jan 27 2008 Ville Skyttä - 1.1.10-1 - 1.1.10 (security update). From ba4214cf253f1296c8166c08fb0381a7cc3b22e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 27 Jan 2008 00:30:25 +0000 Subject: [PATCH 034/150] Upload correct sources. --- sources | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 29adf6a..ef97526 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -38b23253ba2fff335bb41cf8d7e87afe xine-lib-1.1.10-pruned.tar.bz2 -823ca0360094a627857a303e069f5439 xine-lib-1.1.10-autotools.patch.bz2 +4989b50fd279ed69b03816233cefa657 xine-lib-1.1.10-pruned.tar.bz2 +8bc0516867b8032729a298b0dfe77527 xine-lib-1.1.10-autotools.patch.bz2 From 05ea833ad6bac4dae632fed17aab0df5a2e9b13b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 8 Feb 2008 19:46:29 +0000 Subject: [PATCH 035/150] =?UTF-8?q?*=20Fri=20Feb=20=208=202008=20Ville=20S?= =?UTF-8?q?kytt=C3=A4=20=20-=201.1.10.1-1=20-?= =?UTF-8?q?=201.1.10.1=20(security=20update,=20#431541).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.5-multilib-devel.patch | 40 ----- xine-lib-1.1.9.1-aoclose-429182.patch | 19 --- xine-lib.spec | 201 +++++++++++++------------- 5 files changed, 106 insertions(+), 162 deletions(-) delete mode 100644 xine-lib-1.1.5-multilib-devel.patch delete mode 100644 xine-lib-1.1.9.1-aoclose-429182.patch diff --git a/.cvsignore b/.cvsignore index e2128b7..bb4470f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.10-pruned.tar.bz2 -xine-lib-1.1.10-autotools.patch.bz2 +xine-lib-1.1.10.1-pruned.tar.bz2 +xine-lib-1.1.10.1-autotools.patch.bz2 diff --git a/sources b/sources index ef97526..028f7ca 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -4989b50fd279ed69b03816233cefa657 xine-lib-1.1.10-pruned.tar.bz2 -8bc0516867b8032729a298b0dfe77527 xine-lib-1.1.10-autotools.patch.bz2 +3e78ed0690314436b0a74d1d11535fea xine-lib-1.1.10.1-pruned.tar.bz2 +b7e702d0bd235e7102efaa11caea2895 xine-lib-1.1.10.1-autotools.patch.bz2 diff --git a/xine-lib-1.1.5-multilib-devel.patch b/xine-lib-1.1.5-multilib-devel.patch deleted file mode 100644 index 5b5d05d..0000000 --- a/xine-lib-1.1.5-multilib-devel.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- misc/xine-config.in~ 2007-04-05 01:18:00.000000000 +0300 -+++ misc/xine-config.in 2007-04-11 01:32:44.000000000 +0300 -@@ -2,8 +2,8 @@ - # - # - --prefix=@XINE_CONFIG_PREFIX@ --exec_prefix=@exec_prefix@ -+prefix=$(pkg-config libxine --variable=prefix) -+exec_prefix=$(pkg-config libxine --variable=exec_prefix) - exec_prefix_set=no - - usage() -@@ -54,7 +54,7 @@ - echo_exec_prefix=yes - ;; - --version) -- echo @XINE_MAJOR@.@XINE_MINOR@.@XINE_SUB@ -+ pkg-config libxine --modversion - ;; - --acflags) - echo_acflags=yes -@@ -100,14 +100,14 @@ - fi - - if test "$echo_cflags" = "yes"; then -- echo -I@includedir@ @PTHREAD_CFLAGS@ -+ pkg-config libxine --cflags - fi - - if test "$echo_libs" = "yes"; then -- echo -L@libdir@ -lxine @ZLIB_LIBS@ @NET_LIBS@ @PTHREAD_LIBS@ @LIBICONV@ @RT_LIBS@ -+ pkg-config libxine --libs - fi - if test "$echo_plugindir" = "yes"; then -- echo "@XINE_PLUGINPATH@" -+ echo "$(pkg-config libxine --variable=libdir)/xine/plugins/$(pkg-config libxine --modversion)" - fi - if test "$echo_datadir" = "yes"; then - echo "@XINE_DATADIR@" diff --git a/xine-lib-1.1.9.1-aoclose-429182.patch b/xine-lib-1.1.9.1-aoclose-429182.patch deleted file mode 100644 index e90c6be..0000000 --- a/xine-lib-1.1.9.1-aoclose-429182.patch +++ /dev/null @@ -1,19 +0,0 @@ -http://thread.gmane.org/gmane.comp.video.xine.devel/17682 - -diff -up xine-lib-1.1.9.1/src/xine-engine/audio_out.c~ xine-lib-1.1.9.1/src/xine-engine/audio_out.c ---- xine-lib-1.1.9.1/src/xine-engine/audio_out.c~ 2008-01-01 15:30:09.000000000 +0200 -+++ xine-lib-1.1.9.1/src/xine-engine/audio_out.c 2008-01-20 11:46:40.000000000 +0200 -@@ -1612,11 +1612,13 @@ static void ao_close(xine_audio_port_t * - xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_out: no streams left, closing driver\n"); - - if (this->audio_loop_running) { -+#if 0 - if (this->clock->speed == XINE_SPEED_PAUSE || - (this->clock->speed != XINE_FINE_SPEED_NORMAL && !this->slow_fast_audio)) { - /* discard buffers, otherwise we'll wait forever */ - ao_set_property(this_gen, AO_PROP_DISCARD_BUFFERS, 1); - } -+#endif - /* make sure there are no more buffers on queue */ - fifo_wait_empty(this->out_fifo); - } diff --git a/xine-lib.spec b/xine-lib.spec index 6992539..eadfc22 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,8 +33,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.10 -Release: 2%{?dist} +Version: 1.1.10.1 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -241,136 +241,136 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man5/xine.5* %dir %{_libdir}/xine/ %dir %{_libdir}/xine/plugins/ -%dir %{_libdir}/xine/plugins/%{version}/ -%{_libdir}/xine/plugins/%{version}/mime.types +%dir %{_libdir}/xine/plugins/*/ +%{_libdir}/xine/plugins/*/mime.types # Listing every plugin separately for better control over binary packages # containing exactly the plugins we want, nothing accidentally snuck in # nor dropped. -%dir %{_libdir}/xine/plugins/%{version}/post/ -%{_libdir}/xine/plugins/%{version}/post/xineplug_post_audio_filters.so -%{_libdir}/xine/plugins/%{version}/post/xineplug_post_goom.so -%{_libdir}/xine/plugins/%{version}/post/xineplug_post_mosaico.so -%{_libdir}/xine/plugins/%{version}/post/xineplug_post_switch.so -%{_libdir}/xine/plugins/%{version}/post/xineplug_post_visualizations.so +%dir %{_libdir}/xine/plugins/*/post/ +%{_libdir}/xine/plugins/*/post/xineplug_post_audio_filters.so +%{_libdir}/xine/plugins/*/post/xineplug_post_goom.so +%{_libdir}/xine/plugins/*/post/xineplug_post_mosaico.so +%{_libdir}/xine/plugins/*/post/xineplug_post_switch.so +%{_libdir}/xine/plugins/*/post/xineplug_post_visualizations.so %if %{have_vidix} -%dir %{_libdir}/xine/plugins/%{version}/vidix/ -%{_libdir}/xine/plugins/%{version}/vidix/cyberblade_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/mach64_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/mga_crtc2_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/mga_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/nvidia_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/pm2_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/pm3_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/radeon_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/rage128_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/savage_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/sis_vid.so -%{_libdir}/xine/plugins/%{version}/vidix/unichrome_vid.so +%dir %{_libdir}/xine/plugins/*/vidix/ +%{_libdir}/xine/plugins/*/vidix/cyberblade_vid.so +%{_libdir}/xine/plugins/*/vidix/mach64_vid.so +%{_libdir}/xine/plugins/*/vidix/mga_crtc2_vid.so +%{_libdir}/xine/plugins/*/vidix/mga_vid.so +%{_libdir}/xine/plugins/*/vidix/nvidia_vid.so +%{_libdir}/xine/plugins/*/vidix/pm2_vid.so +%{_libdir}/xine/plugins/*/vidix/pm3_vid.so +%{_libdir}/xine/plugins/*/vidix/radeon_vid.so +%{_libdir}/xine/plugins/*/vidix/rage128_vid.so +%{_libdir}/xine/plugins/*/vidix/savage_vid.so +%{_libdir}/xine/plugins/*/vidix/sis_vid.so +%{_libdir}/xine/plugins/*/vidix/unichrome_vid.so %endif # vidix -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_alsa.so -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_file.so -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_none.so -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_oss.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_bitplane.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_gsm610.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_lpcm.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_mpc.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_alsa.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_file.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_none.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_oss.so +%{_libdir}/xine/plugins/*/xineplug_decode_bitplane.so +%{_libdir}/xine/plugins/*/xineplug_decode_gsm610.so +%{_libdir}/xine/plugins/*/xineplug_decode_lpcm.so +%{_libdir}/xine/plugins/*/xineplug_decode_mpc.so %ifarch %ix86 -%{_libdir}/xine/plugins/%{version}/xineplug_decode_qt.so +%{_libdir}/xine/plugins/*/xineplug_decode_qt.so %endif # ix86 -%{_libdir}/xine/plugins/%{version}/xineplug_decode_real.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_rgb.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_speex.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_spu.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_spucc.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_spucmml.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_spudvb.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_sputext.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_theora.so -%{_libdir}/xine/plugins/%{version}/xineplug_decode_vorbis.so +%{_libdir}/xine/plugins/*/xineplug_decode_real.so +%{_libdir}/xine/plugins/*/xineplug_decode_rgb.so +%{_libdir}/xine/plugins/*/xineplug_decode_speex.so +%{_libdir}/xine/plugins/*/xineplug_decode_spu.so +%{_libdir}/xine/plugins/*/xineplug_decode_spucc.so +%{_libdir}/xine/plugins/*/xineplug_decode_spucmml.so +%{_libdir}/xine/plugins/*/xineplug_decode_spudvb.so +%{_libdir}/xine/plugins/*/xineplug_decode_sputext.so +%{_libdir}/xine/plugins/*/xineplug_decode_theora.so +%{_libdir}/xine/plugins/*/xineplug_decode_vorbis.so %ifarch %ix86 -%{_libdir}/xine/plugins/%{version}/xineplug_decode_w32dll.so +%{_libdir}/xine/plugins/*/xineplug_decode_w32dll.so %endif # ix86 -%{_libdir}/xine/plugins/%{version}/xineplug_decode_yuv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_audio.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_avi.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_fli.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_flv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_games.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_iff.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_image.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_matroska.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_mng.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_nsv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_ogg.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_pva.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_qt.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_rawdv.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_real.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_slave.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_sputext.so -%{_libdir}/xine/plugins/%{version}/xineplug_dmx_yuv_frames.so -%{_libdir}/xine/plugins/%{version}/xineplug_flac.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_cdda.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_dvb.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_file.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_http.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_net.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_pnm.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_pvr.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_rtp.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_rtsp.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_stdin_fifo.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_v4l.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_fb.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_none.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_opengl.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_syncfb.so +%{_libdir}/xine/plugins/*/xineplug_decode_yuv.so +%{_libdir}/xine/plugins/*/xineplug_dmx_audio.so +%{_libdir}/xine/plugins/*/xineplug_dmx_avi.so +%{_libdir}/xine/plugins/*/xineplug_dmx_fli.so +%{_libdir}/xine/plugins/*/xineplug_dmx_flv.so +%{_libdir}/xine/plugins/*/xineplug_dmx_games.so +%{_libdir}/xine/plugins/*/xineplug_dmx_iff.so +%{_libdir}/xine/plugins/*/xineplug_dmx_image.so +%{_libdir}/xine/plugins/*/xineplug_dmx_matroska.so +%{_libdir}/xine/plugins/*/xineplug_dmx_mng.so +%{_libdir}/xine/plugins/*/xineplug_dmx_nsv.so +%{_libdir}/xine/plugins/*/xineplug_dmx_ogg.so +%{_libdir}/xine/plugins/*/xineplug_dmx_pva.so +%{_libdir}/xine/plugins/*/xineplug_dmx_qt.so +%{_libdir}/xine/plugins/*/xineplug_dmx_rawdv.so +%{_libdir}/xine/plugins/*/xineplug_dmx_real.so +%{_libdir}/xine/plugins/*/xineplug_dmx_slave.so +%{_libdir}/xine/plugins/*/xineplug_dmx_sputext.so +%{_libdir}/xine/plugins/*/xineplug_dmx_yuv_frames.so +%{_libdir}/xine/plugins/*/xineplug_flac.so +%{_libdir}/xine/plugins/*/xineplug_inp_cdda.so +%{_libdir}/xine/plugins/*/xineplug_inp_dvb.so +%{_libdir}/xine/plugins/*/xineplug_inp_file.so +%{_libdir}/xine/plugins/*/xineplug_inp_http.so +%{_libdir}/xine/plugins/*/xineplug_inp_net.so +%{_libdir}/xine/plugins/*/xineplug_inp_pnm.so +%{_libdir}/xine/plugins/*/xineplug_inp_pvr.so +%{_libdir}/xine/plugins/*/xineplug_inp_rtp.so +%{_libdir}/xine/plugins/*/xineplug_inp_rtsp.so +%{_libdir}/xine/plugins/*/xineplug_inp_stdin_fifo.so +%{_libdir}/xine/plugins/*/xineplug_inp_v4l.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_fb.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_none.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_opengl.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_syncfb.so %if %{have_vidix} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_vidix.so %endif # vidix %if %{with_xcb} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbshm.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xcbxv.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xcbshm.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xcbxv.so %endif # xcb -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xshm.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xv.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xvmc.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xxmc.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xshm.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xv.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xvmc.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xxmc.so %if %{with_wpack} -%{_libdir}/xine/plugins/%{version}/xineplug_wavpack.so +%{_libdir}/xine/plugins/*/xineplug_wavpack.so %endif # wpack %files arts %defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_arts.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_arts.so %files extras %defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_esd.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_esd.so %if %{with_jack} -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_jack.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_jack.so %endif # jack %if %{with_pa} -%{_libdir}/xine/plugins/%{version}/xineplug_ao_out_pulseaudio.so +%{_libdir}/xine/plugins/*/xineplug_ao_out_pulseaudio.so %endif # pa -%{_libdir}/xine/plugins/%{version}/xineplug_decode_gdk_pixbuf.so +%{_libdir}/xine/plugins/*/xineplug_decode_gdk_pixbuf.so %if 0%{!?_without_imagemagick:1} -%{_libdir}/xine/plugins/%{version}/xineplug_decode_image.so +%{_libdir}/xine/plugins/*/xineplug_decode_image.so %endif # imagemagick -%{_libdir}/xine/plugins/%{version}/xineplug_inp_gnome_vfs.so -%{_libdir}/xine/plugins/%{version}/xineplug_inp_smb.so +%{_libdir}/xine/plugins/*/xineplug_inp_gnome_vfs.so +%{_libdir}/xine/plugins/*/xineplug_inp_smb.so %if %{with_aalib} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_aa.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_aa.so %endif # aalib %if %{with_caca} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_caca.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_caca.so %endif # caca %if 0%{!?_without_directfb:1} -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xdirectfb.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_directfb.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_xdirectfb.so %endif # directfb -%{_libdir}/xine/plugins/%{version}/xineplug_vo_out_sdl.so +%{_libdir}/xine/plugins/*/xineplug_vo_out_sdl.so %files devel %defattr(-,root,root,-) @@ -385,6 +385,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Feb 8 2008 Ville Skyttä - 1.1.10.1-1 +- 1.1.10.1 (security update, #431541). + * Sun Jan 27 2008 Ville Skyttä - 1.1.10-2 - Include spu, spucc, and spucmml decoders (#213597). From 2990be646a5b8f92ec6d3efe3dd5511b78e16929 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 7 Mar 2008 14:31:37 +0000 Subject: [PATCH 036/150] * Fri Mar 7 2008 Rex Dieter - 1.1.10.1-1.1 - xcb support for f7+ (#373411) --- xine-lib.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index eadfc22..9c17a16 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -14,7 +14,7 @@ %else %define have_vidix 0 %endif # ix86 -%if 0%{?fedora} >= 8 +%if 0%{?fedora} > 6 %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} @@ -34,7 +34,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.10.1 -Release: 1%{?dist} +Release: 1%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -385,6 +385,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Mar 7 2008 Rex Dieter - 1.1.10.1-1.1 +- xcb support for f7+ (#373411) + * Fri Feb 8 2008 Ville Skyttä - 1.1.10.1-1 - 1.1.10.1 (security update, #431541). From 298d6d095f7e40cba839918c9b4ef56a4b54be2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 19 Mar 2008 19:51:59 +0000 Subject: [PATCH 037/150] =?UTF-8?q?*=20Wed=20Mar=2019=202008=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.11-1=20-=201.?= =?UTF-8?q?1.11=20(security=20update,=20#438182,=20CVE-2008-0073).=20-=20D?= =?UTF-8?q?rop=20jack=20and=20wavpack=20build=20conditionals.=20-=20Specfi?= =?UTF-8?q?le=20cleanups.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib-cleanup-sources.sh | 16 ++++-- xine-lib.spec | 105 ++++++++++++++++++------------------ 4 files changed, 70 insertions(+), 59 deletions(-) diff --git a/.cvsignore b/.cvsignore index bb4470f..b01f673 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.10.1-pruned.tar.bz2 -xine-lib-1.1.10.1-autotools.patch.bz2 +xine-lib-1.1.11-pruned.tar.bz2 +xine-lib-1.1.11-autotools.patch.bz2 diff --git a/sources b/sources index 028f7ca..9f141e7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -3e78ed0690314436b0a74d1d11535fea xine-lib-1.1.10.1-pruned.tar.bz2 -b7e702d0bd235e7102efaa11caea2895 xine-lib-1.1.10.1-autotools.patch.bz2 +40d8c51a914ed20b8499c5da9cf57bc0 xine-lib-1.1.11-pruned.tar.bz2 +bb30e6af99e5abfcb6133fbe347be7eb xine-lib-1.1.11-autotools.patch.bz2 diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 5710edf..a905a3f 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -21,6 +21,14 @@ rm -rf $dir tar -xjf $tarball cd $dir +rmpluglib() +{ + echo "removing src/$1/$2..." + rm -rf src/$1/$2 + sed -i -e "s/SUBDIRS = \(.*\)$2\(.*\)/SUBDIRS = \1\2/g" src/$1/Makefile.am + sed -i -e "/^src\/$1\/$2/d" configure.ac +} + # Main libraries for remove in libfaad libffmpeg libmad libmpeg2 dxr3 liba52 libdts; do echo "removing src/$remove..." @@ -30,10 +38,10 @@ for remove in libfaad libffmpeg libmad libmpeg2 dxr3 liba52 libdts; do done # Input plugin libraries for remove in vcd; do - echo "removing src/input/$remove..." - rm -rf src/input/$remove - sed -i -e "s/SUBDIRS = \(.*\)${remove}\(.*\)/SUBDIRS = \1\2/g" src/input/Makefile.am - sed -i -e "/^src\/input\/$remove/d" configure.ac + rmpluglib input vcd +done +for remove in ffmpeg; do + rmpluglib combined ffmpeg done # Input plugins for p in dvd vcd mms; do diff --git a/xine-lib.spec b/xine-lib.spec index 9c17a16..e65a622 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -6,35 +6,32 @@ # http://fedoraproject.org/wiki/Releases/FeaturePulseaudio # --> not yet: # http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html -# - external dvdnav - not compatible as of 1.1.9.1 and 4.1.1 +# - external dvdnav - not compatible as of 1.1.11 and 4.1.1 %define codecdir %{_libdir}/codecs + %ifarch %{ix86} %define have_vidix 1 %else %define have_vidix 0 %endif # ix86 -%if 0%{?fedora} > 6 - %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} -%else - %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} -%endif # >= F8 - %define with_jack %{?_without_jack:0}%{!?_without_jack:1} - %define with_wpack %{?_without_wavpack:0}%{!?_without_wavpack:1} + %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} %define with_caca %{?_without_caca:0}%{!?_without_caca:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} + %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} %define with_caca %{?_with_caca:1}%{!?_with_caca:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} + %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora Summary: Xine library Name: xine-lib -Version: 1.1.10.1 -Release: 1%{?dist}.1 +Version: 1.1.11 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,13 +47,18 @@ Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # X11 -BuildRequires: libX11-devel libXv-devel libXinerama-devel libXvMC-devel +BuildRequires: libX11-devel +BuildRequires: libXv-devel +BuildRequires: libXinerama-devel +BuildRequires: libXvMC-devel BuildRequires: libGLU-devel %if %{with_xcb} BuildRequires: libxcb-devel %endif # xcb # Video -BuildRequires: SDL-devel libtheora-devel libmng-devel +BuildRequires: SDL-devel +BuildRequires: libtheora-devel +BuildRequires: libmng-devel %if %{with_aalib} BuildRequires: aalib-devel >= 1.4 %endif # aalib @@ -73,41 +75,27 @@ BuildRequires: ImageMagick-devel >= 6.2.4.6-1 BuildRequires: fontconfig-devel %endif # freetype # Audio -BuildRequires: libogg-devel libvorbis-devel flac-devel libmodplug-devel -BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 +BuildRequires: libogg-devel +BuildRequires: libvorbis-devel +BuildRequires: flac-devel +BuildRequires: libmodplug-devel +BuildRequires: esound-devel +BuildRequires: speex-devel +BuildRequires: arts-devel +BuildRequires: alsa-lib-devel >= 0.9.0 BuildRequires: libmpcdec-devel -%if %{with_wpack} BuildRequires: wavpack-devel -%endif # wpack %if %{with_pa} BuildRequires: pulseaudio-lib-devel %endif # pa -%if %{with_jack} BuildRequires: jack-audio-connection-kit-devel -%endif # jack # CDs BuildRequires: libcdio-devel # Other -BuildRequires: pkgconfig gnome-vfs2-devel gtk2-devel libsmbclient-devel - -%package devel -Summary: Xine library development files -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} -Requires: pkgconfig zlib-devel - -%package arts -Summary: aRts plugin for xine-lib -Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} -# -arts was split off the -extras subpackage at 1.1.7-3 -Obsoletes: xine-lib-extras < 1.1.7-3 - -%package extras -Summary: Additional plugins for xine-lib -Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} - +BuildRequires: pkgconfig +BuildRequires: gnome-vfs2-devel +BuildRequires: gtk2-devel +BuildRequires: libsmbclient-devel %description This package contains the Xine library. Xine is a free multimedia player. @@ -116,21 +104,37 @@ disk drives, and displays multimedia streamed over the Internet. It interprets many of the most common multimedia formats available - and some of the most uncommon formats, too. --with/--without rpmbuild options (some default values depend on target distribution): aalib, caca, directfb, -imagemagick, freetype, antialiasing (with freetype), jack, pulseaudio, -wavpack, xcb. +imagemagick, freetype, antialiasing (with freetype), pulseaudio, xcb. -%description devel +%package devel +Summary: Xine library development files +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: pkgconfig +Requires: zlib-devel + +%description devel This package contains development files for xine-lib. -%description arts +%package arts +Summary: aRts plugin for xine-lib +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +# -arts was split off the -extras subpackage at 1.1.7-3 +Obsoletes: xine-lib-extras < 1.1.7-3 + +%description arts This package contains the aRts extra plugin for xine-lib. -%description extras +%package extras +Summary: Additional plugins for xine-lib +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} + +%description extras This package contains extra plugins for xine-lib: - EsounD -%if %{with_jack} - JACK -%endif # jack %if %{with_pa} - Pulseaudio %endif # pa @@ -197,9 +201,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --without-imagemagick \ %endif # imagemagick --with-arts \ -%if %{with_wpack} --with-wavpack \ -%endif --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} @@ -337,9 +339,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/*/xineplug_vo_out_xv.so %{_libdir}/xine/plugins/*/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/*/xineplug_vo_out_xxmc.so -%if %{with_wpack} %{_libdir}/xine/plugins/*/xineplug_wavpack.so -%endif # wpack %files arts %defattr(-,root,root,-) @@ -348,9 +348,7 @@ rm -rf $RPM_BUILD_ROOT %files extras %defattr(-,root,root,-) %{_libdir}/xine/plugins/*/xineplug_ao_out_esd.so -%if %{with_jack} %{_libdir}/xine/plugins/*/xineplug_ao_out_jack.so -%endif # jack %if %{with_pa} %{_libdir}/xine/plugins/*/xineplug_ao_out_pulseaudio.so %endif # pa @@ -385,6 +383,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Mar 19 2008 Ville Skyttä - 1.1.11-1 +- 1.1.11 (security update, #438182, CVE-2008-0073). +- Drop jack and wavpack build conditionals. +- Specfile cleanups. + * Fri Mar 7 2008 Rex Dieter - 1.1.10.1-1.1 - xcb support for f7+ (#373411) From bd1cc3b82943cbd42ec5fcc61af83077db98b518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 30 Mar 2008 18:50:26 +0000 Subject: [PATCH 038/150] =?UTF-8?q?*=20Sun=20Mar=2030=202008=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.11.1-1=20-=20?= =?UTF-8?q?1.1.11.1=20(security=20update,=20#438663,=20CVE-2008-1482).=20-?= =?UTF-8?q?=20Provide=20versioned=20xine-lib(plugin-abi)=20so=203rd=20part?= =?UTF-8?q?y=20packages=20installing=20=20=20plugins=20can=20use=20it=20in?= =?UTF-8?q?stead=20of=20requiring=20a=20version=20of=20xine-lib.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib.spec | 206 ++++++++++++++++++++++++++------------------------ 3 files changed, 111 insertions(+), 103 deletions(-) diff --git a/.cvsignore b/.cvsignore index b01f673..907cc99 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.11-pruned.tar.bz2 -xine-lib-1.1.11-autotools.patch.bz2 +xine-lib-1.1.11.1-pruned.tar.bz2 +xine-lib-1.1.11.1-autotools.patch.bz2 diff --git a/sources b/sources index 9f141e7..7c8f9d9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -40d8c51a914ed20b8499c5da9cf57bc0 xine-lib-1.1.11-pruned.tar.bz2 -bb30e6af99e5abfcb6133fbe347be7eb xine-lib-1.1.11-autotools.patch.bz2 +b6a4fe9dd2ec80452870a8bfbb3974f0 xine-lib-1.1.11.1-pruned.tar.bz2 +c257bf0b964d25592f1c612149ae2c7a xine-lib-1.1.11.1-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index e65a622..383882d 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -8,7 +8,8 @@ # http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html # - external dvdnav - not compatible as of 1.1.11 and 4.1.1 -%define codecdir %{_libdir}/codecs +%define abiver 1.20 +%define codecdir %{_libdir}/codecs %ifarch %{ix86} %define have_vidix 1 @@ -30,7 +31,7 @@ Summary: Xine library Name: xine-lib -Version: 1.1.11 +Version: 1.1.11.1 Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries @@ -46,6 +47,8 @@ Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +Provides: xine-lib(plugin-abi) = %{abiver} # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel @@ -243,132 +246,132 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man5/xine.5* %dir %{_libdir}/xine/ %dir %{_libdir}/xine/plugins/ -%dir %{_libdir}/xine/plugins/*/ -%{_libdir}/xine/plugins/*/mime.types +%dir %{_libdir}/xine/plugins/%{abiver}/ +%{_libdir}/xine/plugins/%{abiver}/mime.types # Listing every plugin separately for better control over binary packages # containing exactly the plugins we want, nothing accidentally snuck in # nor dropped. -%dir %{_libdir}/xine/plugins/*/post/ -%{_libdir}/xine/plugins/*/post/xineplug_post_audio_filters.so -%{_libdir}/xine/plugins/*/post/xineplug_post_goom.so -%{_libdir}/xine/plugins/*/post/xineplug_post_mosaico.so -%{_libdir}/xine/plugins/*/post/xineplug_post_switch.so -%{_libdir}/xine/plugins/*/post/xineplug_post_visualizations.so +%dir %{_libdir}/xine/plugins/%{abiver}/post/ +%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_audio_filters.so +%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_goom.so +%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_mosaico.so +%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_switch.so +%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_visualizations.so %if %{have_vidix} -%dir %{_libdir}/xine/plugins/*/vidix/ -%{_libdir}/xine/plugins/*/vidix/cyberblade_vid.so -%{_libdir}/xine/plugins/*/vidix/mach64_vid.so -%{_libdir}/xine/plugins/*/vidix/mga_crtc2_vid.so -%{_libdir}/xine/plugins/*/vidix/mga_vid.so -%{_libdir}/xine/plugins/*/vidix/nvidia_vid.so -%{_libdir}/xine/plugins/*/vidix/pm2_vid.so -%{_libdir}/xine/plugins/*/vidix/pm3_vid.so -%{_libdir}/xine/plugins/*/vidix/radeon_vid.so -%{_libdir}/xine/plugins/*/vidix/rage128_vid.so -%{_libdir}/xine/plugins/*/vidix/savage_vid.so -%{_libdir}/xine/plugins/*/vidix/sis_vid.so -%{_libdir}/xine/plugins/*/vidix/unichrome_vid.so +%dir %{_libdir}/xine/plugins/%{abiver}/vidix/ +%{_libdir}/xine/plugins/%{abiver}/vidix/cyberblade_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/mach64_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/mga_crtc2_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/mga_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/nvidia_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/pm2_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/pm3_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/radeon_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/rage128_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/savage_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/sis_vid.so +%{_libdir}/xine/plugins/%{abiver}/vidix/unichrome_vid.so %endif # vidix -%{_libdir}/xine/plugins/*/xineplug_ao_out_alsa.so -%{_libdir}/xine/plugins/*/xineplug_ao_out_file.so -%{_libdir}/xine/plugins/*/xineplug_ao_out_none.so -%{_libdir}/xine/plugins/*/xineplug_ao_out_oss.so -%{_libdir}/xine/plugins/*/xineplug_decode_bitplane.so -%{_libdir}/xine/plugins/*/xineplug_decode_gsm610.so -%{_libdir}/xine/plugins/*/xineplug_decode_lpcm.so -%{_libdir}/xine/plugins/*/xineplug_decode_mpc.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_alsa.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_file.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_none.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_oss.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_bitplane.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gsm610.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_lpcm.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_mpc.so %ifarch %ix86 -%{_libdir}/xine/plugins/*/xineplug_decode_qt.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_qt.so %endif # ix86 -%{_libdir}/xine/plugins/*/xineplug_decode_real.so -%{_libdir}/xine/plugins/*/xineplug_decode_rgb.so -%{_libdir}/xine/plugins/*/xineplug_decode_speex.so -%{_libdir}/xine/plugins/*/xineplug_decode_spu.so -%{_libdir}/xine/plugins/*/xineplug_decode_spucc.so -%{_libdir}/xine/plugins/*/xineplug_decode_spucmml.so -%{_libdir}/xine/plugins/*/xineplug_decode_spudvb.so -%{_libdir}/xine/plugins/*/xineplug_decode_sputext.so -%{_libdir}/xine/plugins/*/xineplug_decode_theora.so -%{_libdir}/xine/plugins/*/xineplug_decode_vorbis.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_real.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_rgb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_speex.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spu.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spucc.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spucmml.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spudvb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_sputext.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_theora.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_vorbis.so %ifarch %ix86 -%{_libdir}/xine/plugins/*/xineplug_decode_w32dll.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_w32dll.so %endif # ix86 -%{_libdir}/xine/plugins/*/xineplug_decode_yuv.so -%{_libdir}/xine/plugins/*/xineplug_dmx_audio.so -%{_libdir}/xine/plugins/*/xineplug_dmx_avi.so -%{_libdir}/xine/plugins/*/xineplug_dmx_fli.so -%{_libdir}/xine/plugins/*/xineplug_dmx_flv.so -%{_libdir}/xine/plugins/*/xineplug_dmx_games.so -%{_libdir}/xine/plugins/*/xineplug_dmx_iff.so -%{_libdir}/xine/plugins/*/xineplug_dmx_image.so -%{_libdir}/xine/plugins/*/xineplug_dmx_matroska.so -%{_libdir}/xine/plugins/*/xineplug_dmx_mng.so -%{_libdir}/xine/plugins/*/xineplug_dmx_nsv.so -%{_libdir}/xine/plugins/*/xineplug_dmx_ogg.so -%{_libdir}/xine/plugins/*/xineplug_dmx_pva.so -%{_libdir}/xine/plugins/*/xineplug_dmx_qt.so -%{_libdir}/xine/plugins/*/xineplug_dmx_rawdv.so -%{_libdir}/xine/plugins/*/xineplug_dmx_real.so -%{_libdir}/xine/plugins/*/xineplug_dmx_slave.so -%{_libdir}/xine/plugins/*/xineplug_dmx_sputext.so -%{_libdir}/xine/plugins/*/xineplug_dmx_yuv_frames.so -%{_libdir}/xine/plugins/*/xineplug_flac.so -%{_libdir}/xine/plugins/*/xineplug_inp_cdda.so -%{_libdir}/xine/plugins/*/xineplug_inp_dvb.so -%{_libdir}/xine/plugins/*/xineplug_inp_file.so -%{_libdir}/xine/plugins/*/xineplug_inp_http.so -%{_libdir}/xine/plugins/*/xineplug_inp_net.so -%{_libdir}/xine/plugins/*/xineplug_inp_pnm.so -%{_libdir}/xine/plugins/*/xineplug_inp_pvr.so -%{_libdir}/xine/plugins/*/xineplug_inp_rtp.so -%{_libdir}/xine/plugins/*/xineplug_inp_rtsp.so -%{_libdir}/xine/plugins/*/xineplug_inp_stdin_fifo.so -%{_libdir}/xine/plugins/*/xineplug_inp_v4l.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_fb.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_none.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_opengl.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_syncfb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_yuv.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_audio.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_avi.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_fli.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_flv.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_games.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_iff.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_image.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_matroska.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mng.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_nsv.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_ogg.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_pva.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_qt.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_rawdv.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_real.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_slave.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_sputext.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_yuv_frames.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_flac.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_cdda.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_dvb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_file.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_http.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_net.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_pnm.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_pvr.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_rtp.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_rtsp.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_stdin_fifo.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_v4l.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_fb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_none.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_opengl.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_syncfb.so %if %{have_vidix} -%{_libdir}/xine/plugins/*/xineplug_vo_out_vidix.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_vidix.so %endif # vidix %if %{with_xcb} -%{_libdir}/xine/plugins/*/xineplug_vo_out_xcbshm.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_xcbxv.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xcbshm.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xcbxv.so %endif # xcb -%{_libdir}/xine/plugins/*/xineplug_vo_out_xshm.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_xv.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_xvmc.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_xxmc.so -%{_libdir}/xine/plugins/*/xineplug_wavpack.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xshm.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xv.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xvmc.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xxmc.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_wavpack.so %files arts %defattr(-,root,root,-) -%{_libdir}/xine/plugins/*/xineplug_ao_out_arts.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_arts.so %files extras %defattr(-,root,root,-) -%{_libdir}/xine/plugins/*/xineplug_ao_out_esd.so -%{_libdir}/xine/plugins/*/xineplug_ao_out_jack.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_esd.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_jack.so %if %{with_pa} -%{_libdir}/xine/plugins/*/xineplug_ao_out_pulseaudio.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so %endif # pa -%{_libdir}/xine/plugins/*/xineplug_decode_gdk_pixbuf.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gdk_pixbuf.so %if 0%{!?_without_imagemagick:1} -%{_libdir}/xine/plugins/*/xineplug_decode_image.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_image.so %endif # imagemagick -%{_libdir}/xine/plugins/*/xineplug_inp_gnome_vfs.so -%{_libdir}/xine/plugins/*/xineplug_inp_smb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_gnome_vfs.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_smb.so %if %{with_aalib} -%{_libdir}/xine/plugins/*/xineplug_vo_out_aa.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_aa.so %endif # aalib %if %{with_caca} -%{_libdir}/xine/plugins/*/xineplug_vo_out_caca.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_caca.so %endif # caca %if 0%{!?_without_directfb:1} -%{_libdir}/xine/plugins/*/xineplug_vo_out_directfb.so -%{_libdir}/xine/plugins/*/xineplug_vo_out_xdirectfb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_directfb.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xdirectfb.so %endif # directfb -%{_libdir}/xine/plugins/*/xineplug_vo_out_sdl.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_sdl.so %files devel %defattr(-,root,root,-) @@ -383,6 +386,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Mar 30 2008 Ville Skyttä - 1.1.11.1-1 +- 1.1.11.1 (security update, #438663, CVE-2008-1482). +- Provide versioned xine-lib(plugin-abi) so 3rd party packages installing + plugins can use it instead of requiring a version of xine-lib. + * Wed Mar 19 2008 Ville Skyttä - 1.1.11-1 - 1.1.11 (security update, #438182, CVE-2008-0073). - Drop jack and wavpack build conditionals. From 269c125c0d939eb7c7fbff61cc22d7e5a663210c Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 7 Apr 2008 13:09:55 +0000 Subject: [PATCH 039/150] * Mon Apr 07 2008 Rex Dieter - 1.1.11.1-2 - pulse-rework2 patch (#439731) - -pulseaudio subpkg (#439731) --- xine-lib.spec | 35 +- xine-pulse-rework2.patch | 1039 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 1067 insertions(+), 7 deletions(-) create mode 100644 xine-pulse-rework2.patch diff --git a/xine-lib.spec b/xine-lib.spec index 383882d..a16b152 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -32,7 +32,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.11.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -48,6 +48,10 @@ Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +# upstream patches +# lennart said this was upstreamed already. :) +Patch100: http://0pointer.de/public/xine-pulse-rework2.patch + Provides: xine-lib(plugin-abi) = %{abiver} # X11 BuildRequires: libX11-devel @@ -119,6 +123,7 @@ Requires: zlib-devel %description devel This package contains development files for xine-lib. +# TODO: consider removing and/or marking as deprecated for F9+ -- Rex %package arts Summary: aRts plugin for xine-lib Group: System Environment/Libraries @@ -129,6 +134,16 @@ Obsoletes: xine-lib-extras < 1.1.7-3 %description arts This package contains the aRts extra plugin for xine-lib. +%package pulseaudio +Summary: Pulseaudio plugin for xine-lib +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +# -pulseaudio was split off -extras at 1.1.11.1-2 +#Obsoletes: xine-lib-extras < 1.1.11.1-2 + +%description pulseaudio +This package contains the pulseaudio plugin for xine-lib. + %package extras Summary: Additional plugins for xine-lib Group: System Environment/Libraries @@ -138,9 +153,6 @@ Requires: %{name} = %{version}-%{release} This package contains extra plugins for xine-lib: - EsounD - JACK -%if %{with_pa} - - Pulseaudio -%endif # pa - GDK-Pixbuf - GNOME VFS - SMB @@ -169,6 +181,8 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind +%patch100 -p1 -b .pulse-rework2 + # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -348,13 +362,16 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_arts.so +%if %{with_pa} +%files pulseaudio +%defattr(-,root,root,-) +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so +%endif + %files extras %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_esd.so %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_jack.so -%if %{with_pa} -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so -%endif # pa %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gdk_pixbuf.so %if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_image.so @@ -386,6 +403,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Apr 07 2008 Rex Dieter - 1.1.11.1-2 +- pulse-rework2 patch (#439731) +- -pulseaudio subpkg (#439731) + * Sun Mar 30 2008 Ville Skyttä - 1.1.11.1-1 - 1.1.11.1 (security update, #438663, CVE-2008-1482). - Provide versioned xine-lib(plugin-abi) so 3rd party packages installing diff --git a/xine-pulse-rework2.patch b/xine-pulse-rework2.patch new file mode 100644 index 0000000..7f29efb --- /dev/null +++ b/xine-pulse-rework2.patch @@ -0,0 +1,1039 @@ +--- xine-lib-1.1.11.1/src/audio_out/audio_pulse_out.c 2008-03-28 15:24:49.000000000 +0100 ++++ xine-lib-1.1.11.1.lennart/src/audio_out/audio_pulse_out.c 2008-04-02 22:55:49.000000000 +0200 +@@ -1,28 +1,28 @@ +-/* +- * Copyright (C) 2000-2007 the xine project +- * ++/* -*- Mode: C; c-basic-offset: 2; indent-tabs-mode: nil -*- */ ++ ++/* ++ * Copyright (C) 2000-2008 the xine project ++ * + * This file is part of xine, a free video player. +- * ++ * + * xine is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. +- * ++ * + * xine is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. +- * ++ * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * +- * ao plugin for pulseaudio (rename of polypaudio): ++ * ao plugin for PulseAudio: + * http://0pointer.de/lennart/projects/pulsaudio/ + * +- * originally written for polypaudio simple api. Lennart then suggested +- * using the async api for better control (such as volume), therefore, a lot +- * of this code comes from Lennart's patch to mplayer. ++ * Diego Petteno, Lennart Poettering + */ + + #ifdef HAVE_CONFIG_H +@@ -48,15 +48,9 @@ + + #define GAP_TOLERANCE AO_MAX_GAP + +-/* CHECKME: should this be conditional on autotools? */ +-extern const char *__progname; +- + typedef struct { + audio_driver_class_t driver_class; + xine_t *xine; +- +- struct pa_context *context; /*< Pulseaudio connection context */ +- struct pa_threaded_mainloop *mainloop; /*< Main event loop object */ + } pulse_class_t; + + typedef struct pulse_driver_s { +@@ -67,11 +61,13 @@ typedef struct pulse_driver_s { + + char *host; /*< The host to connect to */ + char *sink; /*< The sink to connect to */ +- struct pa_stream *stream; /*< Pulseaudio playback stream object */ + +- pthread_mutex_t info_mutex; /**< Mutex for info callback signaling */ ++ pa_threaded_mainloop *mainloop; /*< Main event loop object */ ++ pa_context *context; /*< Pulseaudio connection context */ ++ pa_stream *stream; /*< Pulseaudio playback stream object */ + + pa_volume_t swvolume; ++ int muted; + pa_cvolume cvolume; + + int capabilities; +@@ -82,67 +78,117 @@ typedef struct pulse_driver_s { + uint32_t bits_per_sample; + uint32_t bytes_per_frame; + +- uint32_t frames_written; +- + } pulse_driver_t; + + + /** +- * @brief Callback function called when a stream operation succeed +- * @param stream Stream which operation has succeeded +- * @param success The success value for the operation (ignored) +- * @param this_Gen pulse_driver_t pointer for the PulseAudio output +- * instance. ++ * @brief Callback function called when the state of the context is changed ++ * @param c Context which changed status ++ * @param this_gen pulse_class_t pointer for the PulseAudio output class + */ +-static void __xine_pa_stream_success_callback(pa_stream *const stream, const int success, +- void *const mutex_gen) ++static void __xine_pa_context_state_callback(pa_context *c, void *this_gen) + { +- pthread_mutex_t *const completion_mutex = (pthread_mutex_t*)mutex_gen; ++ pulse_driver_t * this = (pulse_driver_t*) this_gen; ++ ++ switch (pa_context_get_state(c)) { ++ ++ case PA_CONTEXT_READY: ++ case PA_CONTEXT_TERMINATED: ++ case PA_CONTEXT_FAILED: ++ pa_threaded_mainloop_signal(this->mainloop, 0); ++ break; + +- pthread_mutex_unlock(completion_mutex); ++ case PA_CONTEXT_CONNECTING: ++ case PA_CONTEXT_UNCONNECTED: ++ case PA_CONTEXT_AUTHORIZING: ++ case PA_CONTEXT_SETTING_NAME: ++ break; ++ } + } + + /** +- * @brief Callback function called when the state of the context is changed +- * @param ctx Context which operation has succeeded ++ * @brief Callback function called when the state of the stream is changed ++ * @param s Stream that changed status + * @param this_gen pulse_driver_t pointer for the PulseAudio output + * instance. + */ +-static void __xine_pa_context_status_callback(pa_context *const ctx, void *const this_gen) ++static void __xine_pa_stream_state_callback(pa_stream *s, void *this_gen) + { +- pulse_driver_t *const this = (pulse_driver_t*)this_gen; ++ pulse_driver_t * this = (pulse_driver_t*) this_gen; ++ ++ switch (pa_stream_get_state(s)) { ++ ++ case PA_STREAM_READY: ++ case PA_STREAM_TERMINATED: ++ case PA_STREAM_FAILED: ++ pa_threaded_mainloop_signal(this->mainloop, 0); ++ break; + +- switch (pa_context_get_state(ctx)) { +- case PA_CONTEXT_READY: +- case PA_CONTEXT_TERMINATED: +- case PA_CONTEXT_FAILED: +- pa_threaded_mainloop_signal(this->pa_class->mainloop, 0); +- break; +- +- case PA_CONTEXT_CONNECTING: +- case PA_CONTEXT_UNCONNECTED: +- case PA_CONTEXT_AUTHORIZING: +- case PA_CONTEXT_SETTING_NAME: +- break; ++ case PA_STREAM_UNCONNECTED: ++ case PA_STREAM_CREATING: ++ break; + } + } + + /** +- * @brief Callback function called when a context operation succeed ++ * @brief Callback function called when PA asks for more audio data. ++ * @param s Stream on which data is requested ++ * @param nbytes the number of bytes PA requested ++ * @param this_gen pulse_driver_t pointer for the PulseAudio output ++ * instance. ++ */ ++static void __xine_pa_stream_request_callback(pa_stream *s, size_t nbytes, void *this_gen) ++{ ++ pulse_driver_t * this = (pulse_driver_t*) this_gen; ++ ++ pa_threaded_mainloop_signal(this->mainloop, 0); ++} ++ ++/** ++ * @brief Callback function called when PA notifies about something ++ * @param s Stream on which the notification happened ++ * @param this_gen pulse_driver_t pointer for the PulseAudio output ++ * instance. ++ */ ++static void __xine_pa_stream_notify_callback(pa_stream *s, void *this_gen) ++{ ++ pulse_driver_t * this = (pulse_driver_t*) this_gen; ++ ++ pa_threaded_mainloop_signal(this->mainloop, 0); ++} ++ ++/** ++ * @brief Callback function called when PA completed an operation + * @param ctx Context which operation has succeeded +- * @param success The success value for the operation (ignored) ++ * @param nbytes the number of bytes PA requested + * @param this_gen pulse_driver_t pointer for the PulseAudio output + * instance. + */ +-static void __xine_pa_context_success_callback(pa_context *const ctx, const int success, +- void *const this_gen) ++static void __xine_pa_stream_success_callback(pa_stream *s, int success, void *this_gen) + { +- pulse_driver_t *const this = (pulse_driver_t*)this_gen; ++ pulse_driver_t * this = (pulse_driver_t*) this_gen; + +- _x_assert(ctx); _x_assert(this); +- _x_assert(ctx == this->pa_class->context); ++ if (!success) ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: stream operation failed: %s\n", pa_strerror(pa_context_errno(this->context))); + +- pa_threaded_mainloop_signal(this->pa_class->mainloop, 0); ++ pa_threaded_mainloop_signal(this->mainloop, 0); ++} ++ ++/** ++ * @brief Callback function called when PA completed an operation ++ * @param c Context on which operation has succeeded ++ * @param nbytes the number of bytes PA requested ++ * @param this_gen pulse_driver_t pointer for the PulseAudio output ++ * instance. ++ */ ++static void __xine_pa_context_success_callback(pa_context *c, int success, void *this_gen) ++{ ++ pulse_driver_t *this = (pulse_driver_t*) this_gen; ++ ++ if (!success) ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: context operation failed: %s\n", pa_strerror(pa_context_errno(this->context))); ++ ++ pa_threaded_mainloop_signal(this->mainloop, 0); + } + + /** +@@ -156,14 +202,14 @@ static void __xine_pa_context_success_ca + * This function saves the volume field of the passed structure to the + * @c cvolume variable of the output instance. + */ +-static void __xine_pa_sink_info_callback(pa_context *const ctx, const pa_sink_input_info *const info, +- const int is_last, void *const userdata) { ++static void __xine_pa_sink_info_callback(pa_context *c, const pa_sink_input_info *info, ++ int is_last, void *userdata) { + + pulse_driver_t *const this = (pulse_driver_t *) userdata; + + if (is_last < 0) { + xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: Failed to get sink input info: %s\n", +- pa_strerror(pa_context_errno(this->pa_class->context))); ++ pa_strerror(pa_context_errno(this->context))); + return; + } + +@@ -171,36 +217,90 @@ static void __xine_pa_sink_info_callback + return; + + this->cvolume = info->volume; ++ this->swvolume = pa_sw_volume_to_linear(pa_cvolume_avg(&info->volume)); ++ this->muted = info->mute; ++} ++ ++static int connect_context(pulse_driver_t *this) { ++ ++ if (this->context && (pa_context_get_state(this->context) == PA_CONTEXT_FAILED || ++ pa_context_get_state(this->context) == PA_CONTEXT_TERMINATED)) { ++ pa_context_unref(this->context); ++ this->context = NULL; ++ } ++ ++ if (!this->context) { ++ char fn[PATH_MAX], *p; ++ ++ if (pa_get_binary_name(fn, sizeof(fn))) ++ p = pa_path_get_filename(fn); ++ else ++ p = "Xine"; + +- pthread_mutex_unlock(&this->info_mutex); ++ this->context = pa_context_new(pa_threaded_mainloop_get_api(this->mainloop), p); ++ _x_assert(this->context); ++ ++ pa_context_set_state_callback(this->context, __xine_pa_context_state_callback, this); ++ } ++ ++ if (pa_context_get_state(this->context) == PA_CONTEXT_UNCONNECTED) { ++ ++ if (pa_context_connect(this->context, this->host, 0, NULL) < 0) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to connect context object %s\n", pa_strerror(pa_context_errno(this->context))); ++ return -1; ++ } ++ } ++ ++ for (;;) { ++ pa_context_state_t state = pa_context_get_state(this->context); ++ ++ if (state == PA_CONTEXT_FAILED || state == PA_CONTEXT_TERMINATED) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to connect context object: %s\n", pa_strerror(pa_context_errno(this->context))); ++ return -1; ++ } ++ ++ if (state == PA_CONTEXT_READY) ++ break; ++ ++ pa_threaded_mainloop_wait(this->mainloop); ++ } ++ ++ return 0; + } + + /* + * open the audio device for writing to + */ + static int ao_pulse_open(ao_driver_t *this_gen, +- uint32_t bits, uint32_t rate, int mode) ++ uint32_t bits, uint32_t rate, int mode) + { + pulse_driver_t *this = (pulse_driver_t *) this_gen; +- struct pa_sample_spec ss; +- struct pa_buffer_attr a; +- pa_stream_state_t streamstate; ++ pa_sample_spec ss; ++ pa_channel_map cm; ++ int r; + + xprintf (this->xine, XINE_VERBOSITY_DEBUG, +- "audio_pulse_out: ao_open bits=%d rate=%d, mode=%d\n", bits, rate, mode); ++ "audio_pulse_out: ao_open bits=%d rate=%d, mode=%d\n", bits, rate, mode); + + if ( (mode & this->capabilities) == 0 ) { + xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: unsupported mode %08x\n", mode); + return 0; + } + ++ pa_threaded_mainloop_lock(this->mainloop); ++ + if (this->stream) { + +- if ( mode == this->mode && rate == this->sample_rate && +- bits == this->bits_per_sample ) ++ if (mode == this->mode && rate == this->sample_rate && ++ bits == this->bits_per_sample) { ++ ++ pa_threaded_mainloop_unlock(this->mainloop); + return this->sample_rate; ++ } + +- this_gen->close(this_gen); ++ pa_stream_disconnect(this->stream); ++ pa_stream_unref(this->stream); ++ this->stream = NULL; + } + + this->mode = mode; +@@ -221,6 +321,8 @@ static int ao_pulse_open(ao_driver_t *th + case 32: + ss.format = PA_SAMPLE_FLOAT32NE; + break; ++ default: ++ _x_assert(!"Should not be reached"); + } + + if (!pa_sample_spec_valid(&ss)) { +@@ -228,70 +330,86 @@ static int ao_pulse_open(ao_driver_t *th + goto fail; + } + +- if ( this->pa_class->context && pa_context_get_state(this->pa_class->context) > PA_CONTEXT_READY ) { +- pa_context_unref(this->pa_class->context); +- this->pa_class->context = NULL; +- } +- +- if ( this->pa_class->context == NULL ) { +- this->pa_class->context = pa_context_new(pa_threaded_mainloop_get_api(this->pa_class->mainloop), +- __progname); +- } +- +- pa_context_ref(this->pa_class->context); ++ cm.channels = ss.channels; + +- if ( pa_context_get_state(this->pa_class->context) == PA_CONTEXT_UNCONNECTED ) { +- int ret; ++ switch (mode) { ++ case AO_CAP_MODE_MONO: ++ cm.map[0] = PA_CHANNEL_POSITION_MONO; ++ _x_assert(cm.channels == 1); ++ break; + +- pa_threaded_mainloop_lock(this->pa_class->mainloop); +- ret = pa_context_connect(this->pa_class->context, this->host, 1, NULL); +- if ( ret < 0 ) +- goto fail_unlock; ++ case AO_CAP_MODE_STEREO: ++ cm.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT; ++ cm.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT; ++ _x_assert(cm.channels == 2); ++ break; + +- pa_context_set_state_callback(this->pa_class->context, __xine_pa_context_status_callback, this); ++ case AO_CAP_MODE_4CHANNEL: ++ cm.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT; ++ cm.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT; ++ cm.map[2] = PA_CHANNEL_POSITION_REAR_LEFT; ++ cm.map[3] = PA_CHANNEL_POSITION_REAR_RIGHT; ++ _x_assert(cm.channels == 4); ++ break; + +- pa_threaded_mainloop_wait(this->pa_class->mainloop); +- pa_threaded_mainloop_unlock(this->pa_class->mainloop); ++ case AO_CAP_MODE_4_1CHANNEL: ++ case AO_CAP_MODE_5CHANNEL: ++ case AO_CAP_MODE_5_1CHANNEL: ++ cm.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT; ++ cm.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT; ++ cm.map[2] = PA_CHANNEL_POSITION_REAR_LEFT; ++ cm.map[3] = PA_CHANNEL_POSITION_REAR_RIGHT; ++ cm.map[4] = PA_CHANNEL_POSITION_FRONT_CENTER; ++ cm.map[5] = PA_CHANNEL_POSITION_LFE; ++ cm.channels = 6; ++ break; ++ default: ++ _x_assert(!"Should not be reached"); + } + +- if (pa_context_get_state(this->pa_class->context) != PA_CONTEXT_READY) { +- xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: Failed to connect to server: %s\n", +- pa_strerror(pa_context_errno(this->pa_class->context))); ++ if (!pa_channel_map_valid(&cm)) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: Invalid channel map\n"); + goto fail; + } + +- this->stream = pa_stream_new(this->pa_class->context, "audio stream", &ss, NULL); ++ if (connect_context(this) < 0) ++ goto fail; ++ ++ _x_assert(!this->stream); ++ this->stream = pa_stream_new(this->context, "Audio Stream", &ss, &cm); + _x_assert(this->stream); + +- a.maxlength = pa_bytes_per_second(&ss)*1; +- a.tlength = a.maxlength*9/10; +- a.prebuf = a.tlength/2; +- a.minreq = a.tlength/10; ++ pa_stream_set_state_callback(this->stream, __xine_pa_stream_state_callback, this); ++ pa_stream_set_write_callback(this->stream, __xine_pa_stream_request_callback, this); ++ pa_stream_set_latency_update_callback(this->stream, __xine_pa_stream_notify_callback, this); + +- pa_stream_connect_playback(this->stream, this->sink, &a, +- PA_STREAM_INTERPOLATE_TIMING|PA_STREAM_AUTO_TIMING_UPDATE, ++ r = pa_stream_connect_playback(this->stream, this->sink, NULL, ++ PA_STREAM_INTERPOLATE_TIMING|PA_STREAM_AUTO_TIMING_UPDATE, + NULL, NULL); + +- do { +- xine_usec_sleep (100); ++ for (;;) { ++ pa_context_state_t cstate = pa_context_get_state(this->context); ++ pa_stream_state_t sstate = pa_stream_get_state(this->stream); ++ ++ if (cstate == PA_CONTEXT_FAILED || cstate == PA_CONTEXT_TERMINATED || ++ sstate == PA_STREAM_FAILED || sstate == PA_STREAM_TERMINATED) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to connect context object: %s\n", pa_strerror(pa_context_errno(this->context))); ++ goto fail; ++ } + +- streamstate = pa_stream_get_state(this->stream); +- } while (streamstate < PA_STREAM_READY); +- +- if (streamstate != PA_STREAM_READY) { +- xprintf (this->xine, XINE_VERBOSITY_LOG, "audio_pulse_out: Failed to connect to server: %s\n", +- pa_strerror(pa_context_errno(this->pa_class->context))); +- goto fail; ++ if (sstate == PA_STREAM_READY) ++ break; ++ ++ pa_threaded_mainloop_wait(this->mainloop); + } +- this->frames_written = 0; + +- this->ao_driver.set_property(this, AO_PROP_PCM_VOL, 100); ++ pa_threaded_mainloop_unlock(this->mainloop); + + return this->sample_rate; + +- fail_unlock: +- pa_threaded_mainloop_unlock(this->pa_class->mainloop); + fail: ++ ++ pa_threaded_mainloop_unlock(this->mainloop); + this_gen->close(this_gen); + return 0; + } +@@ -319,217 +437,348 @@ static int ao_pulse_write(ao_driver_t *t + { + pulse_driver_t *this = (pulse_driver_t *) this_gen; + size_t size = num_frames * this->bytes_per_frame; +- int ret = 0; +- +- if ( !this->stream || !this->pa_class->context) +- return -1; +- +- switch( pa_stream_get_state(this->stream) ) { +- case PA_STREAM_READY: +- while (size > 0) { +- size_t l; ++ int ret = -1; ++ size_t done = 0; + +- while (!(l = pa_stream_writable_size(this->stream))) { +- xine_usec_sleep (10000); +- } ++ pa_threaded_mainloop_lock(this->mainloop); + +- if (l > size) +- l = size; +- +- pa_stream_write(this->stream, data, l, NULL, 0, PA_SEEK_RELATIVE); +- data = (int16_t *) ((uint8_t*) data + l); +- size -= l; +- } ++ while (size > 0) { ++ size_t l; + +- this->frames_written += num_frames; ++ for (;;) { + +- if (pa_stream_get_state(this->stream) == PA_STREAM_READY) +- ret = 1; ++ if (!this->stream || ++ !this->context || ++ pa_context_get_state(this->context) != PA_CONTEXT_READY || ++ pa_stream_get_state(this->stream) != PA_STREAM_READY) ++ goto finish; + +- break; ++ if ((l = pa_stream_writable_size(this->stream)) == (size_t) -1) ++ goto finish; ++ ++ if (l > 0) ++ break; ++ ++ pa_threaded_mainloop_wait(this->mainloop); ++ } ++ ++ if (l > size) ++ l = size; ++ ++ pa_stream_write(this->stream, data, l, NULL, 0, PA_SEEK_RELATIVE); ++ data = (int16_t *) ((uint8_t*) data + l); ++ size -= l; ++ done += l; + } + ++ ret = done; ++ ++finish: ++ ++ pa_threaded_mainloop_unlock(this->mainloop); ++ ++/* fprintf(stderr, "write-out\n"); */ ++ + return ret; +-} + ++} + + static int ao_pulse_delay (ao_driver_t *this_gen) + { + pulse_driver_t *this = (pulse_driver_t *) this_gen; +- pa_usec_t latency = 0; +- unsigned int delay_frames; ++ int ret = 0; + +- if ( ! this->stream ) return this->frames_written; ++/* fprintf(stderr, "delay-in\n"); */ + +- if (pa_stream_get_latency(this->stream, &latency, NULL) < 0) { +- pa_context_unref(this->pa_class->context); +- this->pa_class->context = NULL; ++ pa_threaded_mainloop_lock(this->mainloop); + +- pa_stream_disconnect(this->stream); +- pa_stream_unref(this->stream); +- this->stream = NULL; ++ for (;;) { ++ pa_usec_t latency = 0; + +- return 0; ++ if (!this->stream || ++ !this->context || ++ pa_context_get_state(this->context) != PA_CONTEXT_READY || ++ pa_stream_get_state(this->stream) != PA_STREAM_READY) ++ goto finish; ++ ++ if (pa_stream_get_latency(this->stream, &latency, NULL) >= 0) { ++ ret = (int) ((latency * this->sample_rate) / 1000000); ++ goto finish; ++ } ++ ++ if (pa_context_errno(this->context) != PA_ERR_NODATA) { ++ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to query latency: %s\n", pa_strerror(pa_context_errno(this->context))); ++ goto finish; ++ } ++ ++ pa_threaded_mainloop_wait(this->mainloop); + } + +- /* convert latency (us) to frame units. */ +- delay_frames = (int)(latency * this->sample_rate / 1000000); ++finish: + +- if( delay_frames > this->frames_written ) +- return this->frames_written; +- else +- return delay_frames; ++ pa_threaded_mainloop_unlock(this->mainloop); ++ ++ return ret; + } + + static void ao_pulse_close(ao_driver_t *this_gen) + { + pulse_driver_t *this = (pulse_driver_t *) this_gen; +- +- if (this->stream) { +- if (pa_stream_get_state(this->stream) == PA_STREAM_READY) { +- pthread_mutex_t completion_callback = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_lock(&completion_callback); +- pa_stream_drain(this->stream, __xine_pa_stream_success_callback, &completion_callback); + +- pthread_mutex_lock(&completion_callback); +- pthread_mutex_destroy(&completion_callback); +- } ++ pa_threaded_mainloop_lock(this->mainloop); + ++ if (this->stream) { + pa_stream_disconnect(this->stream); + pa_stream_unref(this->stream); + this->stream = NULL; +- +- pa_context_unref(this->pa_class->context); + } ++ ++ pa_threaded_mainloop_unlock(this->mainloop); + } + + static uint32_t ao_pulse_get_capabilities (ao_driver_t *this_gen) { + pulse_driver_t *this = (pulse_driver_t *) this_gen; ++ + return this->capabilities; + } + +-static void ao_pulse_exit(ao_driver_t *this_gen) +-{ ++static void ao_pulse_exit(ao_driver_t *this_gen) { + pulse_driver_t *this = (pulse_driver_t *) this_gen; + +- free (this); ++ ao_pulse_close(this_gen); ++ ++ pa_threaded_mainloop_lock(this->mainloop); ++ ++ if (this->context) { ++ pa_context_disconnect(this->context); ++ pa_context_unref(this->context); ++ } ++ ++ pa_threaded_mainloop_unlock(this->mainloop); ++ ++ pa_threaded_mainloop_free(this->mainloop); ++ ++ free(this->host); ++ free(this->sink); ++ free(this); ++} ++ ++static int wait_for_operation(pulse_driver_t *this, pa_operation *o) { ++ ++ for (;;) { ++ ++ if (!this->stream || ++ !this->context || ++ pa_context_get_state(this->context) != PA_CONTEXT_READY || ++ pa_stream_get_state(this->stream) != PA_STREAM_READY) ++ return -1; ++ ++ if (pa_operation_get_state(o) != PA_OPERATION_RUNNING) ++ return 0; ++ ++ pa_threaded_mainloop_wait(this->mainloop); ++ } + } + + static int ao_pulse_get_property (ao_driver_t *this_gen, int property) { + pulse_driver_t *this = (pulse_driver_t *) this_gen; + int result = 0; ++ pa_operation *o = NULL; + +- if ( ! this->stream || ! this->pa_class->context ) ++ pa_threaded_mainloop_lock(this->mainloop); ++ ++ if (!this->stream || ++ !this->context || ++ pa_context_get_state(this->context) != PA_CONTEXT_READY || ++ pa_stream_get_state(this->stream) != PA_STREAM_READY) { ++ pa_threaded_mainloop_unlock(this->mainloop); + return 0; ++ } + + switch(property) { +- case AO_PROP_PCM_VOL: +- case AO_PROP_MIXER_VOL: +- { +- pthread_mutex_lock(&this->info_mutex); +- pa_operation *o = pa_context_get_sink_input_info(this->pa_class->context, +- pa_stream_get_index(this->stream), +- __xine_pa_sink_info_callback, this); +- if ( ! o ) return 0; +- pthread_mutex_lock(&this->info_mutex); pthread_mutex_unlock(&this->info_mutex); +- +- result = (pa_sw_volume_to_linear(this->swvolume)*100); +- } +- break; + +- case AO_PROP_MUTE_VOL: +- result = pa_cvolume_is_muted(&this->cvolume); +- break; ++ case AO_PROP_MUTE_VOL: ++ case AO_PROP_PCM_VOL: ++ case AO_PROP_MIXER_VOL: ++ ++ o = pa_context_get_sink_input_info(this->context, pa_stream_get_index(this->stream), ++ __xine_pa_sink_info_callback, this); ++ ++ break; ++ } ++ ++ if (o) { ++ wait_for_operation(this, o); ++ pa_operation_unref(o); + } +- ++ ++ switch(property) { ++ ++ case AO_PROP_MUTE_VOL: ++ result = this->muted; ++ break; ++ ++ case AO_PROP_PCM_VOL: ++ case AO_PROP_MIXER_VOL: ++ result = (int) (pa_sw_volume_to_linear(this->swvolume)*100); ++ break; ++ } ++ ++ pa_threaded_mainloop_unlock(this->mainloop); ++ + return result; + } + + static int ao_pulse_set_property (ao_driver_t *this_gen, int property, int value) { + pulse_driver_t *this = (pulse_driver_t *) this_gen; + int result = ~value; ++ pa_operation *o = NULL; + +- if ( ! this->stream || ! this->pa_class->context ) +- return result; ++ pa_threaded_mainloop_lock(this->mainloop); ++ ++ if (!this->stream || ++ !this->context || ++ pa_context_get_state(this->context) != PA_CONTEXT_READY || ++ pa_stream_get_state(this->stream) != PA_STREAM_READY) { ++ pa_threaded_mainloop_unlock(this->mainloop); ++ return 0; ++ } + + switch(property) { +- case AO_PROP_PCM_VOL: +- case AO_PROP_MIXER_VOL: +- this->swvolume = pa_sw_volume_from_linear((double)value/100.0); +- pa_cvolume_set(&this->cvolume, pa_stream_get_sample_spec(this->stream)->channels, this->swvolume); +- +- pa_context_set_sink_input_volume(this->pa_class->context, pa_stream_get_index(this->stream), +- &this->cvolume, __xine_pa_context_success_callback, this); +- +- result = value; +- break; +- +- case AO_PROP_MUTE_VOL: +- if ( value ) +- pa_cvolume_mute(&this->cvolume, pa_stream_get_sample_spec(this->stream)->channels); +- else ++ case AO_PROP_PCM_VOL: ++ case AO_PROP_MIXER_VOL: ++ ++ this->swvolume = pa_sw_volume_from_linear((double)value/100.0); + pa_cvolume_set(&this->cvolume, pa_stream_get_sample_spec(this->stream)->channels, this->swvolume); + +- pa_context_set_sink_input_volume(this->pa_class->context, pa_stream_get_index(this->stream), +- &this->cvolume, __xine_pa_context_success_callback, this); +- +- result = value; +- break; ++ o = pa_context_set_sink_input_volume(this->context, pa_stream_get_index(this->stream), ++ &this->cvolume, __xine_pa_context_success_callback, this); ++ ++ result = value; ++ break; ++ ++ case AO_PROP_MUTE_VOL: ++ ++ this->muted = value; ++ ++ o = pa_context_set_sink_input_mute(this->context, pa_stream_get_index(this->stream), ++ value, __xine_pa_context_success_callback, this); ++ ++ result = value; ++ } ++ ++ if (o) { ++ wait_for_operation(this, o); ++ pa_operation_unref(o); + } +- ++ ++ pa_threaded_mainloop_unlock(this->mainloop); ++ + return result; + } + + static int ao_pulse_ctrl(ao_driver_t *this_gen, int cmd, ...) { + pulse_driver_t *this = (pulse_driver_t *) this_gen; ++ pa_operation *o = NULL; ++ ++ pa_threaded_mainloop_lock(this->mainloop); + +- if ( ! this->stream ) return 0; ++ if (!this->stream || ++ !this->context || ++ pa_context_get_state(this->context) != PA_CONTEXT_READY || ++ pa_stream_get_state(this->stream) != PA_STREAM_READY) { ++ pa_threaded_mainloop_unlock(this->mainloop); ++ return 0; ++ } + + switch (cmd) { + +- case AO_CTRL_FLUSH_BUFFERS: +- _x_assert(this->stream && this->pa_class->context); ++ case AO_CTRL_FLUSH_BUFFERS: + +- if(pa_stream_get_state(this->stream) == PA_STREAM_READY) { +- pthread_mutex_t completion_callback = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_lock(&completion_callback); +- pa_stream_flush(this->stream, __xine_pa_stream_success_callback, &completion_callback); ++ o = pa_stream_flush(this->stream, __xine_pa_stream_success_callback, this); ++ break; + +- pthread_mutex_lock(&completion_callback); +- pthread_mutex_destroy(&completion_callback); +- } ++ case AO_CTRL_PLAY_RESUME: ++ case AO_CTRL_PLAY_PAUSE: + +- this->frames_written = 0; ++ o = pa_stream_cork(this->stream, cmd == AO_CTRL_PLAY_PAUSE, __xine_pa_stream_success_callback, this); ++ break; ++ } + +- break; ++ if (o) { ++ wait_for_operation(this, o); ++ pa_operation_unref(o); + } + ++ pa_threaded_mainloop_unlock(this->mainloop); ++ + return 0; + } + + static ao_driver_t *open_plugin (audio_driver_class_t *class_gen, const void *data) { + pulse_class_t *class = (pulse_class_t *) class_gen; + pulse_driver_t *this; +- char *device; ++ const char* device; ++ int r; + + lprintf ("audio_pulse_out: open_plugin called\n"); + + this = (pulse_driver_t *) xine_xmalloc (sizeof (pulse_driver_t)); + if (!this) + return NULL; ++ + this->xine = class->xine; ++ this->host = NULL; ++ this->sink = NULL; ++ this->context = NULL; ++ this->mainloop = NULL; ++ ++ device = class->xine->config->register_string(class->xine->config, ++ "audio.pulseaudio_device", ++ "", ++ _("device used for pulseaudio"), ++ _("use 'server[:sink]' for setting the " ++ "pulseaudio sink device."), ++ 10, NULL, ++ NULL); ++ ++ if (device && *device) { ++ char *sep = strrchr(device, ':'); ++ if ( sep ) { ++ if (!(this->host = strndup(device, sep-device))) { ++ free(this); ++ return NULL; ++ } ++ ++ if (!(this->sink = strdup(sep+1))) { ++ free(this->host); ++ free(this); ++ return NULL; ++ } ++ } else { ++ ++ if (!(this->host = strdup(device))) { ++ free(this); ++ return NULL; ++ } ++ } ++ } ++ ++ this->mainloop = pa_threaded_mainloop_new(); ++ _x_assert(this->mainloop); ++ pa_threaded_mainloop_start(this->mainloop); + + /* + * set capabilities + */ +- this->capabilities = AO_CAP_MODE_MONO | AO_CAP_MODE_STEREO | AO_CAP_MODE_4CHANNEL | +- AO_CAP_MODE_4_1CHANNEL | AO_CAP_MODE_5CHANNEL | +- AO_CAP_MODE_5_1CHANNEL | AO_CAP_MIXER_VOL | +- AO_CAP_PCM_VOL | AO_CAP_MUTE_VOL | AO_CAP_8BITS | +- AO_CAP_16BITS | AO_CAP_FLOAT32; ++ this->capabilities = ++ AO_CAP_MODE_MONO | AO_CAP_MODE_STEREO | AO_CAP_MODE_4CHANNEL | ++ AO_CAP_MODE_4_1CHANNEL | AO_CAP_MODE_5CHANNEL | AO_CAP_MODE_5_1CHANNEL | ++ AO_CAP_MIXER_VOL | AO_CAP_PCM_VOL | AO_CAP_MUTE_VOL | ++ AO_CAP_8BITS | AO_CAP_16BITS | AO_CAP_FLOAT32; + + this->sample_rate = 0; +- this->host = NULL; +- this->sink = NULL; +- ++ + this->ao_driver.get_capabilities = ao_pulse_get_capabilities; + this->ao_driver.get_property = ao_pulse_get_property; + this->ao_driver.set_property = ao_pulse_set_property; +@@ -541,33 +790,22 @@ static ao_driver_t *open_plugin (audio_d + this->ao_driver.close = ao_pulse_close; + this->ao_driver.exit = ao_pulse_exit; + this->ao_driver.get_gap_tolerance = ao_pulse_get_gap_tolerance; +- this->ao_driver.control = ao_pulse_ctrl; +- +- device = this->xine->config->register_string(this->xine->config, +- "audio.pulseaudio_device", +- "", +- _("device used for pulseaudio"), +- _("use 'server[:sink]' for setting the " +- "pulseaudio sink device."), +- 10, NULL, +- NULL); +- +- if (device && *device) { +- char *sep = strchr(device, ':'); +- if ( sep ) { +- this->host = strndup(device, sep-device); +- this->sink = strdup(&sep[1]); +- } else +- this->host = strdup(device); +- } +- +- pthread_mutex_init(&this->info_mutex, NULL); ++ this->ao_driver.control = ao_pulse_ctrl; + + xprintf (class->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: host %s sink %s\n", + this->host ? this->host : "(null)", this->sink ? this->sink : "(null)"); + + this->pa_class = class; + ++ pa_threaded_mainloop_lock(this->mainloop); ++ r = connect_context(this); ++ pa_threaded_mainloop_unlock(this->mainloop); ++ ++ if (r < 0) { ++ ao_pulse_exit((ao_driver_t *) this); ++ return NULL; ++ } ++ + return &this->ao_driver; + } + +@@ -587,13 +825,7 @@ static void dispose_class (audio_driver_ + + pulse_class_t *this = (pulse_class_t *) this_gen; + +- if ( this->context ) +- pa_context_unref(this->context); +- +- pa_threaded_mainloop_stop(this->mainloop); +- pa_threaded_mainloop_free(this->mainloop); +- +- free (this); ++ free(this); + } + + static void *init_class (xine_t *xine, void *data) { +@@ -606,25 +838,17 @@ static void *init_class (xine_t *xine, v + if (!this) + return NULL; + ++ this->xine = xine; + this->driver_class.open_plugin = open_plugin; + this->driver_class.get_identifier = get_identifier; + this->driver_class.get_description = get_description; + this->driver_class.dispose = dispose_class; + +- this->xine = xine; +- +- this->mainloop = pa_threaded_mainloop_new(); +- _x_assert(this->mainloop); +- +- pa_threaded_mainloop_start(this->mainloop); +- +- this->context = NULL; +- + return this; + } + + static const ao_info_t ao_info_pulse = { +- 6 ++ 12 + }; + + /* +@@ -636,5 +860,3 @@ const plugin_info_t xine_plugin_info[] E + { PLUGIN_AUDIO_OUT, 8, "pulseaudio", XINE_VERSION_CODE, &ao_info_pulse, init_class }, + { PLUGIN_NONE, 0, "", 0, NULL, NULL } + }; +- +- From 386e299c4adf4e4d4c11ec50336924783119973e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 9 Apr 2008 19:36:16 +0000 Subject: [PATCH 040/150] =?UTF-8?q?*=20Wed=20Apr=20=209=202008=20Ville=20S?= =?UTF-8?q?kytt=C3=A4=20=20-=20Apply=20upstrea?= =?UTF-8?q?m=20fixes=20for=20Quicktime=20(#441705)=20and=20Matroska=20regr?= =?UTF-8?q?essions=20=20=20introduced=20in=201.1.11.1.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib-1.1.11.1-mkv.patch | 21 +++++++++++++++++++++ xine-lib-1.1.11.1-qt.patch | 23 +++++++++++++++++++++++ xine-lib.spec | 12 ++++++++++-- 3 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 xine-lib-1.1.11.1-mkv.patch create mode 100644 xine-lib-1.1.11.1-qt.patch diff --git a/xine-lib-1.1.11.1-mkv.patch b/xine-lib-1.1.11.1-mkv.patch new file mode 100644 index 0000000..c835db1 --- /dev/null +++ b/xine-lib-1.1.11.1-mkv.patch @@ -0,0 +1,21 @@ + +# HG changeset patch +# User Darren Salt +# Date 1207353205 -3600 +# Node ID ff20b8db74eabc74b7b95da4c1b44fc5d7f2ec8c +# Parent 05ebc886fd30158b59a26e03cf2f6f3a52114b24 +Fix a regression in the Matroska demuxer. +One '&'... + +--- a/src/demuxers/ebml.c Fri Apr 04 18:35:33 2008 +0100 ++++ b/src/demuxers/ebml.c Sat Apr 05 00:53:25 2008 +0100 +@@ -327,7 +327,7 @@ char *ebml_alloc_read_ascii (ebml_parser + if (text) + { + text[elem->len] = '\0'; +- if (ebml_read_ascii (ebml, &elem, text)) ++ if (ebml_read_ascii (ebml, elem, text)) + return text; + free (text); + } + diff --git a/xine-lib-1.1.11.1-qt.patch b/xine-lib-1.1.11.1-qt.patch new file mode 100644 index 0000000..54a9c67 --- /dev/null +++ b/xine-lib-1.1.11.1-qt.patch @@ -0,0 +1,23 @@ + +# HG changeset patch +# User Darren Salt +# Date 1206976103 -3600 +# Node ID d8e1305c13820b82d896f7bc77d196b9c9645dd6 +# Parent 2cc583bdc498fd6c95b8a21c10e81a0cef4d63c6 +Revert a change which broke Quicktime atom parsing. + +--- a/src/demuxers/demux_qt.c Sun Mar 30 19:48:58 2008 +0100 ++++ b/src/demuxers/demux_qt.c Mon Mar 31 16:08:23 2008 +0100 +@@ -895,11 +895,6 @@ static qt_error parse_trak_atom (qt_trak + for (i = ATOM_PREAMBLE_SIZE; i < trak_atom_size - 4; i++) { + current_atom_size = _X_BE_32(&trak_atom[i - 4]); + current_atom = _X_BE_32(&trak_atom[i]); +- +- if (current_atom_size > trak_atom_size - i) { +- last_error = QT_NOT_A_VALID_FILE; +- goto free_trak; +- } + + if (current_atom == TKHD_ATOM) { + trak->flags = _X_BE_16(&trak_atom[i + 6]); + diff --git a/xine-lib.spec b/xine-lib.spec index a16b152..eb41b78 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -32,7 +32,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.11.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,7 +50,9 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # upstream patches # lennart said this was upstreamed already. :) -Patch100: http://0pointer.de/public/xine-pulse-rework2.patch +Patch100: http://0pointer.de/public/xine-pulse-rework2.patch +Patch101: %{name}-1.1.11.1-mkv.patch +Patch102: %{name}-1.1.11.1-qt.patch Provides: xine-lib(plugin-abi) = %{abiver} # X11 @@ -182,6 +184,8 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch6 -p1 -b .deepbind %patch100 -p1 -b .pulse-rework2 +%patch101 -p1 -b .mkv +%patch102 -p1 -b .qt # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -403,6 +407,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Apr 9 2008 Ville Skyttä - 1.1.11.1-3 +- Apply upstream fixes for Quicktime (#441705) and Matroska regressions + introduced in 1.1.11.1. + * Mon Apr 07 2008 Rex Dieter - 1.1.11.1-2 - pulse-rework2 patch (#439731) - -pulseaudio subpkg (#439731) From 93d0f06ea4a38fc9a391838d0e66c0621bd5b0e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 16 Apr 2008 21:05:40 +0000 Subject: [PATCH 041/150] =?UTF-8?q?*=20Wed=20Apr=2016=202008=20Ville=20Sky?= =?UTF-8?q?tt=C3=A4=20=20-=201.1.12-1=20-=201.?= =?UTF-8?q?1.12=20(plugin=20ABI=201.21);=20qt,=20mkv,=20and=20pulseaudio?= =?UTF-8?q?=20patches=20applied=20upstream.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.11.1-mkv.patch | 21 - xine-lib-1.1.11.1-qt.patch | 23 - xine-lib.spec | 22 +- xine-pulse-rework2.patch | 1039 ----------------------------------- 6 files changed, 13 insertions(+), 1100 deletions(-) delete mode 100644 xine-lib-1.1.11.1-mkv.patch delete mode 100644 xine-lib-1.1.11.1-qt.patch delete mode 100644 xine-pulse-rework2.patch diff --git a/.cvsignore b/.cvsignore index 907cc99..e68873d 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.11.1-pruned.tar.bz2 -xine-lib-1.1.11.1-autotools.patch.bz2 +xine-lib-1.1.12-pruned.tar.bz2 +xine-lib-1.1.12-autotools.patch.bz2 diff --git a/sources b/sources index 7c8f9d9..4a02333 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -b6a4fe9dd2ec80452870a8bfbb3974f0 xine-lib-1.1.11.1-pruned.tar.bz2 -c257bf0b964d25592f1c612149ae2c7a xine-lib-1.1.11.1-autotools.patch.bz2 +3f918af93f52e486fb8fd4dfec04f98f xine-lib-1.1.12-pruned.tar.bz2 +771565628e4dfcfc8657b1256b9f41ef xine-lib-1.1.12-autotools.patch.bz2 diff --git a/xine-lib-1.1.11.1-mkv.patch b/xine-lib-1.1.11.1-mkv.patch deleted file mode 100644 index c835db1..0000000 --- a/xine-lib-1.1.11.1-mkv.patch +++ /dev/null @@ -1,21 +0,0 @@ - -# HG changeset patch -# User Darren Salt -# Date 1207353205 -3600 -# Node ID ff20b8db74eabc74b7b95da4c1b44fc5d7f2ec8c -# Parent 05ebc886fd30158b59a26e03cf2f6f3a52114b24 -Fix a regression in the Matroska demuxer. -One '&'... - ---- a/src/demuxers/ebml.c Fri Apr 04 18:35:33 2008 +0100 -+++ b/src/demuxers/ebml.c Sat Apr 05 00:53:25 2008 +0100 -@@ -327,7 +327,7 @@ char *ebml_alloc_read_ascii (ebml_parser - if (text) - { - text[elem->len] = '\0'; -- if (ebml_read_ascii (ebml, &elem, text)) -+ if (ebml_read_ascii (ebml, elem, text)) - return text; - free (text); - } - diff --git a/xine-lib-1.1.11.1-qt.patch b/xine-lib-1.1.11.1-qt.patch deleted file mode 100644 index 54a9c67..0000000 --- a/xine-lib-1.1.11.1-qt.patch +++ /dev/null @@ -1,23 +0,0 @@ - -# HG changeset patch -# User Darren Salt -# Date 1206976103 -3600 -# Node ID d8e1305c13820b82d896f7bc77d196b9c9645dd6 -# Parent 2cc583bdc498fd6c95b8a21c10e81a0cef4d63c6 -Revert a change which broke Quicktime atom parsing. - ---- a/src/demuxers/demux_qt.c Sun Mar 30 19:48:58 2008 +0100 -+++ b/src/demuxers/demux_qt.c Mon Mar 31 16:08:23 2008 +0100 -@@ -895,11 +895,6 @@ static qt_error parse_trak_atom (qt_trak - for (i = ATOM_PREAMBLE_SIZE; i < trak_atom_size - 4; i++) { - current_atom_size = _X_BE_32(&trak_atom[i - 4]); - current_atom = _X_BE_32(&trak_atom[i]); -- -- if (current_atom_size > trak_atom_size - i) { -- last_error = QT_NOT_A_VALID_FILE; -- goto free_trak; -- } - - if (current_atom == TKHD_ATOM) { - trak->flags = _X_BE_16(&trak_atom[i + 6]); - diff --git a/xine-lib.spec b/xine-lib.spec index eb41b78..a1a11c8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -8,7 +8,7 @@ # http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html # - external dvdnav - not compatible as of 1.1.11 and 4.1.1 -%define abiver 1.20 +%define abiver 1.21 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -31,8 +31,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.11.1 -Release: 3%{?dist} +Version: 1.1.12 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -48,12 +48,6 @@ Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -# upstream patches -# lennart said this was upstreamed already. :) -Patch100: http://0pointer.de/public/xine-pulse-rework2.patch -Patch101: %{name}-1.1.11.1-mkv.patch -Patch102: %{name}-1.1.11.1-qt.patch - Provides: xine-lib(plugin-abi) = %{abiver} # X11 BuildRequires: libX11-devel @@ -183,10 +177,6 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind -%patch100 -p1 -b .pulse-rework2 -%patch101 -p1 -b .mkv -%patch102 -p1 -b .qt - # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -348,6 +338,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_opengl.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_raw.so %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_syncfb.so %if %{have_vidix} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_vidix.so @@ -398,15 +389,20 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root,-) %doc __docs/hackersguide/* %{_bindir}/xine-config +%{_bindir}/xine-list* %{_datadir}/aclocal/xine.m4 %{_includedir}/xine.h %{_includedir}/xine/ %{_libdir}/libxine.so %{_libdir}/pkgconfig/libxine.pc %{_mandir}/man1/xine-config.1* +%{_mandir}/man1/xine-list*.1* %changelog +* Wed Apr 16 2008 Ville Skyttä - 1.1.12-1 +- 1.1.12 (plugin ABI 1.21); qt, mkv, and pulseaudio patches applied upstream. + * Wed Apr 9 2008 Ville Skyttä - 1.1.11.1-3 - Apply upstream fixes for Quicktime (#441705) and Matroska regressions introduced in 1.1.11.1. diff --git a/xine-pulse-rework2.patch b/xine-pulse-rework2.patch deleted file mode 100644 index 7f29efb..0000000 --- a/xine-pulse-rework2.patch +++ /dev/null @@ -1,1039 +0,0 @@ ---- xine-lib-1.1.11.1/src/audio_out/audio_pulse_out.c 2008-03-28 15:24:49.000000000 +0100 -+++ xine-lib-1.1.11.1.lennart/src/audio_out/audio_pulse_out.c 2008-04-02 22:55:49.000000000 +0200 -@@ -1,28 +1,28 @@ --/* -- * Copyright (C) 2000-2007 the xine project -- * -+/* -*- Mode: C; c-basic-offset: 2; indent-tabs-mode: nil -*- */ -+ -+/* -+ * Copyright (C) 2000-2008 the xine project -+ * - * This file is part of xine, a free video player. -- * -+ * - * xine is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. -- * -+ * - * xine is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. -- * -+ * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA - * -- * ao plugin for pulseaudio (rename of polypaudio): -+ * ao plugin for PulseAudio: - * http://0pointer.de/lennart/projects/pulsaudio/ - * -- * originally written for polypaudio simple api. Lennart then suggested -- * using the async api for better control (such as volume), therefore, a lot -- * of this code comes from Lennart's patch to mplayer. -+ * Diego Petteno, Lennart Poettering - */ - - #ifdef HAVE_CONFIG_H -@@ -48,15 +48,9 @@ - - #define GAP_TOLERANCE AO_MAX_GAP - --/* CHECKME: should this be conditional on autotools? */ --extern const char *__progname; -- - typedef struct { - audio_driver_class_t driver_class; - xine_t *xine; -- -- struct pa_context *context; /*< Pulseaudio connection context */ -- struct pa_threaded_mainloop *mainloop; /*< Main event loop object */ - } pulse_class_t; - - typedef struct pulse_driver_s { -@@ -67,11 +61,13 @@ typedef struct pulse_driver_s { - - char *host; /*< The host to connect to */ - char *sink; /*< The sink to connect to */ -- struct pa_stream *stream; /*< Pulseaudio playback stream object */ - -- pthread_mutex_t info_mutex; /**< Mutex for info callback signaling */ -+ pa_threaded_mainloop *mainloop; /*< Main event loop object */ -+ pa_context *context; /*< Pulseaudio connection context */ -+ pa_stream *stream; /*< Pulseaudio playback stream object */ - - pa_volume_t swvolume; -+ int muted; - pa_cvolume cvolume; - - int capabilities; -@@ -82,67 +78,117 @@ typedef struct pulse_driver_s { - uint32_t bits_per_sample; - uint32_t bytes_per_frame; - -- uint32_t frames_written; -- - } pulse_driver_t; - - - /** -- * @brief Callback function called when a stream operation succeed -- * @param stream Stream which operation has succeeded -- * @param success The success value for the operation (ignored) -- * @param this_Gen pulse_driver_t pointer for the PulseAudio output -- * instance. -+ * @brief Callback function called when the state of the context is changed -+ * @param c Context which changed status -+ * @param this_gen pulse_class_t pointer for the PulseAudio output class - */ --static void __xine_pa_stream_success_callback(pa_stream *const stream, const int success, -- void *const mutex_gen) -+static void __xine_pa_context_state_callback(pa_context *c, void *this_gen) - { -- pthread_mutex_t *const completion_mutex = (pthread_mutex_t*)mutex_gen; -+ pulse_driver_t * this = (pulse_driver_t*) this_gen; -+ -+ switch (pa_context_get_state(c)) { -+ -+ case PA_CONTEXT_READY: -+ case PA_CONTEXT_TERMINATED: -+ case PA_CONTEXT_FAILED: -+ pa_threaded_mainloop_signal(this->mainloop, 0); -+ break; - -- pthread_mutex_unlock(completion_mutex); -+ case PA_CONTEXT_CONNECTING: -+ case PA_CONTEXT_UNCONNECTED: -+ case PA_CONTEXT_AUTHORIZING: -+ case PA_CONTEXT_SETTING_NAME: -+ break; -+ } - } - - /** -- * @brief Callback function called when the state of the context is changed -- * @param ctx Context which operation has succeeded -+ * @brief Callback function called when the state of the stream is changed -+ * @param s Stream that changed status - * @param this_gen pulse_driver_t pointer for the PulseAudio output - * instance. - */ --static void __xine_pa_context_status_callback(pa_context *const ctx, void *const this_gen) -+static void __xine_pa_stream_state_callback(pa_stream *s, void *this_gen) - { -- pulse_driver_t *const this = (pulse_driver_t*)this_gen; -+ pulse_driver_t * this = (pulse_driver_t*) this_gen; -+ -+ switch (pa_stream_get_state(s)) { -+ -+ case PA_STREAM_READY: -+ case PA_STREAM_TERMINATED: -+ case PA_STREAM_FAILED: -+ pa_threaded_mainloop_signal(this->mainloop, 0); -+ break; - -- switch (pa_context_get_state(ctx)) { -- case PA_CONTEXT_READY: -- case PA_CONTEXT_TERMINATED: -- case PA_CONTEXT_FAILED: -- pa_threaded_mainloop_signal(this->pa_class->mainloop, 0); -- break; -- -- case PA_CONTEXT_CONNECTING: -- case PA_CONTEXT_UNCONNECTED: -- case PA_CONTEXT_AUTHORIZING: -- case PA_CONTEXT_SETTING_NAME: -- break; -+ case PA_STREAM_UNCONNECTED: -+ case PA_STREAM_CREATING: -+ break; - } - } - - /** -- * @brief Callback function called when a context operation succeed -+ * @brief Callback function called when PA asks for more audio data. -+ * @param s Stream on which data is requested -+ * @param nbytes the number of bytes PA requested -+ * @param this_gen pulse_driver_t pointer for the PulseAudio output -+ * instance. -+ */ -+static void __xine_pa_stream_request_callback(pa_stream *s, size_t nbytes, void *this_gen) -+{ -+ pulse_driver_t * this = (pulse_driver_t*) this_gen; -+ -+ pa_threaded_mainloop_signal(this->mainloop, 0); -+} -+ -+/** -+ * @brief Callback function called when PA notifies about something -+ * @param s Stream on which the notification happened -+ * @param this_gen pulse_driver_t pointer for the PulseAudio output -+ * instance. -+ */ -+static void __xine_pa_stream_notify_callback(pa_stream *s, void *this_gen) -+{ -+ pulse_driver_t * this = (pulse_driver_t*) this_gen; -+ -+ pa_threaded_mainloop_signal(this->mainloop, 0); -+} -+ -+/** -+ * @brief Callback function called when PA completed an operation - * @param ctx Context which operation has succeeded -- * @param success The success value for the operation (ignored) -+ * @param nbytes the number of bytes PA requested - * @param this_gen pulse_driver_t pointer for the PulseAudio output - * instance. - */ --static void __xine_pa_context_success_callback(pa_context *const ctx, const int success, -- void *const this_gen) -+static void __xine_pa_stream_success_callback(pa_stream *s, int success, void *this_gen) - { -- pulse_driver_t *const this = (pulse_driver_t*)this_gen; -+ pulse_driver_t * this = (pulse_driver_t*) this_gen; - -- _x_assert(ctx); _x_assert(this); -- _x_assert(ctx == this->pa_class->context); -+ if (!success) -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: stream operation failed: %s\n", pa_strerror(pa_context_errno(this->context))); - -- pa_threaded_mainloop_signal(this->pa_class->mainloop, 0); -+ pa_threaded_mainloop_signal(this->mainloop, 0); -+} -+ -+/** -+ * @brief Callback function called when PA completed an operation -+ * @param c Context on which operation has succeeded -+ * @param nbytes the number of bytes PA requested -+ * @param this_gen pulse_driver_t pointer for the PulseAudio output -+ * instance. -+ */ -+static void __xine_pa_context_success_callback(pa_context *c, int success, void *this_gen) -+{ -+ pulse_driver_t *this = (pulse_driver_t*) this_gen; -+ -+ if (!success) -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: context operation failed: %s\n", pa_strerror(pa_context_errno(this->context))); -+ -+ pa_threaded_mainloop_signal(this->mainloop, 0); - } - - /** -@@ -156,14 +202,14 @@ static void __xine_pa_context_success_ca - * This function saves the volume field of the passed structure to the - * @c cvolume variable of the output instance. - */ --static void __xine_pa_sink_info_callback(pa_context *const ctx, const pa_sink_input_info *const info, -- const int is_last, void *const userdata) { -+static void __xine_pa_sink_info_callback(pa_context *c, const pa_sink_input_info *info, -+ int is_last, void *userdata) { - - pulse_driver_t *const this = (pulse_driver_t *) userdata; - - if (is_last < 0) { - xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: Failed to get sink input info: %s\n", -- pa_strerror(pa_context_errno(this->pa_class->context))); -+ pa_strerror(pa_context_errno(this->context))); - return; - } - -@@ -171,36 +217,90 @@ static void __xine_pa_sink_info_callback - return; - - this->cvolume = info->volume; -+ this->swvolume = pa_sw_volume_to_linear(pa_cvolume_avg(&info->volume)); -+ this->muted = info->mute; -+} -+ -+static int connect_context(pulse_driver_t *this) { -+ -+ if (this->context && (pa_context_get_state(this->context) == PA_CONTEXT_FAILED || -+ pa_context_get_state(this->context) == PA_CONTEXT_TERMINATED)) { -+ pa_context_unref(this->context); -+ this->context = NULL; -+ } -+ -+ if (!this->context) { -+ char fn[PATH_MAX], *p; -+ -+ if (pa_get_binary_name(fn, sizeof(fn))) -+ p = pa_path_get_filename(fn); -+ else -+ p = "Xine"; - -- pthread_mutex_unlock(&this->info_mutex); -+ this->context = pa_context_new(pa_threaded_mainloop_get_api(this->mainloop), p); -+ _x_assert(this->context); -+ -+ pa_context_set_state_callback(this->context, __xine_pa_context_state_callback, this); -+ } -+ -+ if (pa_context_get_state(this->context) == PA_CONTEXT_UNCONNECTED) { -+ -+ if (pa_context_connect(this->context, this->host, 0, NULL) < 0) { -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to connect context object %s\n", pa_strerror(pa_context_errno(this->context))); -+ return -1; -+ } -+ } -+ -+ for (;;) { -+ pa_context_state_t state = pa_context_get_state(this->context); -+ -+ if (state == PA_CONTEXT_FAILED || state == PA_CONTEXT_TERMINATED) { -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to connect context object: %s\n", pa_strerror(pa_context_errno(this->context))); -+ return -1; -+ } -+ -+ if (state == PA_CONTEXT_READY) -+ break; -+ -+ pa_threaded_mainloop_wait(this->mainloop); -+ } -+ -+ return 0; - } - - /* - * open the audio device for writing to - */ - static int ao_pulse_open(ao_driver_t *this_gen, -- uint32_t bits, uint32_t rate, int mode) -+ uint32_t bits, uint32_t rate, int mode) - { - pulse_driver_t *this = (pulse_driver_t *) this_gen; -- struct pa_sample_spec ss; -- struct pa_buffer_attr a; -- pa_stream_state_t streamstate; -+ pa_sample_spec ss; -+ pa_channel_map cm; -+ int r; - - xprintf (this->xine, XINE_VERBOSITY_DEBUG, -- "audio_pulse_out: ao_open bits=%d rate=%d, mode=%d\n", bits, rate, mode); -+ "audio_pulse_out: ao_open bits=%d rate=%d, mode=%d\n", bits, rate, mode); - - if ( (mode & this->capabilities) == 0 ) { - xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: unsupported mode %08x\n", mode); - return 0; - } - -+ pa_threaded_mainloop_lock(this->mainloop); -+ - if (this->stream) { - -- if ( mode == this->mode && rate == this->sample_rate && -- bits == this->bits_per_sample ) -+ if (mode == this->mode && rate == this->sample_rate && -+ bits == this->bits_per_sample) { -+ -+ pa_threaded_mainloop_unlock(this->mainloop); - return this->sample_rate; -+ } - -- this_gen->close(this_gen); -+ pa_stream_disconnect(this->stream); -+ pa_stream_unref(this->stream); -+ this->stream = NULL; - } - - this->mode = mode; -@@ -221,6 +321,8 @@ static int ao_pulse_open(ao_driver_t *th - case 32: - ss.format = PA_SAMPLE_FLOAT32NE; - break; -+ default: -+ _x_assert(!"Should not be reached"); - } - - if (!pa_sample_spec_valid(&ss)) { -@@ -228,70 +330,86 @@ static int ao_pulse_open(ao_driver_t *th - goto fail; - } - -- if ( this->pa_class->context && pa_context_get_state(this->pa_class->context) > PA_CONTEXT_READY ) { -- pa_context_unref(this->pa_class->context); -- this->pa_class->context = NULL; -- } -- -- if ( this->pa_class->context == NULL ) { -- this->pa_class->context = pa_context_new(pa_threaded_mainloop_get_api(this->pa_class->mainloop), -- __progname); -- } -- -- pa_context_ref(this->pa_class->context); -+ cm.channels = ss.channels; - -- if ( pa_context_get_state(this->pa_class->context) == PA_CONTEXT_UNCONNECTED ) { -- int ret; -+ switch (mode) { -+ case AO_CAP_MODE_MONO: -+ cm.map[0] = PA_CHANNEL_POSITION_MONO; -+ _x_assert(cm.channels == 1); -+ break; - -- pa_threaded_mainloop_lock(this->pa_class->mainloop); -- ret = pa_context_connect(this->pa_class->context, this->host, 1, NULL); -- if ( ret < 0 ) -- goto fail_unlock; -+ case AO_CAP_MODE_STEREO: -+ cm.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT; -+ cm.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT; -+ _x_assert(cm.channels == 2); -+ break; - -- pa_context_set_state_callback(this->pa_class->context, __xine_pa_context_status_callback, this); -+ case AO_CAP_MODE_4CHANNEL: -+ cm.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT; -+ cm.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT; -+ cm.map[2] = PA_CHANNEL_POSITION_REAR_LEFT; -+ cm.map[3] = PA_CHANNEL_POSITION_REAR_RIGHT; -+ _x_assert(cm.channels == 4); -+ break; - -- pa_threaded_mainloop_wait(this->pa_class->mainloop); -- pa_threaded_mainloop_unlock(this->pa_class->mainloop); -+ case AO_CAP_MODE_4_1CHANNEL: -+ case AO_CAP_MODE_5CHANNEL: -+ case AO_CAP_MODE_5_1CHANNEL: -+ cm.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT; -+ cm.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT; -+ cm.map[2] = PA_CHANNEL_POSITION_REAR_LEFT; -+ cm.map[3] = PA_CHANNEL_POSITION_REAR_RIGHT; -+ cm.map[4] = PA_CHANNEL_POSITION_FRONT_CENTER; -+ cm.map[5] = PA_CHANNEL_POSITION_LFE; -+ cm.channels = 6; -+ break; -+ default: -+ _x_assert(!"Should not be reached"); - } - -- if (pa_context_get_state(this->pa_class->context) != PA_CONTEXT_READY) { -- xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: Failed to connect to server: %s\n", -- pa_strerror(pa_context_errno(this->pa_class->context))); -+ if (!pa_channel_map_valid(&cm)) { -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: Invalid channel map\n"); - goto fail; - } - -- this->stream = pa_stream_new(this->pa_class->context, "audio stream", &ss, NULL); -+ if (connect_context(this) < 0) -+ goto fail; -+ -+ _x_assert(!this->stream); -+ this->stream = pa_stream_new(this->context, "Audio Stream", &ss, &cm); - _x_assert(this->stream); - -- a.maxlength = pa_bytes_per_second(&ss)*1; -- a.tlength = a.maxlength*9/10; -- a.prebuf = a.tlength/2; -- a.minreq = a.tlength/10; -+ pa_stream_set_state_callback(this->stream, __xine_pa_stream_state_callback, this); -+ pa_stream_set_write_callback(this->stream, __xine_pa_stream_request_callback, this); -+ pa_stream_set_latency_update_callback(this->stream, __xine_pa_stream_notify_callback, this); - -- pa_stream_connect_playback(this->stream, this->sink, &a, -- PA_STREAM_INTERPOLATE_TIMING|PA_STREAM_AUTO_TIMING_UPDATE, -+ r = pa_stream_connect_playback(this->stream, this->sink, NULL, -+ PA_STREAM_INTERPOLATE_TIMING|PA_STREAM_AUTO_TIMING_UPDATE, - NULL, NULL); - -- do { -- xine_usec_sleep (100); -+ for (;;) { -+ pa_context_state_t cstate = pa_context_get_state(this->context); -+ pa_stream_state_t sstate = pa_stream_get_state(this->stream); -+ -+ if (cstate == PA_CONTEXT_FAILED || cstate == PA_CONTEXT_TERMINATED || -+ sstate == PA_STREAM_FAILED || sstate == PA_STREAM_TERMINATED) { -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to connect context object: %s\n", pa_strerror(pa_context_errno(this->context))); -+ goto fail; -+ } - -- streamstate = pa_stream_get_state(this->stream); -- } while (streamstate < PA_STREAM_READY); -- -- if (streamstate != PA_STREAM_READY) { -- xprintf (this->xine, XINE_VERBOSITY_LOG, "audio_pulse_out: Failed to connect to server: %s\n", -- pa_strerror(pa_context_errno(this->pa_class->context))); -- goto fail; -+ if (sstate == PA_STREAM_READY) -+ break; -+ -+ pa_threaded_mainloop_wait(this->mainloop); - } -- this->frames_written = 0; - -- this->ao_driver.set_property(this, AO_PROP_PCM_VOL, 100); -+ pa_threaded_mainloop_unlock(this->mainloop); - - return this->sample_rate; - -- fail_unlock: -- pa_threaded_mainloop_unlock(this->pa_class->mainloop); - fail: -+ -+ pa_threaded_mainloop_unlock(this->mainloop); - this_gen->close(this_gen); - return 0; - } -@@ -319,217 +437,348 @@ static int ao_pulse_write(ao_driver_t *t - { - pulse_driver_t *this = (pulse_driver_t *) this_gen; - size_t size = num_frames * this->bytes_per_frame; -- int ret = 0; -- -- if ( !this->stream || !this->pa_class->context) -- return -1; -- -- switch( pa_stream_get_state(this->stream) ) { -- case PA_STREAM_READY: -- while (size > 0) { -- size_t l; -+ int ret = -1; -+ size_t done = 0; - -- while (!(l = pa_stream_writable_size(this->stream))) { -- xine_usec_sleep (10000); -- } -+ pa_threaded_mainloop_lock(this->mainloop); - -- if (l > size) -- l = size; -- -- pa_stream_write(this->stream, data, l, NULL, 0, PA_SEEK_RELATIVE); -- data = (int16_t *) ((uint8_t*) data + l); -- size -= l; -- } -+ while (size > 0) { -+ size_t l; - -- this->frames_written += num_frames; -+ for (;;) { - -- if (pa_stream_get_state(this->stream) == PA_STREAM_READY) -- ret = 1; -+ if (!this->stream || -+ !this->context || -+ pa_context_get_state(this->context) != PA_CONTEXT_READY || -+ pa_stream_get_state(this->stream) != PA_STREAM_READY) -+ goto finish; - -- break; -+ if ((l = pa_stream_writable_size(this->stream)) == (size_t) -1) -+ goto finish; -+ -+ if (l > 0) -+ break; -+ -+ pa_threaded_mainloop_wait(this->mainloop); -+ } -+ -+ if (l > size) -+ l = size; -+ -+ pa_stream_write(this->stream, data, l, NULL, 0, PA_SEEK_RELATIVE); -+ data = (int16_t *) ((uint8_t*) data + l); -+ size -= l; -+ done += l; - } - -+ ret = done; -+ -+finish: -+ -+ pa_threaded_mainloop_unlock(this->mainloop); -+ -+/* fprintf(stderr, "write-out\n"); */ -+ - return ret; --} - -+} - - static int ao_pulse_delay (ao_driver_t *this_gen) - { - pulse_driver_t *this = (pulse_driver_t *) this_gen; -- pa_usec_t latency = 0; -- unsigned int delay_frames; -+ int ret = 0; - -- if ( ! this->stream ) return this->frames_written; -+/* fprintf(stderr, "delay-in\n"); */ - -- if (pa_stream_get_latency(this->stream, &latency, NULL) < 0) { -- pa_context_unref(this->pa_class->context); -- this->pa_class->context = NULL; -+ pa_threaded_mainloop_lock(this->mainloop); - -- pa_stream_disconnect(this->stream); -- pa_stream_unref(this->stream); -- this->stream = NULL; -+ for (;;) { -+ pa_usec_t latency = 0; - -- return 0; -+ if (!this->stream || -+ !this->context || -+ pa_context_get_state(this->context) != PA_CONTEXT_READY || -+ pa_stream_get_state(this->stream) != PA_STREAM_READY) -+ goto finish; -+ -+ if (pa_stream_get_latency(this->stream, &latency, NULL) >= 0) { -+ ret = (int) ((latency * this->sample_rate) / 1000000); -+ goto finish; -+ } -+ -+ if (pa_context_errno(this->context) != PA_ERR_NODATA) { -+ xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: failed to query latency: %s\n", pa_strerror(pa_context_errno(this->context))); -+ goto finish; -+ } -+ -+ pa_threaded_mainloop_wait(this->mainloop); - } - -- /* convert latency (us) to frame units. */ -- delay_frames = (int)(latency * this->sample_rate / 1000000); -+finish: - -- if( delay_frames > this->frames_written ) -- return this->frames_written; -- else -- return delay_frames; -+ pa_threaded_mainloop_unlock(this->mainloop); -+ -+ return ret; - } - - static void ao_pulse_close(ao_driver_t *this_gen) - { - pulse_driver_t *this = (pulse_driver_t *) this_gen; -- -- if (this->stream) { -- if (pa_stream_get_state(this->stream) == PA_STREAM_READY) { -- pthread_mutex_t completion_callback = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_lock(&completion_callback); -- pa_stream_drain(this->stream, __xine_pa_stream_success_callback, &completion_callback); - -- pthread_mutex_lock(&completion_callback); -- pthread_mutex_destroy(&completion_callback); -- } -+ pa_threaded_mainloop_lock(this->mainloop); - -+ if (this->stream) { - pa_stream_disconnect(this->stream); - pa_stream_unref(this->stream); - this->stream = NULL; -- -- pa_context_unref(this->pa_class->context); - } -+ -+ pa_threaded_mainloop_unlock(this->mainloop); - } - - static uint32_t ao_pulse_get_capabilities (ao_driver_t *this_gen) { - pulse_driver_t *this = (pulse_driver_t *) this_gen; -+ - return this->capabilities; - } - --static void ao_pulse_exit(ao_driver_t *this_gen) --{ -+static void ao_pulse_exit(ao_driver_t *this_gen) { - pulse_driver_t *this = (pulse_driver_t *) this_gen; - -- free (this); -+ ao_pulse_close(this_gen); -+ -+ pa_threaded_mainloop_lock(this->mainloop); -+ -+ if (this->context) { -+ pa_context_disconnect(this->context); -+ pa_context_unref(this->context); -+ } -+ -+ pa_threaded_mainloop_unlock(this->mainloop); -+ -+ pa_threaded_mainloop_free(this->mainloop); -+ -+ free(this->host); -+ free(this->sink); -+ free(this); -+} -+ -+static int wait_for_operation(pulse_driver_t *this, pa_operation *o) { -+ -+ for (;;) { -+ -+ if (!this->stream || -+ !this->context || -+ pa_context_get_state(this->context) != PA_CONTEXT_READY || -+ pa_stream_get_state(this->stream) != PA_STREAM_READY) -+ return -1; -+ -+ if (pa_operation_get_state(o) != PA_OPERATION_RUNNING) -+ return 0; -+ -+ pa_threaded_mainloop_wait(this->mainloop); -+ } - } - - static int ao_pulse_get_property (ao_driver_t *this_gen, int property) { - pulse_driver_t *this = (pulse_driver_t *) this_gen; - int result = 0; -+ pa_operation *o = NULL; - -- if ( ! this->stream || ! this->pa_class->context ) -+ pa_threaded_mainloop_lock(this->mainloop); -+ -+ if (!this->stream || -+ !this->context || -+ pa_context_get_state(this->context) != PA_CONTEXT_READY || -+ pa_stream_get_state(this->stream) != PA_STREAM_READY) { -+ pa_threaded_mainloop_unlock(this->mainloop); - return 0; -+ } - - switch(property) { -- case AO_PROP_PCM_VOL: -- case AO_PROP_MIXER_VOL: -- { -- pthread_mutex_lock(&this->info_mutex); -- pa_operation *o = pa_context_get_sink_input_info(this->pa_class->context, -- pa_stream_get_index(this->stream), -- __xine_pa_sink_info_callback, this); -- if ( ! o ) return 0; -- pthread_mutex_lock(&this->info_mutex); pthread_mutex_unlock(&this->info_mutex); -- -- result = (pa_sw_volume_to_linear(this->swvolume)*100); -- } -- break; - -- case AO_PROP_MUTE_VOL: -- result = pa_cvolume_is_muted(&this->cvolume); -- break; -+ case AO_PROP_MUTE_VOL: -+ case AO_PROP_PCM_VOL: -+ case AO_PROP_MIXER_VOL: -+ -+ o = pa_context_get_sink_input_info(this->context, pa_stream_get_index(this->stream), -+ __xine_pa_sink_info_callback, this); -+ -+ break; -+ } -+ -+ if (o) { -+ wait_for_operation(this, o); -+ pa_operation_unref(o); - } -- -+ -+ switch(property) { -+ -+ case AO_PROP_MUTE_VOL: -+ result = this->muted; -+ break; -+ -+ case AO_PROP_PCM_VOL: -+ case AO_PROP_MIXER_VOL: -+ result = (int) (pa_sw_volume_to_linear(this->swvolume)*100); -+ break; -+ } -+ -+ pa_threaded_mainloop_unlock(this->mainloop); -+ - return result; - } - - static int ao_pulse_set_property (ao_driver_t *this_gen, int property, int value) { - pulse_driver_t *this = (pulse_driver_t *) this_gen; - int result = ~value; -+ pa_operation *o = NULL; - -- if ( ! this->stream || ! this->pa_class->context ) -- return result; -+ pa_threaded_mainloop_lock(this->mainloop); -+ -+ if (!this->stream || -+ !this->context || -+ pa_context_get_state(this->context) != PA_CONTEXT_READY || -+ pa_stream_get_state(this->stream) != PA_STREAM_READY) { -+ pa_threaded_mainloop_unlock(this->mainloop); -+ return 0; -+ } - - switch(property) { -- case AO_PROP_PCM_VOL: -- case AO_PROP_MIXER_VOL: -- this->swvolume = pa_sw_volume_from_linear((double)value/100.0); -- pa_cvolume_set(&this->cvolume, pa_stream_get_sample_spec(this->stream)->channels, this->swvolume); -- -- pa_context_set_sink_input_volume(this->pa_class->context, pa_stream_get_index(this->stream), -- &this->cvolume, __xine_pa_context_success_callback, this); -- -- result = value; -- break; -- -- case AO_PROP_MUTE_VOL: -- if ( value ) -- pa_cvolume_mute(&this->cvolume, pa_stream_get_sample_spec(this->stream)->channels); -- else -+ case AO_PROP_PCM_VOL: -+ case AO_PROP_MIXER_VOL: -+ -+ this->swvolume = pa_sw_volume_from_linear((double)value/100.0); - pa_cvolume_set(&this->cvolume, pa_stream_get_sample_spec(this->stream)->channels, this->swvolume); - -- pa_context_set_sink_input_volume(this->pa_class->context, pa_stream_get_index(this->stream), -- &this->cvolume, __xine_pa_context_success_callback, this); -- -- result = value; -- break; -+ o = pa_context_set_sink_input_volume(this->context, pa_stream_get_index(this->stream), -+ &this->cvolume, __xine_pa_context_success_callback, this); -+ -+ result = value; -+ break; -+ -+ case AO_PROP_MUTE_VOL: -+ -+ this->muted = value; -+ -+ o = pa_context_set_sink_input_mute(this->context, pa_stream_get_index(this->stream), -+ value, __xine_pa_context_success_callback, this); -+ -+ result = value; -+ } -+ -+ if (o) { -+ wait_for_operation(this, o); -+ pa_operation_unref(o); - } -- -+ -+ pa_threaded_mainloop_unlock(this->mainloop); -+ - return result; - } - - static int ao_pulse_ctrl(ao_driver_t *this_gen, int cmd, ...) { - pulse_driver_t *this = (pulse_driver_t *) this_gen; -+ pa_operation *o = NULL; -+ -+ pa_threaded_mainloop_lock(this->mainloop); - -- if ( ! this->stream ) return 0; -+ if (!this->stream || -+ !this->context || -+ pa_context_get_state(this->context) != PA_CONTEXT_READY || -+ pa_stream_get_state(this->stream) != PA_STREAM_READY) { -+ pa_threaded_mainloop_unlock(this->mainloop); -+ return 0; -+ } - - switch (cmd) { - -- case AO_CTRL_FLUSH_BUFFERS: -- _x_assert(this->stream && this->pa_class->context); -+ case AO_CTRL_FLUSH_BUFFERS: - -- if(pa_stream_get_state(this->stream) == PA_STREAM_READY) { -- pthread_mutex_t completion_callback = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_lock(&completion_callback); -- pa_stream_flush(this->stream, __xine_pa_stream_success_callback, &completion_callback); -+ o = pa_stream_flush(this->stream, __xine_pa_stream_success_callback, this); -+ break; - -- pthread_mutex_lock(&completion_callback); -- pthread_mutex_destroy(&completion_callback); -- } -+ case AO_CTRL_PLAY_RESUME: -+ case AO_CTRL_PLAY_PAUSE: - -- this->frames_written = 0; -+ o = pa_stream_cork(this->stream, cmd == AO_CTRL_PLAY_PAUSE, __xine_pa_stream_success_callback, this); -+ break; -+ } - -- break; -+ if (o) { -+ wait_for_operation(this, o); -+ pa_operation_unref(o); - } - -+ pa_threaded_mainloop_unlock(this->mainloop); -+ - return 0; - } - - static ao_driver_t *open_plugin (audio_driver_class_t *class_gen, const void *data) { - pulse_class_t *class = (pulse_class_t *) class_gen; - pulse_driver_t *this; -- char *device; -+ const char* device; -+ int r; - - lprintf ("audio_pulse_out: open_plugin called\n"); - - this = (pulse_driver_t *) xine_xmalloc (sizeof (pulse_driver_t)); - if (!this) - return NULL; -+ - this->xine = class->xine; -+ this->host = NULL; -+ this->sink = NULL; -+ this->context = NULL; -+ this->mainloop = NULL; -+ -+ device = class->xine->config->register_string(class->xine->config, -+ "audio.pulseaudio_device", -+ "", -+ _("device used for pulseaudio"), -+ _("use 'server[:sink]' for setting the " -+ "pulseaudio sink device."), -+ 10, NULL, -+ NULL); -+ -+ if (device && *device) { -+ char *sep = strrchr(device, ':'); -+ if ( sep ) { -+ if (!(this->host = strndup(device, sep-device))) { -+ free(this); -+ return NULL; -+ } -+ -+ if (!(this->sink = strdup(sep+1))) { -+ free(this->host); -+ free(this); -+ return NULL; -+ } -+ } else { -+ -+ if (!(this->host = strdup(device))) { -+ free(this); -+ return NULL; -+ } -+ } -+ } -+ -+ this->mainloop = pa_threaded_mainloop_new(); -+ _x_assert(this->mainloop); -+ pa_threaded_mainloop_start(this->mainloop); - - /* - * set capabilities - */ -- this->capabilities = AO_CAP_MODE_MONO | AO_CAP_MODE_STEREO | AO_CAP_MODE_4CHANNEL | -- AO_CAP_MODE_4_1CHANNEL | AO_CAP_MODE_5CHANNEL | -- AO_CAP_MODE_5_1CHANNEL | AO_CAP_MIXER_VOL | -- AO_CAP_PCM_VOL | AO_CAP_MUTE_VOL | AO_CAP_8BITS | -- AO_CAP_16BITS | AO_CAP_FLOAT32; -+ this->capabilities = -+ AO_CAP_MODE_MONO | AO_CAP_MODE_STEREO | AO_CAP_MODE_4CHANNEL | -+ AO_CAP_MODE_4_1CHANNEL | AO_CAP_MODE_5CHANNEL | AO_CAP_MODE_5_1CHANNEL | -+ AO_CAP_MIXER_VOL | AO_CAP_PCM_VOL | AO_CAP_MUTE_VOL | -+ AO_CAP_8BITS | AO_CAP_16BITS | AO_CAP_FLOAT32; - - this->sample_rate = 0; -- this->host = NULL; -- this->sink = NULL; -- -+ - this->ao_driver.get_capabilities = ao_pulse_get_capabilities; - this->ao_driver.get_property = ao_pulse_get_property; - this->ao_driver.set_property = ao_pulse_set_property; -@@ -541,33 +790,22 @@ static ao_driver_t *open_plugin (audio_d - this->ao_driver.close = ao_pulse_close; - this->ao_driver.exit = ao_pulse_exit; - this->ao_driver.get_gap_tolerance = ao_pulse_get_gap_tolerance; -- this->ao_driver.control = ao_pulse_ctrl; -- -- device = this->xine->config->register_string(this->xine->config, -- "audio.pulseaudio_device", -- "", -- _("device used for pulseaudio"), -- _("use 'server[:sink]' for setting the " -- "pulseaudio sink device."), -- 10, NULL, -- NULL); -- -- if (device && *device) { -- char *sep = strchr(device, ':'); -- if ( sep ) { -- this->host = strndup(device, sep-device); -- this->sink = strdup(&sep[1]); -- } else -- this->host = strdup(device); -- } -- -- pthread_mutex_init(&this->info_mutex, NULL); -+ this->ao_driver.control = ao_pulse_ctrl; - - xprintf (class->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: host %s sink %s\n", - this->host ? this->host : "(null)", this->sink ? this->sink : "(null)"); - - this->pa_class = class; - -+ pa_threaded_mainloop_lock(this->mainloop); -+ r = connect_context(this); -+ pa_threaded_mainloop_unlock(this->mainloop); -+ -+ if (r < 0) { -+ ao_pulse_exit((ao_driver_t *) this); -+ return NULL; -+ } -+ - return &this->ao_driver; - } - -@@ -587,13 +825,7 @@ static void dispose_class (audio_driver_ - - pulse_class_t *this = (pulse_class_t *) this_gen; - -- if ( this->context ) -- pa_context_unref(this->context); -- -- pa_threaded_mainloop_stop(this->mainloop); -- pa_threaded_mainloop_free(this->mainloop); -- -- free (this); -+ free(this); - } - - static void *init_class (xine_t *xine, void *data) { -@@ -606,25 +838,17 @@ static void *init_class (xine_t *xine, v - if (!this) - return NULL; - -+ this->xine = xine; - this->driver_class.open_plugin = open_plugin; - this->driver_class.get_identifier = get_identifier; - this->driver_class.get_description = get_description; - this->driver_class.dispose = dispose_class; - -- this->xine = xine; -- -- this->mainloop = pa_threaded_mainloop_new(); -- _x_assert(this->mainloop); -- -- pa_threaded_mainloop_start(this->mainloop); -- -- this->context = NULL; -- - return this; - } - - static const ao_info_t ao_info_pulse = { -- 6 -+ 12 - }; - - /* -@@ -636,5 +860,3 @@ const plugin_info_t xine_plugin_info[] E - { PLUGIN_AUDIO_OUT, 8, "pulseaudio", XINE_VERSION_CODE, &ao_info_pulse, init_class }, - { PLUGIN_NONE, 0, "", 0, NULL, NULL } - }; -- -- From 0faa6e51ca66bf2e07749126c6ffcc8b046fedc8 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 24 Apr 2008 11:57:39 +0000 Subject: [PATCH 042/150] * Thu Apr 24 2008 Rex Dieter - 1.1.12-2 - CVE-2008-1878 (#443056) --- xine-lib-1.1.12-CVE-2008-1878.patch | 16 ++++++++++++++++ xine-lib.spec | 7 ++++++- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 xine-lib-1.1.12-CVE-2008-1878.patch diff --git a/xine-lib-1.1.12-CVE-2008-1878.patch b/xine-lib-1.1.12-CVE-2008-1878.patch new file mode 100644 index 0000000..b51f875 --- /dev/null +++ b/xine-lib-1.1.12-CVE-2008-1878.patch @@ -0,0 +1,16 @@ +diff -up xine-lib-1.1.12/src/demuxers/demux_nsf.c.CVE-2008-1878 xine-lib-1.1.12/src/demuxers/demux_nsf.c +--- xine-lib-1.1.12/src/demuxers/demux_nsf.c.CVE-2008-1878 2008-03-28 09:24:50.000000000 -0500 ++++ xine-lib-1.1.12/src/demuxers/demux_nsf.c 2008-04-24 06:52:45.000000000 -0500 +@@ -106,9 +106,9 @@ static int open_nsf_file(demux_nsf_t *th + + this->total_songs = header[6]; + this->current_song = header[7]; +- this->title = strdup(&header[0x0E]); +- this->artist = strdup(&header[0x2E]); +- this->copyright = strdup(&header[0x4E]); ++ this->title = strndup((char*)&header[0x0E], 0x20); ++ this->artist = strndup((char*)&header[0x2E], 0x20); ++ this->copyright = strndup((char*)&header[0x4E], 0x20); + + this->filesize = this->input->get_length(this->input); + diff --git a/xine-lib.spec b/xine-lib.spec index a1a11c8..68e9eb2 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -32,7 +32,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.12 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -46,6 +46,7 @@ Source2: %{name}-mk-autotools-patch.sh Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch +Patch7: %{name}-1.1.12-CVE-2008-1878.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Provides: xine-lib(plugin-abi) = %{abiver} @@ -176,6 +177,7 @@ touch -r m4/optimizations.m4 m4/optimizations.m4.stamp touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind +%patch7 -p1 -b .CVE-2008-1878 # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -400,6 +402,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Apr 24 2008 Rex Dieter - 1.1.12-2 +- CVE-2008-1878 (#443056) + * Wed Apr 16 2008 Ville Skyttä - 1.1.12-1 - 1.1.12 (plugin ABI 1.21); qt, mkv, and pulseaudio patches applied upstream. From 0566d7f607c63285af664f2015f6e26149726e0d Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 24 Apr 2008 13:16:29 +0000 Subject: [PATCH 043/150] omit tracking bug id --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 68e9eb2..81bd57b 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -403,7 +403,7 @@ rm -rf $RPM_BUILD_ROOT %changelog * Thu Apr 24 2008 Rex Dieter - 1.1.12-2 -- CVE-2008-1878 (#443056) +- CVE-2008-1878 * Wed Apr 16 2008 Ville Skyttä - 1.1.12-1 - 1.1.12 (plugin ABI 1.21); qt, mkv, and pulseaudio patches applied upstream. From 1d878d9973c8d17678c4e38f5107f170ea2ee7f5 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 24 Apr 2008 15:22:17 +0000 Subject: [PATCH 044/150] comment to consider move of -pulseaudio to main pkg --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 81bd57b..76ebc23 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -2,7 +2,7 @@ # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? # http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html -# - move pulseaudio to main package from -extras? +# - move -pulseaudio to main package? # http://fedoraproject.org/wiki/Releases/FeaturePulseaudio # --> not yet: # http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html From faddf92672abb22cf7c684692926727122256cec Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 27 Apr 2008 20:42:51 +0000 Subject: [PATCH 045/150] * Sun Apr 27 2008 Kevin Kofler - 1.1.12-3 - rebuild for new ImageMagick (6.4.0.10) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 76ebc23..e1c6012 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -32,7 +32,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.12 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -402,6 +402,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Apr 27 2008 Kevin Kofler - 1.1.12-3 +- rebuild for new ImageMagick (6.4.0.10) + * Thu Apr 24 2008 Rex Dieter - 1.1.12-2 - CVE-2008-1878 From 33738f1f9eb3b1802f3fc6f6d655d09183b064d5 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 15 Aug 2008 19:38:41 +0000 Subject: [PATCH 046/150] * Fri Aug 15 2008 Rex Dieter - 1.1.15-1 - xine-lib-1.1.15, plugin ABI 1.24 (rh#455752, CVE-2008-3231) - Obsoletes: -arts (f9+) - move -pulseaudio into main pkg --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.12-CVE-2008-1878.patch | 16 -------- xine-lib.spec | 60 +++++++++++++++-------------- 4 files changed, 36 insertions(+), 48 deletions(-) delete mode 100644 xine-lib-1.1.12-CVE-2008-1878.patch diff --git a/.cvsignore b/.cvsignore index e68873d..3929296 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.12-pruned.tar.bz2 -xine-lib-1.1.12-autotools.patch.bz2 +xine-lib-1.1.15-autotools.patch.bz2 +xine-lib-1.1.15-pruned.tar.bz2 diff --git a/sources b/sources index 4a02333..15195de 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -3f918af93f52e486fb8fd4dfec04f98f xine-lib-1.1.12-pruned.tar.bz2 -771565628e4dfcfc8657b1256b9f41ef xine-lib-1.1.12-autotools.patch.bz2 +ffd74ec893a5f1167c69987a68f436fd xine-lib-1.1.15-autotools.patch.bz2 +acdbdc024382afac111eb076304448ed xine-lib-1.1.15-pruned.tar.bz2 diff --git a/xine-lib-1.1.12-CVE-2008-1878.patch b/xine-lib-1.1.12-CVE-2008-1878.patch deleted file mode 100644 index b51f875..0000000 --- a/xine-lib-1.1.12-CVE-2008-1878.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up xine-lib-1.1.12/src/demuxers/demux_nsf.c.CVE-2008-1878 xine-lib-1.1.12/src/demuxers/demux_nsf.c ---- xine-lib-1.1.12/src/demuxers/demux_nsf.c.CVE-2008-1878 2008-03-28 09:24:50.000000000 -0500 -+++ xine-lib-1.1.12/src/demuxers/demux_nsf.c 2008-04-24 06:52:45.000000000 -0500 -@@ -106,9 +106,9 @@ static int open_nsf_file(demux_nsf_t *th - - this->total_songs = header[6]; - this->current_song = header[7]; -- this->title = strdup(&header[0x0E]); -- this->artist = strdup(&header[0x2E]); -- this->copyright = strdup(&header[0x4E]); -+ this->title = strndup((char*)&header[0x0E], 0x20); -+ this->artist = strndup((char*)&header[0x2E], 0x20); -+ this->copyright = strndup((char*)&header[0x4E], 0x20); - - this->filesize = this->input->get_length(this->input); - diff --git a/xine-lib.spec b/xine-lib.spec index e1c6012..aea8a4c 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -2,13 +2,10 @@ # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? # http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html -# - move -pulseaudio to main package? -# http://fedoraproject.org/wiki/Releases/FeaturePulseaudio -# --> not yet: -# http://www.redhat.com/archives/fedora-devel-list/2007-August/msg01411.html # - external dvdnav - not compatible as of 1.1.11 and 4.1.1 +# - deprecate ESD support? -%define abiver 1.21 +%define abiver 1.24 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -29,10 +26,14 @@ %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora +%if 0%{?fedora} > 8 +%define _without_arts --without-arts +%endif + Summary: Xine library Name: xine-lib -Version: 1.1.12 -Release: 3%{?dist} +Version: 1.1.15 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -46,7 +47,6 @@ Source2: %{name}-mk-autotools-patch.sh Patch0: %{name}-%{version}-autotools.patch.bz2 Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch -Patch7: %{name}-1.1.12-CVE-2008-1878.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Provides: xine-lib(plugin-abi) = %{abiver} @@ -85,12 +85,18 @@ BuildRequires: flac-devel BuildRequires: libmodplug-devel BuildRequires: esound-devel BuildRequires: speex-devel -BuildRequires: arts-devel +%if 0%{?_without_arts:1} +Obsoletes: %{name}-arts < %{version}-%{release} +%else +BuildRequires: arts-devel +%endif BuildRequires: alsa-lib-devel >= 0.9.0 BuildRequires: libmpcdec-devel BuildRequires: wavpack-devel %if %{with_pa} BuildRequires: pulseaudio-lib-devel +Obsoletes: %{name}-pulseaudio < %{version}-%{release} +Provides: %{name}-pulseaudio = %{version}-%{release} %endif # pa BuildRequires: jack-audio-connection-kit-devel # CDs @@ -99,7 +105,11 @@ BuildRequires: libcdio-devel BuildRequires: pkgconfig BuildRequires: gnome-vfs2-devel BuildRequires: gtk2-devel +%if 0%{?fedora} > 6 || 0%{?rhel} > 5 BuildRequires: libsmbclient-devel +%else +BuildRequires: samba-common +%endif %description This package contains the Xine library. Xine is a free multimedia player. @@ -120,31 +130,22 @@ Requires: zlib-devel %description devel This package contains development files for xine-lib. -# TODO: consider removing and/or marking as deprecated for F9+ -- Rex %package arts Summary: aRts plugin for xine-lib Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} +#Requires: xine-lib(plugin-abi) = %{abiver} # -arts was split off the -extras subpackage at 1.1.7-3 Obsoletes: xine-lib-extras < 1.1.7-3 %description arts This package contains the aRts extra plugin for xine-lib. -%package pulseaudio -Summary: Pulseaudio plugin for xine-lib -Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} -# -pulseaudio was split off -extras at 1.1.11.1-2 -#Obsoletes: xine-lib-extras < 1.1.11.1-2 - -%description pulseaudio -This package contains the pulseaudio plugin for xine-lib. - %package extras Summary: Additional plugins for xine-lib Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} +#Requires: xine-lib(plugin-abi) = %{abiver} %description extras This package contains extra plugins for xine-lib: @@ -177,7 +178,6 @@ touch -r m4/optimizations.m4 m4/optimizations.m4.stamp touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind -%patch7 -p1 -b .CVE-2008-1878 # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -213,7 +213,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{?_without_imagemagick:1} --without-imagemagick \ %endif # imagemagick - --with-arts \ + %{!?_without_arts:--with-arts} %{?_without_arts} \ --with-wavpack \ --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} @@ -286,6 +286,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_file.so %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_none.so %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_oss.so +%if %{with_pa} +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so +%endif %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_bitplane.so %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_lpcm.so @@ -355,15 +358,11 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xxmc.so %{_libdir}/xine/plugins/%{abiver}/xineplug_wavpack.so +%if 0%{!?_without_arts:1} %files arts %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_arts.so - -%if %{with_pa} -%files pulseaudio -%defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so -%endif +%endif %files extras %defattr(-,root,root,-) @@ -402,6 +401,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Aug 15 2008 Rex Dieter - 1.1.15-1 +- xine-lib-1.1.15, plugin ABI 1.24 (rh#455752, CVE-2008-3231) +- Obsoletes: -arts (f9+) +- move -pulseaudio into main pkg + * Sun Apr 27 2008 Kevin Kofler - 1.1.12-3 - rebuild for new ImageMagick (6.4.0.10) From 8561717eb942d76a22d3fec7fd911e745dac2a2a Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 22 Aug 2008 15:12:26 +0000 Subject: [PATCH 047/150] restore -pulseaudio subpkg upsream -ansi-related patch cleanup BR's a bit (more) --- xine-lib.spec | 56 ++++++++++++++++++++++++++++++++++----------------- 1 file changed, 37 insertions(+), 19 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index aea8a4c..8f5911c 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -45,9 +45,13 @@ Source1: %{name}-cleanup-sources.sh Source2: %{name}-mk-autotools-patch.sh # autotools patch created with source2 Patch0: %{name}-%{version}-autotools.patch.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +## upstream patches +# phonon-xine doesn't compile with xine-lib-1.1.15, http://bugs.kde.org/169365 +Patch100: xine-lib-1.1.15-ansi.patch Provides: xine-lib(plugin-abi) = %{abiver} # X11 @@ -79,26 +83,25 @@ BuildRequires: ImageMagick-devel >= 6.2.4.6-1 BuildRequires: fontconfig-devel %endif # freetype # Audio -BuildRequires: libogg-devel -BuildRequires: libvorbis-devel -BuildRequires: flac-devel -BuildRequires: libmodplug-devel -BuildRequires: esound-devel -BuildRequires: speex-devel -%if 0%{?_without_arts:1} -Obsoletes: %{name}-arts < %{version}-%{release} -%else -BuildRequires: arts-devel -%endif BuildRequires: alsa-lib-devel >= 0.9.0 +BuildRequires: esound-devel +BuildRequires: flac-devel +BuildRequires: jack-audio-connection-kit-devel +BuildRequires: libmodplug-devel BuildRequires: libmpcdec-devel -BuildRequires: wavpack-devel +BuildRequires: libvorbis-devel %if %{with_pa} BuildRequires: pulseaudio-lib-devel Obsoletes: %{name}-pulseaudio < %{version}-%{release} Provides: %{name}-pulseaudio = %{version}-%{release} %endif # pa -BuildRequires: jack-audio-connection-kit-devel +BuildRequires: speex-devel +%if 0%{?_without_arts:1} +Obsoletes: xine-lib-arts < %{version}-%{release} +%else +BuildRequires: arts-devel +%endif +BuildRequires: wavpack-devel # CDs BuildRequires: libcdio-devel # Other @@ -141,6 +144,17 @@ Obsoletes: xine-lib-extras < 1.1.7-3 %description arts This package contains the aRts extra plugin for xine-lib. +%package pulseaudio +Summary: Pulseaudio plugin for xine-lib +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +# -pulseaudio was split off -extras at 1.1.11.1-2 +#Obsoletes: xine-lib-extras < 1.1.11.1-2 + +%description pulseaudio +This package contains the pulseaudio plugin for xine-lib. + + %package extras Summary: Additional plugins for xine-lib Group: System Environment/Libraries @@ -179,6 +193,8 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind +%patch100 -p1 -b .ansi + # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -286,9 +302,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_file.so %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_none.so %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_oss.so -%if %{with_pa} -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so -%endif %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_bitplane.so %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_lpcm.so @@ -364,6 +377,12 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_arts.so %endif +%if %{with_pa} +%files pulseaudio +%defattr(-,root,root,-) +%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so +%endif + %files extras %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_esd.so @@ -401,10 +420,9 @@ rm -rf $RPM_BUILD_ROOT %changelog -* Fri Aug 15 2008 Rex Dieter - 1.1.15-1 +* Wed Aug 20 2008 Rex Dieter - 1.1.15-1 - xine-lib-1.1.15, plugin ABI 1.24 (rh#455752, CVE-2008-3231) - Obsoletes: -arts (f9+) -- move -pulseaudio into main pkg * Sun Apr 27 2008 Kevin Kofler - 1.1.12-3 - rebuild for new ImageMagick (6.4.0.10) From df8f64b24b84f488aaa1249b458e9411879099a1 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 22 Aug 2008 15:18:52 +0000 Subject: [PATCH 048/150] add awol patch --- xine-lib-1.1.15-ansi.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 xine-lib-1.1.15-ansi.patch diff --git a/xine-lib-1.1.15-ansi.patch b/xine-lib-1.1.15-ansi.patch new file mode 100644 index 0000000..d9f1b27 --- /dev/null +++ b/xine-lib-1.1.15-ansi.patch @@ -0,0 +1,12 @@ +diff -up xine-lib-1.1.15/src/xine-engine/buffer.h.ansi xine-lib-1.1.15/src/xine-engine/buffer.h +--- xine-lib-1.1.15/src/xine-engine/buffer.h.ansi 2008-07-16 16:01:56.000000000 -0500 ++++ xine-lib-1.1.15/src/xine-engine/buffer.h 2008-08-19 12:08:46.000000000 -0500 +@@ -676,7 +676,7 @@ void _x_bmiheader_le2me( xine_bmiheader + /* convert xine_waveformatex struct from little endian */ + void _x_waveformatex_le2me( xine_waveformatex *wavex ) XINE_PROTECTED; + +-static inline _x_is_fourcc(void *ptr, void *tag) { ++static __inline _x_is_fourcc(void *ptr, void *tag) { + return memcmp(ptr, tag, 4) == 0; + } + From c20f71efca180f7ba99fd5c9dca85e31a58eca9f Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 22 Aug 2008 17:35:34 +0000 Subject: [PATCH 049/150] doh, yank errant Obsoletes/Provides: -pulseaudio --- xine-lib.spec | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 8f5911c..1f2e001 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.15 -Release: 1%{?dist} +Release: 1%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -92,8 +92,6 @@ BuildRequires: libmpcdec-devel BuildRequires: libvorbis-devel %if %{with_pa} BuildRequires: pulseaudio-lib-devel -Obsoletes: %{name}-pulseaudio < %{version}-%{release} -Provides: %{name}-pulseaudio = %{version}-%{release} %endif # pa BuildRequires: speex-devel %if 0%{?_without_arts:1} From 808b003503468c262b440ff886120e55fcc15733 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 23 Oct 2008 17:52:26 +0000 Subject: [PATCH 050/150] * Thu Oct 23 2008 Rex Dieter - 1.1.15-2 - respin --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 1f2e001..ee84083 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.15 -Release: 1%{?dist}.1 +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -418,6 +418,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Oct 23 2008 Rex Dieter - 1.1.15-2 +- respin + * Wed Aug 20 2008 Rex Dieter - 1.1.15-1 - xine-lib-1.1.15, plugin ABI 1.24 (rh#455752, CVE-2008-3231) - Obsoletes: -arts (f9+) From 4615667f5a33d7ce5d33b02f04fcc54037598673 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 28 Oct 2008 03:57:04 +0000 Subject: [PATCH 051/150] * Tue Oct 28 2008 Kevin Kofler - 1.1.15-3 - rebuild for new libcaca --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index ee84083..14ad846 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.15 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -418,6 +418,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Oct 28 2008 Kevin Kofler - 1.1.15-3 +- rebuild for new libcaca + * Thu Oct 23 2008 Rex Dieter - 1.1.15-2 - respin From d04f6398a23cd3051ad6f7b6e3c69d3b3c9ef005 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 12 Dec 2008 21:17:03 +0000 Subject: [PATCH 052/150] * Fri Dec 12 2008 Rex Dieter - 1.1.15-4 - rebuild for pkgconfig deps --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 14ad846..6233be5 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.15 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -418,6 +418,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Dec 12 2008 Rex Dieter - 1.1.15-4 +- rebuild for pkgconfig deps + * Tue Oct 28 2008 Kevin Kofler - 1.1.15-3 - rebuild for new libcaca From 81d11ef2fdb1276367df0d67715a2db24e01e3cd Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 19:18:46 +0000 Subject: [PATCH 053/150] * Wed Jan 07 2009 Rex Dieter - 1.1.16-1 - xine-lib-1.1.16, plugin ABI 1.25 - --with-external-libdvdnav, include demuxers (#213597) --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib-1.1.15-ansi.patch | 12 ------------ xine-lib-cleanup-sources.sh | 11 ++++++----- xine-lib.spec | 21 +++++++++++---------- 5 files changed, 21 insertions(+), 31 deletions(-) delete mode 100644 xine-lib-1.1.15-ansi.patch diff --git a/.cvsignore b/.cvsignore index 3929296..606b324 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.15-autotools.patch.bz2 -xine-lib-1.1.15-pruned.tar.bz2 +xine-lib-1.1.16-autotools.patch.bz2 +xine-lib-1.1.16-pruned.tar.bz2 diff --git a/sources b/sources index 15195de..6616d87 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -ffd74ec893a5f1167c69987a68f436fd xine-lib-1.1.15-autotools.patch.bz2 -acdbdc024382afac111eb076304448ed xine-lib-1.1.15-pruned.tar.bz2 +5caed155987cd453b6e23b8720dfbd3d xine-lib-1.1.16-autotools.patch.bz2 +512f31d8414ef4654ca366c0dce37301 xine-lib-1.1.16-pruned.tar.bz2 diff --git a/xine-lib-1.1.15-ansi.patch b/xine-lib-1.1.15-ansi.patch deleted file mode 100644 index d9f1b27..0000000 --- a/xine-lib-1.1.15-ansi.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up xine-lib-1.1.15/src/xine-engine/buffer.h.ansi xine-lib-1.1.15/src/xine-engine/buffer.h ---- xine-lib-1.1.15/src/xine-engine/buffer.h.ansi 2008-07-16 16:01:56.000000000 -0500 -+++ xine-lib-1.1.15/src/xine-engine/buffer.h 2008-08-19 12:08:46.000000000 -0500 -@@ -676,7 +676,7 @@ void _x_bmiheader_le2me( xine_bmiheader - /* convert xine_waveformatex struct from little endian */ - void _x_waveformatex_le2me( xine_waveformatex *wavex ) XINE_PROTECTED; - --static inline _x_is_fourcc(void *ptr, void *tag) { -+static __inline _x_is_fourcc(void *ptr, void *tag) { - return memcmp(ptr, tag, 4) == 0; - } - diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index a905a3f..31cff0f 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -56,11 +56,12 @@ for p in dvd vcd mms; do sed -i -e "/xineplug_inp_$p/d" src/input/Makefile.am done # Demuxers -for p in mpeg mpeg_block mpeg_ts mpeg_elem mpeg_pes yuv4mpeg2; do - echo "removing $p demuxer..." - [ -f src/demuxers/demux_$p.c ] && rm -f src/demuxers/demux_$p.c - sed -i -e "/xineplug_dmx_$p/d" src/demuxers/Makefile.am -done +# These are ok now ( http://bugzilla.redhat.com/213597 ) +#for p in mpeg mpeg_block mpeg_ts mpeg_elem mpeg_pes yuv4mpeg2; do +# echo "removing $p demuxer..." +# [ -f src/demuxers/demux_$p.c ] && rm -f src/demuxers/demux_$p.c +# sed -i -e "/xineplug_dmx_$p/d" src/demuxers/Makefile.am +#done # Postprocessors echo "removing planar and deinterlace postprocessors..." sed -i -e 's/deinterlace //g' src/post/Makefile.am # see comments in speedy.c diff --git a/xine-lib.spec b/xine-lib.spec index 6233be5..d6b5ad4 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -2,10 +2,9 @@ # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? # http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html -# - external dvdnav - not compatible as of 1.1.11 and 4.1.1 # - deprecate ESD support? -%define abiver 1.24 +%define abiver 1.25 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -32,8 +31,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.15 -Release: 4%{?dist} +Version: 1.1.16 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,8 +49,6 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch ## upstream patches -# phonon-xine doesn't compile with xine-lib-1.1.15, http://bugs.kde.org/169365 -Patch100: xine-lib-1.1.15-ansi.patch Provides: xine-lib(plugin-abi) = %{abiver} # X11 @@ -111,6 +108,7 @@ BuildRequires: libsmbclient-devel %else BuildRequires: samba-common %endif +BuildRequires: libdvdnav-devel %description This package contains the Xine library. Xine is a free multimedia player. @@ -191,10 +189,8 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind -%patch100 -p1 -b .ansi - -# Avoid standard rpaths on lib64 archs: -sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure +# Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) +#sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure %build @@ -223,6 +219,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --with-external-ffmpeg \ --with-xv-path=%{_libdir} \ --with-libflac \ + --with-external-libdvdnav \ --with-external-libmpcdec \ %if 0%{?_without_imagemagick:1} --without-imagemagick \ @@ -418,6 +415,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jan 07 2009 Rex Dieter - 1.1.16-1 +- xine-lib-1.1.16, plugin ABI 1.25 +- --with-external-libdvdnav, include demuxers (#213597) + * Fri Dec 12 2008 Rex Dieter - 1.1.15-4 - rebuild for pkgconfig deps From b64752289538eb1a1804eeb9ce138bea25046ea8 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 19:56:48 +0000 Subject: [PATCH 054/150] respin autotools patch --- sources | 2 +- xine-lib.spec | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 6616d87..f89d6ad 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -5caed155987cd453b6e23b8720dfbd3d xine-lib-1.1.16-autotools.patch.bz2 +fe8148f2a0ec7b2e75ad509e8086e33f xine-lib-1.1.16-autotools.patch.bz2 512f31d8414ef4654ca366c0dce37301 xine-lib-1.1.16-pruned.tar.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index d6b5ad4..e95a56c 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -327,6 +327,11 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_image.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_matroska.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mng.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_block.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_elem.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_pes.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_ts.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_nsv.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_ogg.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_pva.so @@ -336,6 +341,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_slave.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_sputext.so %{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_yuv_frames.so +%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_yuv4mpeg2.so %{_libdir}/xine/plugins/%{abiver}/xineplug_flac.so %{_libdir}/xine/plugins/%{abiver}/xineplug_inp_cdda.so %{_libdir}/xine/plugins/%{abiver}/xineplug_inp_dvb.so @@ -417,7 +423,7 @@ rm -rf $RPM_BUILD_ROOT %changelog * Wed Jan 07 2009 Rex Dieter - 1.1.16-1 - xine-lib-1.1.16, plugin ABI 1.25 -- --with-external-libdvdnav, include demuxers (#213597) +- --with-external-libdvdnav, include mpeg demuxers (#213597) * Fri Dec 12 2008 Rex Dieter - 1.1.15-4 - rebuild for pkgconfig deps From da4731bb02ed4677291257501a07b8b7c37c995f Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 20:08:32 +0000 Subject: [PATCH 055/150] fix failure for awol ffmpeg --- xine-lib.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/xine-lib.spec b/xine-lib.spec index e95a56c..3aad4b6 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -196,6 +196,7 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %build export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " export FFMPEG_POSTPROC_CFLAGS=" " FFMPEG_POSTPROC_LIBS=" " +export FFMPEG_UTIL_CFLAGS=" " FFMPEG_UTIL_LIBS=" " export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" # Keep list of options in mostly the same order as ./configure --help. %configure \ From a2ef3acb419f4bdc111299aab3535a8c642815a3 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 21:03:28 +0000 Subject: [PATCH 056/150] ugh, looks like caca support needs libcaca-devel >= 0.99-0.5.beta16 --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 3aad4b6..a44c7c5 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -68,7 +68,7 @@ BuildRequires: libmng-devel BuildRequires: aalib-devel >= 1.4 %endif # aalib %if %{with_caca} -BuildRequires: libcaca-devel >= 0.99 +BuildRequires: libcaca-devel >= 0.99-0.5.beta16 %endif # caca %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel From fcf3303c5cf257561c9cee290338e1961b0cf141 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 21:17:12 +0000 Subject: [PATCH 057/150] enable caca for f10+ only --- xine-lib.spec | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index a44c7c5..757046b 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -13,14 +13,16 @@ %define have_vidix 0 %endif # ix86 +%if 0%{?fedora} > 9 +%define _with_caca --with-caca +%endif + %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} - %define with_caca %{?_without_caca:0}%{!?_without_caca:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} - %define with_caca %{?_with_caca:1}%{!?_with_caca:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora @@ -67,7 +69,7 @@ BuildRequires: libmng-devel %if %{with_aalib} BuildRequires: aalib-devel >= 1.4 %endif # aalib -%if %{with_caca} +%if 0%{?_with_caca:1} BuildRequires: libcaca-devel >= 0.99-0.5.beta16 %endif # caca %if 0%{!?_without_directfb:1} @@ -168,7 +170,7 @@ This package contains extra plugins for xine-lib: %if %{with_aalib} - AA-lib %endif # aalib -%if %{with_caca} +%if 0%{?with_caca:1} - Libcaca %endif # caca %if 0%{!?_without_imagemagick:1} @@ -225,6 +227,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{?_without_imagemagick:1} --without-imagemagick \ %endif # imagemagick + %{?_with_caca} %{!?_with_caca:--without-caca} \ %{!?_without_arts:--with-arts} %{?_without_arts} \ --with-wavpack \ --with-real-codecs-path=%{codecdir} \ @@ -398,7 +401,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with_aalib} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_aa.so %endif # aalib -%if %{with_caca} +%if 0%{?_with_caca} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_caca.so %endif # caca %if 0%{!?_without_directfb:1} From 9a63bfe8ef943d282a33134321cb6debccd69180 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 21:20:33 +0000 Subject: [PATCH 058/150] typo --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 757046b..20aa7d8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -170,7 +170,7 @@ This package contains extra plugins for xine-lib: %if %{with_aalib} - AA-lib %endif # aalib -%if 0%{?with_caca:1} +%if 0%{?_with_caca:1} - Libcaca %endif # caca %if 0%{!?_without_imagemagick:1} From 7f8916426460da3d518ac0973157ee157a2b9e8e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 7 Jan 2009 21:28:55 +0000 Subject: [PATCH 059/150] fix thinko'd typo-fix (are we there yet?) --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 20aa7d8..1a1756e 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -401,7 +401,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with_aalib} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_aa.so %endif # aalib -%if 0%{?_with_caca} +%if 0%{?_with_caca:1} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_caca.so %endif # caca %if 0%{!?_without_directfb:1} From e40e45100db48d6f23bad67b071d6c745ba1d0bc Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Wed, 7 Jan 2009 23:14:29 +0000 Subject: [PATCH 060/150] * Wed Jan 07 2009 Kevin Kofler - 1.1.16-1.1 - patch for old libcaca in F9- --- xine-lib-1.1.16-old-caca.patch | 27 +++++++++++++++++++++++++++ xine-lib.spec | 28 ++++++++++++++++++++-------- 2 files changed, 47 insertions(+), 8 deletions(-) create mode 100644 xine-lib-1.1.16-old-caca.patch diff --git a/xine-lib-1.1.16-old-caca.patch b/xine-lib-1.1.16-old-caca.patch new file mode 100644 index 0000000..5a149a9 --- /dev/null +++ b/xine-lib-1.1.16-old-caca.patch @@ -0,0 +1,27 @@ +--- src/video_out/video_out_caca.c Tue Nov 18 21:13:55 2008 +0100 ++++ src/video_out/video_out_caca.c Mon Nov 10 16:33:51 2008 +0100 +@@ -276,7 +276,6 @@ static int caca_redraw_needed (vo_driver + + static vo_driver_t *open_plugin (video_driver_class_t *class_gen, const void *visual_gen) { + caca_class_t *class = (caca_class_t *) class_gen; +- caca_display_t *dp = (caca_display_t *)visual_gen; + caca_driver_t *this; + + this = calloc(1, sizeof (caca_driver_t)); +@@ -301,13 +300,8 @@ static vo_driver_t *open_plugin (video_d + this->yuv2rgb_factory = yuv2rgb_factory_init(MODE_32_RGB, 0, NULL); + this->yuv2rgb_factory->set_csc_levels(this->yuv2rgb_factory, 0, 128, 128); + +- if (dp) { +- this->cv = caca_get_canvas(dp); +- this->dp = dp; +- } else { +- this->cv = cucul_create_canvas(0, 0); +- this->dp = caca_create_display(this->cv); +- } ++ this->cv = cucul_create_canvas(0, 0); ++ this->dp = caca_create_display(this->cv); + + caca_refresh_display(this->dp); + return &this->vo_driver; + diff --git a/xine-lib.spec b/xine-lib.spec index 1a1756e..eaffe59 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -13,16 +13,18 @@ %define have_vidix 0 %endif # ix86 -%if 0%{?fedora} > 9 -%define _with_caca --with-caca +%if 0%{?fedora} <= 9 + %define old_caca 1 %endif %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} + %define with_caca %{?_without_caca:0}%{!?_without_caca:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} + %define with_caca %{?_with_caca:1}%{!?_with_caca:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora @@ -34,7 +36,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.16 -Release: 1%{?dist} +Release: 1%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,6 +52,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch +Patch7: %{name}-1.1.16-old-caca.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{abiver} @@ -69,8 +72,12 @@ BuildRequires: libmng-devel %if %{with_aalib} BuildRequires: aalib-devel >= 1.4 %endif # aalib -%if 0%{?_with_caca:1} -BuildRequires: libcaca-devel >= 0.99-0.5.beta16 +%if %{with_caca} +%if 0%{?old_caca} +BuildRequires: libcaca-devel >= 0.99 +%else +BuildRequires: libcaca-devel >= 0.99-0.5.beta16 +%endif %endif # caca %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel @@ -170,7 +177,7 @@ This package contains extra plugins for xine-lib: %if %{with_aalib} - AA-lib %endif # aalib -%if 0%{?_with_caca:1} +%if %{with_caca} - Libcaca %endif # caca %if 0%{!?_without_imagemagick:1} @@ -190,6 +197,9 @@ touch -r m4/optimizations.m4 m4/optimizations.m4.stamp touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # Patch6 needed at least when compiling with external ffmpeg, #939. %patch6 -p1 -b .deepbind +%if 0%{?old_caca} +%patch7 -p0 -b .old-caca +%endif # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -227,7 +237,6 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{?_without_imagemagick:1} --without-imagemagick \ %endif # imagemagick - %{?_with_caca} %{!?_with_caca:--without-caca} \ %{!?_without_arts:--with-arts} %{?_without_arts} \ --with-wavpack \ --with-real-codecs-path=%{codecdir} \ @@ -401,7 +410,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with_aalib} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_aa.so %endif # aalib -%if 0%{?_with_caca:1} +%if %{with_caca} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_caca.so %endif # caca %if 0%{!?_without_directfb:1} @@ -425,6 +434,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jan 07 2009 Kevin Kofler - 1.1.16-1.1 +- patch for old libcaca in F9- + * Wed Jan 07 2009 Rex Dieter - 1.1.16-1 - xine-lib-1.1.16, plugin ABI 1.25 - --with-external-libdvdnav, include mpeg demuxers (#213597) From d117d577feaabdbc4a24b4907b0707cdf1d92e04 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sun, 18 Jan 2009 21:01:33 +0000 Subject: [PATCH 061/150] * Sun Jan 18 2009 Rex Dieter - 1.1.16-2 - drop deepbind patch (#480504) --- xine-lib.spec | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index eaffe59..7029552 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -36,7 +36,7 @@ Summary: Xine library Name: xine-lib Version: 1.1.16 -Release: 1%{?dist}.1 +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -195,8 +195,9 @@ touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 -# Patch6 needed at least when compiling with external ffmpeg, #939. -%patch6 -p1 -b .deepbind +# needed at least when compiling with external ffmpeg and internal faad livna bug#939. +# see also http://bugzilla.redhat.com/480504 for side-effects +#patch6 -p1 -b .deepbind %if 0%{?old_caca} %patch7 -p0 -b .old-caca %endif @@ -434,6 +435,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jan 18 2009 Rex Dieter - 1.1.16-2 +- drop deepbind patch (#480504) + * Wed Jan 07 2009 Kevin Kofler - 1.1.16-1.1 - patch for old libcaca in F9- From 57d454e4f28f8a375da8f8f374fadec18221030e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sun, 18 Jan 2009 22:33:17 +0000 Subject: [PATCH 062/150] make caca support unconditional --- xine-lib.spec | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 7029552..04f68fc 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -19,12 +19,10 @@ %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} - %define with_caca %{?_without_caca:0}%{!?_without_caca:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} - %define with_caca %{?_with_caca:1}%{!?_with_caca:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora @@ -72,13 +70,11 @@ BuildRequires: libmng-devel %if %{with_aalib} BuildRequires: aalib-devel >= 1.4 %endif # aalib -%if %{with_caca} %if 0%{?old_caca} BuildRequires: libcaca-devel >= 0.99 %else BuildRequires: libcaca-devel >= 0.99-0.5.beta16 %endif -%endif # caca %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel %endif # directfb @@ -125,7 +121,7 @@ It can play back various media. It also decodes multimedia files from local disk drives, and displays multimedia streamed over the Internet. It interprets many of the most common multimedia formats available - and some of the most uncommon formats, too. --with/--without rpmbuild options -(some default values depend on target distribution): aalib, caca, directfb, +(some default values depend on target distribution): aalib, directfb, imagemagick, freetype, antialiasing (with freetype), pulseaudio, xcb. %package devel @@ -177,9 +173,7 @@ This package contains extra plugins for xine-lib: %if %{with_aalib} - AA-lib %endif # aalib -%if %{with_caca} - Libcaca -%endif # caca %if 0%{!?_without_imagemagick:1} - Image decoding %endif # imagemagick @@ -226,6 +220,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{?_with_freetype:1} %if 0%{?_with_antialiasing:1} --enable-antialiasing \ + --with-caca \ %endif # antialiasing --with-freetype \ --with-fontconfig \ @@ -411,9 +406,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with_aalib} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_aa.so %endif # aalib -%if %{with_caca} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_caca.so -%endif # caca %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_directfb.so %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xdirectfb.so @@ -437,6 +430,7 @@ rm -rf $RPM_BUILD_ROOT %changelog * Sun Jan 18 2009 Rex Dieter - 1.1.16-2 - drop deepbind patch (#480504) +- caca support (EPEL) * Wed Jan 07 2009 Kevin Kofler - 1.1.16-1.1 - patch for old libcaca in F9- From 831b4c0a6ce959d76279ed2f9d4d79153c2895ee Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 23 Jan 2009 14:32:05 +0000 Subject: [PATCH 063/150] * Fri Jan 23 2009 Rex Dieter - 1.1.16.1-1 - xine-lib-1.1.16.1 - include avsync patch (#470568) --- .cvsignore | 4 ++-- sources | 4 ++-- xine-lib-1.1.15-avsync_hack.patch | 22 ++++++++++++++++++++++ xine-lib.spec | 16 +++++++++++++--- 4 files changed, 39 insertions(+), 7 deletions(-) create mode 100644 xine-lib-1.1.15-avsync_hack.patch diff --git a/.cvsignore b/.cvsignore index 606b324..34a3b02 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.16-autotools.patch.bz2 -xine-lib-1.1.16-pruned.tar.bz2 +xine-lib-1.1.16.1-autotools.patch.bz2 +xine-lib-1.1.16.1-pruned.tar.bz2 diff --git a/sources b/sources index f89d6ad..9a7e9c8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -fe8148f2a0ec7b2e75ad509e8086e33f xine-lib-1.1.16-autotools.patch.bz2 -512f31d8414ef4654ca366c0dce37301 xine-lib-1.1.16-pruned.tar.bz2 +e3e061f93f36eae910b66cb0c973dbb8 xine-lib-1.1.16.1-autotools.patch.bz2 +aa1265b1007086c0906ec8134cfeacf6 xine-lib-1.1.16.1-pruned.tar.bz2 diff --git a/xine-lib-1.1.15-avsync_hack.patch b/xine-lib-1.1.15-avsync_hack.patch new file mode 100644 index 0000000..f33aba4 --- /dev/null +++ b/xine-lib-1.1.15-avsync_hack.patch @@ -0,0 +1,22 @@ +diff -uNr xine-lib-1.1.15.orig/src/xine-engine/audio_out.c xine-lib-1.1.15/src/xine-engine/audio_out.c +--- xine-lib-1.1.15.orig/src/xine-engine/audio_out.c 2008-07-10 18:19:10.000000000 +0200 ++++ xine-lib-1.1.15/src/xine-engine/audio_out.c 2009-01-10 21:57:20.000000000 +0100 +@@ -1151,8 +1151,17 @@ + + /* + * calculate gap: ++ * ++ * HACK (rwa): If we have no video stream we do not need an AV sync and so ++ * we assume a gap of 0. This seems to avoid the skips in the ++ * first seconds when playing audio-only via the "glitch-free" ++ * pulseaudio server. + */ +- gap = in_buf->vpts - hw_vpts; ++ if (in_buf && in_buf->stream && in_buf->stream->video_decoder_plugin) { ++ gap = in_buf->vpts - hw_vpts; ++ } else { ++ gap = 0; ++ } + lprintf ("hw_vpts : %" PRId64 " buffer_vpts : %" PRId64 " gap : %" PRId64 "\n", + hw_vpts, in_buf->vpts, gap); + diff --git a/xine-lib.spec b/xine-lib.spec index 04f68fc..c8a0f1a 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,8 +33,8 @@ Summary: Xine library Name: xine-lib -Version: 1.1.16 -Release: 2%{?dist} +Version: 1.1.16.1 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,7 +50,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch +# FIXME for 1.1.16.1 ? Patch7: %{name}-1.1.16-old-caca.patch +# http://bugzilla.redhat.com/470568 +Patch8: xine-lib-1.1.15-avsync_hack.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{abiver} @@ -73,7 +76,7 @@ BuildRequires: aalib-devel >= 1.4 %if 0%{?old_caca} BuildRequires: libcaca-devel >= 0.99 %else -BuildRequires: libcaca-devel >= 0.99-0.5.beta16 +BuildRequires: libcaca-devel >= 0.99-0.5.beta14 %endif %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel @@ -192,10 +195,13 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # needed at least when compiling with external ffmpeg and internal faad livna bug#939. # see also http://bugzilla.redhat.com/480504 for side-effects #patch6 -p1 -b .deepbind + %if 0%{?old_caca} %patch7 -p0 -b .old-caca %endif +%patch8 -p1 -b .avsync_hack + # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -428,6 +434,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Jan 23 2009 Rex Dieter - 1.1.16.1-1 +- xine-lib-1.1.16.1 +- include avsync patch (#470568) + * Sun Jan 18 2009 Rex Dieter - 1.1.16-2 - drop deepbind patch (#480504) - caca support (EPEL) From 39485d1605ba511f6c042980450d6ab6321c093d Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 26 Jan 2009 16:58:47 +0000 Subject: [PATCH 064/150] * Mon Jan 26 2009 Rex Dieter - 1.1.16.1-2 - Provides: xine-lib(plugin-abi)%{?_isa} = %{abiver} - touchup Summary/Description --- xine-lib.spec | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index c8a0f1a..7fc7a08 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -31,10 +31,10 @@ %define _without_arts --without-arts %endif -Summary: Xine library +Summary: A multimedia engine Name: xine-lib Version: 1.1.16.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -57,6 +57,9 @@ Patch8: xine-lib-1.1.15-avsync_hack.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{abiver} +%if "%{?_isa}" != "%{nil}" +Provides: xine-lib(plugin-abi)%{?_isa} = %{abiver} +%endif # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel @@ -119,13 +122,10 @@ BuildRequires: samba-common BuildRequires: libdvdnav-devel %description -This package contains the Xine library. Xine is a free multimedia player. -It can play back various media. It also decodes multimedia files from local -disk drives, and displays multimedia streamed over the Internet. It -interprets many of the most common multimedia formats available - and some -of the most uncommon formats, too. --with/--without rpmbuild options -(some default values depend on target distribution): aalib, directfb, -imagemagick, freetype, antialiasing (with freetype), pulseaudio, xcb. +This package contains the Xine library. It can be used to play back +various media, decode multimedia files from local disk drives, and display +multimedia streamed over the Internet. It interprets many of the most +common multimedia formats available - and some uncommon formats, too. %package devel Summary: Xine library development files @@ -135,10 +135,10 @@ Requires: pkgconfig Requires: zlib-devel %description devel -This package contains development files for xine-lib. +This package contains development files for %{name}. %package arts -Summary: aRts plugin for xine-lib +Summary: aRts plugin for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{abiver} @@ -146,27 +146,27 @@ Requires: %{name} = %{version}-%{release} Obsoletes: xine-lib-extras < 1.1.7-3 %description arts -This package contains the aRts extra plugin for xine-lib. +This package contains the aRts plugin for %{name}. %package pulseaudio -Summary: Pulseaudio plugin for xine-lib +Summary: Pulseaudio plugin for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} # -pulseaudio was split off -extras at 1.1.11.1-2 #Obsoletes: xine-lib-extras < 1.1.11.1-2 %description pulseaudio -This package contains the pulseaudio plugin for xine-lib. +This package contains the pulseaudio plugin for %{name}. %package extras -Summary: Additional plugins for xine-lib +Summary: Additional plugins for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{abiver} %description extras -This package contains extra plugins for xine-lib: +This package contains extra plugins for %{name}: - EsounD - JACK - GDK-Pixbuf @@ -434,6 +434,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jan 26 2009 Rex Dieter - 1.1.16.1-2 +- Provides: xine-lib(plugin-abi)%%{?_isa} = %%{abiver} +- touchup Summary/Description + * Fri Jan 23 2009 Rex Dieter - 1.1.16.1-1 - xine-lib-1.1.16.1 - include avsync patch (#470568) From f2a263d5548faa3717da815fd11d78535349777f Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sat, 7 Feb 2009 19:29:38 +0000 Subject: [PATCH 065/150] * Sat Feb 07 2009 Rex Dieter - 1.1.16.1-3 - safe-audio-pause patch --- xine-lib-safe-audio-pause.patch | 122 ++++++++++++++++++++++++++++++++ xine-lib.spec | 8 ++- 2 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 xine-lib-safe-audio-pause.patch diff --git a/xine-lib-safe-audio-pause.patch b/xine-lib-safe-audio-pause.patch new file mode 100644 index 0000000..4a4b70b --- /dev/null +++ b/xine-lib-safe-audio-pause.patch @@ -0,0 +1,122 @@ +diff -r ce4b1533a0af src/xine-engine/audio_out.c +--- a/src/xine-engine/audio_out.c Sun Jan 11 22:24:42 2009 +0000 ++++ b/src/xine-engine/audio_out.c Sat Feb 07 15:09:24 2009 -0200 +@@ -243,6 +243,7 @@ + audio_fifo_t *free_fifo; + audio_fifo_t *out_fifo; + int64_t last_audio_vpts; ++ pthread_mutex_t current_speed_lock; + uint32_t current_speed; /* the current playback speed */ + /* FIXME: replace all this->clock->speed with this->current_speed. we should make + * sure nobody will change speed without going through xine.c:set_speed_internal */ +@@ -1040,6 +1041,7 @@ + * we must process/free buffers otherwise the entire engine will stop. + */ + ++ pthread_mutex_lock(&this->current_speed_lock); + if ( this->audio_loop_running && + (this->clock->speed == XINE_SPEED_PAUSE || + (this->clock->speed != XINE_FINE_SPEED_NORMAL && +@@ -1055,6 +1057,7 @@ + _x_refcounter_dec(in_buf->stream->refcounter); + fifo_append (this->free_fifo, in_buf); + in_buf = NULL; ++ pthread_mutex_unlock(&this->current_speed_lock); + continue; + } + +@@ -1065,6 +1068,7 @@ + } + + lprintf ("loop:pause: I feel sleepy (%d buffers).\n", this->out_fifo->num_buffers); ++ pthread_mutex_unlock(&this->current_speed_lock); + xine_usec_sleep (10000); + lprintf ("loop:pause: I wake up.\n"); + continue; +@@ -1274,6 +1278,7 @@ + fifo_append (this->free_fifo, in_buf); + in_buf = NULL; + } ++ pthread_mutex_unlock(&this->current_speed_lock); + + /* Give other threads a chance to use functions which require this->driver_lock to + * be available. This is needed when using NPTL on Linux (and probably PThreads +@@ -1684,6 +1689,7 @@ + free (this->frame_buf[1]); + free (this->zero_space); + ++ pthread_mutex_destroy(&this->current_speed_lock); + pthread_mutex_destroy(&this->flush_audio_driver_lock); + pthread_cond_destroy(&this->flush_audio_driver_reached); + +@@ -1910,11 +1916,15 @@ + if (value != XINE_FINE_SPEED_NORMAL && value != XINE_SPEED_PAUSE && !this->slow_fast_audio ) + this->ao.control(&this->ao, AO_CTRL_FLUSH_BUFFERS, NULL); + ++ /* current_speed_lock is here to make sure the ao_loop will pause in a safe place. ++ * that is, we cannot pause writing to device, filling gaps etc. */ ++ pthread_mutex_lock(&this->current_speed_lock); + this->ao.control(&this->ao, + (value == XINE_SPEED_PAUSE) ? AO_CTRL_PLAY_PAUSE : AO_CTRL_PLAY_RESUME, NULL); + this->current_speed = value; + if( this->slow_fast_audio ) + ao_update_resample_factor(this); ++ pthread_mutex_unlock(&this->current_speed_lock); + break; + + default: +@@ -2056,6 +2066,7 @@ + this->driver = driver; + this->xine = xine; + this->clock = xine->clock; ++ this->current_speed = xine->clock->speed; + this->streams = xine_list_new(); + + /* warning: driver_lock is a recursive mutex. it must NOT be +@@ -2087,6 +2098,7 @@ + this->discard_buffers = 0; + this->zero_space = calloc (1, ZERO_BUF_SIZE * 4 * 6); /* MAX as 32bit, 6 channels. */ + ++ pthread_mutex_init( &this->current_speed_lock, NULL ); + pthread_mutex_init( &this->flush_audio_driver_lock, NULL ); + pthread_cond_init( &this->flush_audio_driver_reached, NULL ); + +diff -r ce4b1533a0af src/xine-engine/xine.c +--- a/src/xine-engine/xine.c Sun Jan 11 22:24:42 2009 +0000 ++++ b/src/xine-engine/xine.c Sat Feb 07 15:09:25 2009 -0200 +@@ -330,17 +330,20 @@ + + static void set_speed_internal (xine_stream_t *stream, int speed) { + xine_t *xine = stream->xine; ++ int old_speed = xine->clock->speed; + +- if (xine->clock->speed != XINE_SPEED_PAUSE && speed == XINE_SPEED_PAUSE) ++ if (old_speed != XINE_SPEED_PAUSE && speed == XINE_SPEED_PAUSE) + /* get all decoder and post threads in a state where they agree to be blocked */ + xine->port_ticket->revoke(xine->port_ticket, 0); + +- if (xine->clock->speed == XINE_SPEED_PAUSE && speed != XINE_SPEED_PAUSE) ++ if (old_speed == XINE_SPEED_PAUSE && speed != XINE_SPEED_PAUSE) + /* all decoder and post threads may continue now */ + xine->port_ticket->issue(xine->port_ticket, 0); + +- stream->xine->clock->set_fine_speed (stream->xine->clock, speed); +- ++ if (old_speed != XINE_SPEED_PAUSE && speed == XINE_SPEED_PAUSE) ++ /* set master clock so audio_out loop can pause in a safe place */ ++ stream->xine->clock->set_fine_speed (stream->xine->clock, speed); ++ + /* see coment on audio_out loop about audio_paused */ + if( stream->audio_out ) { + xine->port_ticket->acquire(xine->port_ticket, 1); +@@ -350,6 +353,10 @@ + + xine->port_ticket->release(xine->port_ticket, 1); + } ++ ++ if (old_speed == XINE_SPEED_PAUSE && speed != XINE_SPEED_PAUSE) ++ /* master clock is set after resuming the audio device (audio_out loop may continue) */ ++ stream->xine->clock->set_fine_speed (stream->xine->clock, speed); + } + + diff --git a/xine-lib.spec b/xine-lib.spec index 7fc7a08..5e94b77 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -55,6 +55,7 @@ Patch7: %{name}-1.1.16-old-caca.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.15-avsync_hack.patch ## upstream patches +Patch100: xine-lib-safe-audio-pause.patch Provides: xine-lib(plugin-abi) = %{abiver} %if "%{?_isa}" != "%{nil}" @@ -202,6 +203,8 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch8 -p1 -b .avsync_hack +%patch100 -p1 -b .safe_audio_pause + # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -434,6 +437,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Feb 07 2009 Rex Dieter - 1.1.16.1-3 +- safe-audio-pause patch + * Mon Jan 26 2009 Rex Dieter - 1.1.16.1-2 - Provides: xine-lib(plugin-abi)%%{?_isa} = %%{abiver} - touchup Summary/Description From 36c65a75b1d7d2345971b27c0d3b13872ce77f6d Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 9 Feb 2009 13:38:55 +0000 Subject: [PATCH 066/150] * Mon Feb 09 2009 Rex Dieter - 1.1.16.1-4 - gapless-race-fix patch (kdebug#180339) --- xine-lib-1.1.16.1-gapless_race_fix.patch | 144 +++++++++++++++++++++++ xine-lib.spec | 12 +- 2 files changed, 152 insertions(+), 4 deletions(-) create mode 100644 xine-lib-1.1.16.1-gapless_race_fix.patch diff --git a/xine-lib-1.1.16.1-gapless_race_fix.patch b/xine-lib-1.1.16.1-gapless_race_fix.patch new file mode 100644 index 0000000..ec46cbf --- /dev/null +++ b/xine-lib-1.1.16.1-gapless_race_fix.patch @@ -0,0 +1,144 @@ +diff -up xine-lib-1.1.16.1/src/xine-engine/audio_out.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/audio_out.c +--- xine-lib-1.1.16.1/src/xine-engine/audio_out.c.gapless_rate_fix 2009-02-09 07:30:08.000000000 -0600 ++++ xine-lib-1.1.16.1/src/xine-engine/audio_out.c 2009-02-09 07:30:08.000000000 -0600 +@@ -1623,7 +1623,7 @@ static void ao_close(xine_audio_port_t * + pthread_mutex_unlock(&this->streams_lock); + + /* close driver if no streams left */ +- if (!ite && !this->grab_only && !stream->gapless_switch) { ++ if (!ite && !this->grab_only && !stream->keep_ao_driver_open) { + xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_out: no streams left, closing driver\n"); + + if (this->audio_loop_running) { +diff -up xine-lib-1.1.16.1/src/xine-engine/video_decoder.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/video_decoder.c +--- xine-lib-1.1.16.1/src/xine-engine/video_decoder.c.gapless_rate_fix 2008-04-28 08:30:56.000000000 -0500 ++++ xine-lib-1.1.16.1/src/xine-engine/video_decoder.c 2009-02-09 07:31:36.000000000 -0600 +@@ -160,7 +160,7 @@ static void *video_decoder_loop (void *s + + running_ticket->release(running_ticket, 0); + +- if( !stream->gapless_switch ) ++ if( !(buf->decoder_flags & BUF_FLAG_GAPLESS_SW) ) + stream->metronom->handle_video_discontinuity (stream->metronom, + DISC_STREAMSTART, 0); + +diff -up xine-lib-1.1.16.1/src/xine-engine/xine.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/xine.c +--- xine-lib-1.1.16.1/src/xine-engine/xine.c.gapless_rate_fix 2009-02-09 07:30:08.000000000 -0600 ++++ xine-lib-1.1.16.1/src/xine-engine/xine.c 2009-02-09 07:30:08.000000000 -0600 +@@ -426,6 +426,7 @@ void xine_stop (xine_stream_t *stream) { + static void close_internal (xine_stream_t *stream) { + + int i ; ++ int gapless_switch = stream->gapless_switch; + + if( stream->slave ) { + xine_close( stream->slave ); +@@ -436,7 +437,7 @@ static void close_internal (xine_stream_ + } + } + +- if( !stream->gapless_switch ) { ++ if( !gapless_switch ) { + /* make sure that other threads cannot change the speed, especially pauseing the stream */ + pthread_mutex_lock(&stream->speed_change_lock); + stream->ignore_speed_change = 1; +@@ -452,7 +453,7 @@ static void close_internal (xine_stream_ + + stop_internal( stream ); + +- if( !stream->gapless_switch ) { ++ if( !gapless_switch ) { + if (stream->video_out) + stream->video_out->set_property(stream->video_out, VO_PROP_DISCARD_FRAMES, 0); + if (stream->audio_out) +@@ -603,6 +604,7 @@ xine_stream_t *xine_stream_new (xine_t * + stream->early_finish_event = 0; + stream->delay_finish_event = 0; + stream->gapless_switch = 0; ++ stream->keep_ao_driver_open = 0; + + stream->video_out = vo; + if (vo) +diff -up xine-lib-1.1.16.1/src/xine-engine/buffer.h.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/buffer.h +--- xine-lib-1.1.16.1/src/xine-engine/buffer.h.gapless_rate_fix 2009-01-10 19:25:34.000000000 -0600 ++++ xine-lib-1.1.16.1/src/xine-engine/buffer.h 2009-02-09 07:30:08.000000000 -0600 +@@ -378,6 +378,9 @@ struct buf_element_s { + * decoder_info[2] carries denominator for display aspect ratio */ + #define BUF_FLAG_ASPECT 0x0800 + ++/* represent the state of gapless_switch at the time buf was enqueued */ ++#define BUF_FLAG_GAPLESS_SW 0x1000 ++ + + /* Special buffer types: + * Sometimes there is a need to relay special information from a demuxer +diff -up xine-lib-1.1.16.1/src/xine-engine/demux.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/demux.c +--- xine-lib-1.1.16.1/src/xine-engine/demux.c.gapless_rate_fix 2009-01-10 19:25:34.000000000 -0600 ++++ xine-lib-1.1.16.1/src/xine-engine/demux.c 2009-02-09 07:30:08.000000000 -0600 +@@ -228,15 +228,18 @@ void _x_demux_control_headers_done (xine + void _x_demux_control_start( xine_stream_t *stream ) { + + buf_element_t *buf; ++ uint32_t flags = (stream->gapless_switch) ? BUF_FLAG_GAPLESS_SW : 0; + + pthread_mutex_lock(&stream->demux_mutex); + + buf = stream->video_fifo->buffer_pool_alloc (stream->video_fifo); + buf->type = BUF_CONTROL_START; ++ buf->decoder_flags = flags; + stream->video_fifo->put (stream->video_fifo, buf); + + buf = stream->audio_fifo->buffer_pool_alloc (stream->audio_fifo); + buf->type = BUF_CONTROL_START; ++ buf->decoder_flags = flags; + stream->audio_fifo->put (stream->audio_fifo, buf); + + pthread_mutex_unlock(&stream->demux_mutex); +diff -up xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c +--- xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c.gapless_rate_fix 2008-04-28 08:30:56.000000000 -0500 ++++ xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c 2009-02-09 07:30:08.000000000 -0600 +@@ -89,16 +89,18 @@ static void *audio_decoder_loop (void *s + if (stream->audio_decoder_plugin) { + + lprintf ("close old decoder\n"); +- ++ ++ stream->keep_ao_driver_open = !!(buf->decoder_flags & BUF_FLAG_GAPLESS_SW); + _x_free_audio_decoder (stream, stream->audio_decoder_plugin); + stream->audio_decoder_plugin = NULL; + stream->audio_track_map_entries = 0; + stream->audio_type = 0; ++ stream->keep_ao_driver_open = 0; + } + + running_ticket->release(running_ticket, 0); + +- if( !stream->gapless_switch ) ++ if( !(buf->decoder_flags & BUF_FLAG_GAPLESS_SW) ) + stream->metronom->handle_audio_discontinuity (stream->metronom, DISC_STREAMSTART, 0); + + buftype_unknown = 0; +diff -up xine-lib-1.1.16.1/src/xine-engine/xine_interface.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/xine_interface.c +--- xine-lib-1.1.16.1/src/xine-engine/xine_interface.c.gapless_rate_fix 2008-07-12 17:52:01.000000000 -0500 ++++ xine-lib-1.1.16.1/src/xine-engine/xine_interface.c 2009-02-09 07:30:08.000000000 -0600 +@@ -527,6 +527,9 @@ void xine_set_param (xine_stream_t *stre + + case XINE_PARAM_GAPLESS_SWITCH: + stream->gapless_switch = !!value; ++ if( stream->gapless_switch && !stream->early_finish_event ) { ++ xprintf (stream->xine, XINE_VERBOSITY_DEBUG, "frontend possibly buggy: gapless_switch without early_finish_event\n"); ++ } + break; + + default: +diff -up xine-lib-1.1.16.1/src/xine-engine/xine_internal.h.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/xine_internal.h +--- xine-lib-1.1.16.1/src/xine-engine/xine_internal.h.gapless_rate_fix 2008-08-24 16:51:15.000000000 -0500 ++++ xine-lib-1.1.16.1/src/xine-engine/xine_internal.h 2009-02-09 07:30:08.000000000 -0600 +@@ -361,6 +361,7 @@ struct xine_stream_s { + int early_finish_event; /* do not wait fifos get empty before sending event */ + int gapless_switch; /* next stream switch will be gapless */ + int delay_finish_event; /* delay event in 1/10 sec units. 0=>no delay, -1=>forever */ ++ int keep_ao_driver_open; + #endif + }; + diff --git a/xine-lib.spec b/xine-lib.spec index 5e94b77..2a29d59 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.1 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -56,6 +56,7 @@ Patch7: %{name}-1.1.16-old-caca.patch Patch8: xine-lib-1.1.15-avsync_hack.patch ## upstream patches Patch100: xine-lib-safe-audio-pause.patch +Patch101: xine-lib-1.1.16.1-gapless_race_fix.patch Provides: xine-lib(plugin-abi) = %{abiver} %if "%{?_isa}" != "%{nil}" @@ -89,7 +90,7 @@ BuildRequires: directfb-devel BuildRequires: ImageMagick-devel >= 6.2.4.6-1 %endif # imagemagick %if 0%{?_with_freetype:1} -BuildRequires: fontconfig-devel +BuildRequires: fontcotnfig-devel %endif # freetype # Audio BuildRequires: alsa-lib-devel >= 0.9.0 @@ -204,6 +205,7 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch8 -p1 -b .avsync_hack %patch100 -p1 -b .safe_audio_pause +%patch101 -p1 -b .gapless_race_fix # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -237,7 +239,6 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --with-external-ffmpeg \ --with-xv-path=%{_libdir} \ --with-libflac \ - --with-external-libdvdnav \ --with-external-libmpcdec \ %if 0%{?_without_imagemagick:1} --without-imagemagick \ @@ -437,8 +438,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Feb 09 2009 Rex Dieter - 1.1.16.1-4 +- gapless-race-fix patch (kdebug#180339) + * Sat Feb 07 2009 Rex Dieter - 1.1.16.1-3 -- safe-audio-pause patch +- safe-audio-pause patch (kdebug#180339) * Mon Jan 26 2009 Rex Dieter - 1.1.16.1-2 - Provides: xine-lib(plugin-abi)%%{?_isa} = %%{abiver} From 86f35fbab4d5d7b48f72ec3f576b2586386e2073 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 9 Feb 2009 13:42:26 +0000 Subject: [PATCH 067/150] fix bogus typo --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 2a29d59..865f801 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -90,7 +90,7 @@ BuildRequires: directfb-devel BuildRequires: ImageMagick-devel >= 6.2.4.6-1 %endif # imagemagick %if 0%{?_with_freetype:1} -BuildRequires: fontcotnfig-devel +BuildRequires: fontconfig-devel %endif # freetype # Audio BuildRequires: alsa-lib-devel >= 0.9.0 From b49ffe308e7099e712374e83dd9eab11360ca523 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Tue, 10 Feb 2009 23:03:37 +0000 Subject: [PATCH 068/150] * Tue Feb 10 2009 Rex Dieter - 1.1.16.2-1 - xine-lib-1.1.16.2 --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.16.1-gapless_race_fix.patch | 144 ----------------------- xine-lib-mk-autotools-patch.sh | 6 +- xine-lib.spec | 9 +- 5 files changed, 13 insertions(+), 154 deletions(-) delete mode 100644 xine-lib-1.1.16.1-gapless_race_fix.patch diff --git a/.cvsignore b/.cvsignore index 34a3b02..8a0cd42 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.16.1-autotools.patch.bz2 -xine-lib-1.1.16.1-pruned.tar.bz2 +xine-lib-1.1.16.2-pruned.tar.bz2 +xine-lib-1.1.16.2-autotools.patch.bz2 diff --git a/sources b/sources index 9a7e9c8..95d5764 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e3e061f93f36eae910b66cb0c973dbb8 xine-lib-1.1.16.1-autotools.patch.bz2 -aa1265b1007086c0906ec8134cfeacf6 xine-lib-1.1.16.1-pruned.tar.bz2 +e2c3a178be02f5c32957b2716123aa28 xine-lib-1.1.16.2-pruned.tar.bz2 +07bf186d51b8315026453a2f21b33703 xine-lib-1.1.16.2-autotools.patch.bz2 diff --git a/xine-lib-1.1.16.1-gapless_race_fix.patch b/xine-lib-1.1.16.1-gapless_race_fix.patch deleted file mode 100644 index ec46cbf..0000000 --- a/xine-lib-1.1.16.1-gapless_race_fix.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up xine-lib-1.1.16.1/src/xine-engine/audio_out.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/audio_out.c ---- xine-lib-1.1.16.1/src/xine-engine/audio_out.c.gapless_rate_fix 2009-02-09 07:30:08.000000000 -0600 -+++ xine-lib-1.1.16.1/src/xine-engine/audio_out.c 2009-02-09 07:30:08.000000000 -0600 -@@ -1623,7 +1623,7 @@ static void ao_close(xine_audio_port_t * - pthread_mutex_unlock(&this->streams_lock); - - /* close driver if no streams left */ -- if (!ite && !this->grab_only && !stream->gapless_switch) { -+ if (!ite && !this->grab_only && !stream->keep_ao_driver_open) { - xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_out: no streams left, closing driver\n"); - - if (this->audio_loop_running) { -diff -up xine-lib-1.1.16.1/src/xine-engine/video_decoder.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/video_decoder.c ---- xine-lib-1.1.16.1/src/xine-engine/video_decoder.c.gapless_rate_fix 2008-04-28 08:30:56.000000000 -0500 -+++ xine-lib-1.1.16.1/src/xine-engine/video_decoder.c 2009-02-09 07:31:36.000000000 -0600 -@@ -160,7 +160,7 @@ static void *video_decoder_loop (void *s - - running_ticket->release(running_ticket, 0); - -- if( !stream->gapless_switch ) -+ if( !(buf->decoder_flags & BUF_FLAG_GAPLESS_SW) ) - stream->metronom->handle_video_discontinuity (stream->metronom, - DISC_STREAMSTART, 0); - -diff -up xine-lib-1.1.16.1/src/xine-engine/xine.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/xine.c ---- xine-lib-1.1.16.1/src/xine-engine/xine.c.gapless_rate_fix 2009-02-09 07:30:08.000000000 -0600 -+++ xine-lib-1.1.16.1/src/xine-engine/xine.c 2009-02-09 07:30:08.000000000 -0600 -@@ -426,6 +426,7 @@ void xine_stop (xine_stream_t *stream) { - static void close_internal (xine_stream_t *stream) { - - int i ; -+ int gapless_switch = stream->gapless_switch; - - if( stream->slave ) { - xine_close( stream->slave ); -@@ -436,7 +437,7 @@ static void close_internal (xine_stream_ - } - } - -- if( !stream->gapless_switch ) { -+ if( !gapless_switch ) { - /* make sure that other threads cannot change the speed, especially pauseing the stream */ - pthread_mutex_lock(&stream->speed_change_lock); - stream->ignore_speed_change = 1; -@@ -452,7 +453,7 @@ static void close_internal (xine_stream_ - - stop_internal( stream ); - -- if( !stream->gapless_switch ) { -+ if( !gapless_switch ) { - if (stream->video_out) - stream->video_out->set_property(stream->video_out, VO_PROP_DISCARD_FRAMES, 0); - if (stream->audio_out) -@@ -603,6 +604,7 @@ xine_stream_t *xine_stream_new (xine_t * - stream->early_finish_event = 0; - stream->delay_finish_event = 0; - stream->gapless_switch = 0; -+ stream->keep_ao_driver_open = 0; - - stream->video_out = vo; - if (vo) -diff -up xine-lib-1.1.16.1/src/xine-engine/buffer.h.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/buffer.h ---- xine-lib-1.1.16.1/src/xine-engine/buffer.h.gapless_rate_fix 2009-01-10 19:25:34.000000000 -0600 -+++ xine-lib-1.1.16.1/src/xine-engine/buffer.h 2009-02-09 07:30:08.000000000 -0600 -@@ -378,6 +378,9 @@ struct buf_element_s { - * decoder_info[2] carries denominator for display aspect ratio */ - #define BUF_FLAG_ASPECT 0x0800 - -+/* represent the state of gapless_switch at the time buf was enqueued */ -+#define BUF_FLAG_GAPLESS_SW 0x1000 -+ - - /* Special buffer types: - * Sometimes there is a need to relay special information from a demuxer -diff -up xine-lib-1.1.16.1/src/xine-engine/demux.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/demux.c ---- xine-lib-1.1.16.1/src/xine-engine/demux.c.gapless_rate_fix 2009-01-10 19:25:34.000000000 -0600 -+++ xine-lib-1.1.16.1/src/xine-engine/demux.c 2009-02-09 07:30:08.000000000 -0600 -@@ -228,15 +228,18 @@ void _x_demux_control_headers_done (xine - void _x_demux_control_start( xine_stream_t *stream ) { - - buf_element_t *buf; -+ uint32_t flags = (stream->gapless_switch) ? BUF_FLAG_GAPLESS_SW : 0; - - pthread_mutex_lock(&stream->demux_mutex); - - buf = stream->video_fifo->buffer_pool_alloc (stream->video_fifo); - buf->type = BUF_CONTROL_START; -+ buf->decoder_flags = flags; - stream->video_fifo->put (stream->video_fifo, buf); - - buf = stream->audio_fifo->buffer_pool_alloc (stream->audio_fifo); - buf->type = BUF_CONTROL_START; -+ buf->decoder_flags = flags; - stream->audio_fifo->put (stream->audio_fifo, buf); - - pthread_mutex_unlock(&stream->demux_mutex); -diff -up xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c ---- xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c.gapless_rate_fix 2008-04-28 08:30:56.000000000 -0500 -+++ xine-lib-1.1.16.1/src/xine-engine/audio_decoder.c 2009-02-09 07:30:08.000000000 -0600 -@@ -89,16 +89,18 @@ static void *audio_decoder_loop (void *s - if (stream->audio_decoder_plugin) { - - lprintf ("close old decoder\n"); -- -+ -+ stream->keep_ao_driver_open = !!(buf->decoder_flags & BUF_FLAG_GAPLESS_SW); - _x_free_audio_decoder (stream, stream->audio_decoder_plugin); - stream->audio_decoder_plugin = NULL; - stream->audio_track_map_entries = 0; - stream->audio_type = 0; -+ stream->keep_ao_driver_open = 0; - } - - running_ticket->release(running_ticket, 0); - -- if( !stream->gapless_switch ) -+ if( !(buf->decoder_flags & BUF_FLAG_GAPLESS_SW) ) - stream->metronom->handle_audio_discontinuity (stream->metronom, DISC_STREAMSTART, 0); - - buftype_unknown = 0; -diff -up xine-lib-1.1.16.1/src/xine-engine/xine_interface.c.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/xine_interface.c ---- xine-lib-1.1.16.1/src/xine-engine/xine_interface.c.gapless_rate_fix 2008-07-12 17:52:01.000000000 -0500 -+++ xine-lib-1.1.16.1/src/xine-engine/xine_interface.c 2009-02-09 07:30:08.000000000 -0600 -@@ -527,6 +527,9 @@ void xine_set_param (xine_stream_t *stre - - case XINE_PARAM_GAPLESS_SWITCH: - stream->gapless_switch = !!value; -+ if( stream->gapless_switch && !stream->early_finish_event ) { -+ xprintf (stream->xine, XINE_VERBOSITY_DEBUG, "frontend possibly buggy: gapless_switch without early_finish_event\n"); -+ } - break; - - default: -diff -up xine-lib-1.1.16.1/src/xine-engine/xine_internal.h.gapless_rate_fix xine-lib-1.1.16.1/src/xine-engine/xine_internal.h ---- xine-lib-1.1.16.1/src/xine-engine/xine_internal.h.gapless_rate_fix 2008-08-24 16:51:15.000000000 -0500 -+++ xine-lib-1.1.16.1/src/xine-engine/xine_internal.h 2009-02-09 07:30:08.000000000 -0600 -@@ -361,6 +361,7 @@ struct xine_stream_s { - int early_finish_event; /* do not wait fifos get empty before sending event */ - int gapless_switch; /* next stream switch will be gapless */ - int delay_finish_event; /* delay event in 1/10 sec units. 0=>no delay, -1=>forever */ -+ int keep_ao_driver_open; - #endif - }; - diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index 93590b4..dc1e103 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -22,10 +22,12 @@ rm -rf xine-lib-$version xine-lib-$version-pruned tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned -cd xine-lib-$version +pushd xine-lib-$version +# extra work for to omit old libtool-related crud +rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 ./autogen.sh noconfig rm -rf autom4te.cache *~ -cd .. +popd diff -Nru xine-lib-$version-pruned xine-lib-$version \ | bzip2 --best > xine-lib-$version-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index 865f801..5170e18 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,8 +33,8 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.16.1 -Release: 4%{?dist} +Version: 1.1.16.2 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -56,7 +56,6 @@ Patch7: %{name}-1.1.16-old-caca.patch Patch8: xine-lib-1.1.15-avsync_hack.patch ## upstream patches Patch100: xine-lib-safe-audio-pause.patch -Patch101: xine-lib-1.1.16.1-gapless_race_fix.patch Provides: xine-lib(plugin-abi) = %{abiver} %if "%{?_isa}" != "%{nil}" @@ -205,7 +204,6 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch8 -p1 -b .avsync_hack %patch100 -p1 -b .safe_audio_pause -%patch101 -p1 -b .gapless_race_fix # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -438,6 +436,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Feb 10 2009 Rex Dieter - 1.1.16.2-1 +- xine-lib-1.1.16.2 + * Mon Feb 09 2009 Rex Dieter - 1.1.16.1-4 - gapless-race-fix patch (kdebug#180339) From 04cb6e43933afac81f6a42a62923ebad10eb54cd Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Wed, 11 Feb 2009 00:01:43 +0000 Subject: [PATCH 069/150] Sync F9 change up so we don't lose the change when syncing. --- xine-lib.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 5170e18..74cbcd8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.2 -Release: 1%{?dist} +Release: 1%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,7 +50,6 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch -# FIXME for 1.1.16.1 ? Patch7: %{name}-1.1.16-old-caca.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.15-avsync_hack.patch @@ -188,6 +187,9 @@ This package contains extra plugins for %{name}: %prep %setup -q +%if 0%{?old_caca} +sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure.ac +%endif %patch0 -p1 -b .autotools touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp @@ -198,6 +200,7 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 #patch6 -p1 -b .deepbind %if 0%{?old_caca} +sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure %patch7 -p0 -b .old-caca %endif @@ -436,6 +439,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Feb 10 2009 Kevin Kofler - 1.1.16.2-1.1 +- also patch the caca version check in configure(.ac) + * Tue Feb 10 2009 Rex Dieter - 1.1.16.2-1 - xine-lib-1.1.16.2 From 866427bb6095d28da19606551ea4e55648715b12 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Tue, 17 Feb 2009 21:23:03 +0000 Subject: [PATCH 070/150] * Tue Feb 17 2009 Rex Dieter - 1.1.16.2-2 - xine-lib-safe-audio-pause3 patch (kdebug#180339) --- ....patch => xine-lib-safe-audio-pause3.patch | 48 +++++++++++-------- xine-lib.spec | 7 ++- 2 files changed, 34 insertions(+), 21 deletions(-) rename xine-lib-safe-audio-pause.patch => xine-lib-safe-audio-pause3.patch (75%) diff --git a/xine-lib-safe-audio-pause.patch b/xine-lib-safe-audio-pause3.patch similarity index 75% rename from xine-lib-safe-audio-pause.patch rename to xine-lib-safe-audio-pause3.patch index 4a4b70b..fdfbf8a 100644 --- a/xine-lib-safe-audio-pause.patch +++ b/xine-lib-safe-audio-pause3.patch @@ -1,6 +1,14 @@ -diff -r ce4b1533a0af src/xine-engine/audio_out.c ---- a/src/xine-engine/audio_out.c Sun Jan 11 22:24:42 2009 +0000 -+++ b/src/xine-engine/audio_out.c Sat Feb 07 15:09:24 2009 -0200 +# HG changeset patch +# User Miguel Freitas +# Date 1234834587 10800 +# Node ID 2208e465026c1e54318d36dad8ca180d52fcc318 +# Parent 24a9b3d531419405f71dbcf96da93876769eb990 +Protect audio loop so it cannot write to a paused device (fix +pause/resume freeze with pulseaudio). + +diff -r 24a9b3d53141 -r 2208e465026c src/xine-engine/audio_out.c +--- a/src/xine-engine/audio_out.c Fri Feb 13 18:01:29 2009 +0000 ++++ b/src/xine-engine/audio_out.c Mon Feb 16 22:36:27 2009 -0300 @@ -243,6 +243,7 @@ audio_fifo_t *free_fifo; audio_fifo_t *out_fifo; @@ -49,23 +57,25 @@ diff -r ce4b1533a0af src/xine-engine/audio_out.c pthread_mutex_destroy(&this->flush_audio_driver_lock); pthread_cond_destroy(&this->flush_audio_driver_reached); -@@ -1910,11 +1916,15 @@ +@@ -1910,8 +1916,15 @@ if (value != XINE_FINE_SPEED_NORMAL && value != XINE_SPEED_PAUSE && !this->slow_fast_audio ) this->ao.control(&this->ao, AO_CTRL_FLUSH_BUFFERS, NULL); -+ /* current_speed_lock is here to make sure the ao_loop will pause in a safe place. -+ * that is, we cannot pause writing to device, filling gaps etc. */ -+ pthread_mutex_lock(&this->current_speed_lock); - this->ao.control(&this->ao, - (value == XINE_SPEED_PAUSE) ? AO_CTRL_PLAY_PAUSE : AO_CTRL_PLAY_RESUME, NULL); +- this->ao.control(&this->ao, +- (value == XINE_SPEED_PAUSE) ? AO_CTRL_PLAY_PAUSE : AO_CTRL_PLAY_RESUME, NULL); ++ if( value == XINE_SPEED_PAUSE ) { ++ /* current_speed_lock is here to make sure the ao_loop will pause in a safe place. ++ * that is, we cannot pause writing to device, filling gaps etc. */ ++ pthread_mutex_lock(&this->current_speed_lock); ++ this->ao.control(&this->ao, AO_CTRL_PLAY_PAUSE, NULL); ++ pthread_mutex_unlock(&this->current_speed_lock); ++ } else { ++ this->ao.control(&this->ao, AO_CTRL_PLAY_RESUME, NULL); ++ } this->current_speed = value; if( this->slow_fast_audio ) ao_update_resample_factor(this); -+ pthread_mutex_unlock(&this->current_speed_lock); - break; - - default: -@@ -2056,6 +2066,7 @@ +@@ -2056,6 +2069,7 @@ this->driver = driver; this->xine = xine; this->clock = xine->clock; @@ -73,7 +83,7 @@ diff -r ce4b1533a0af src/xine-engine/audio_out.c this->streams = xine_list_new(); /* warning: driver_lock is a recursive mutex. it must NOT be -@@ -2087,6 +2098,7 @@ +@@ -2087,6 +2101,7 @@ this->discard_buffers = 0; this->zero_space = calloc (1, ZERO_BUF_SIZE * 4 * 6); /* MAX as 32bit, 6 channels. */ @@ -81,9 +91,9 @@ diff -r ce4b1533a0af src/xine-engine/audio_out.c pthread_mutex_init( &this->flush_audio_driver_lock, NULL ); pthread_cond_init( &this->flush_audio_driver_reached, NULL ); -diff -r ce4b1533a0af src/xine-engine/xine.c ---- a/src/xine-engine/xine.c Sun Jan 11 22:24:42 2009 +0000 -+++ b/src/xine-engine/xine.c Sat Feb 07 15:09:25 2009 -0200 +diff -r 24a9b3d53141 -r 2208e465026c src/xine-engine/xine.c +--- a/src/xine-engine/xine.c Fri Feb 13 18:01:29 2009 +0000 ++++ b/src/xine-engine/xine.c Mon Feb 16 22:36:27 2009 -0300 @@ -330,17 +330,20 @@ static void set_speed_internal (xine_stream_t *stream, int speed) { @@ -114,7 +124,7 @@ diff -r ce4b1533a0af src/xine-engine/xine.c xine->port_ticket->release(xine->port_ticket, 1); } + -+ if (old_speed == XINE_SPEED_PAUSE && speed != XINE_SPEED_PAUSE) ++ if (old_speed == XINE_SPEED_PAUSE || speed != XINE_SPEED_PAUSE) + /* master clock is set after resuming the audio device (audio_out loop may continue) */ + stream->xine->clock->set_fine_speed (stream->xine->clock, speed); } diff --git a/xine-lib.spec b/xine-lib.spec index 74cbcd8..ba2b3bf 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.2 -Release: 1%{?dist}.1 +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -54,7 +54,7 @@ Patch7: %{name}-1.1.16-old-caca.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.15-avsync_hack.patch ## upstream patches -Patch100: xine-lib-safe-audio-pause.patch +Patch100: xine-lib-safe-audio-pause3.patch Provides: xine-lib(plugin-abi) = %{abiver} %if "%{?_isa}" != "%{nil}" @@ -439,6 +439,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Feb 17 2009 Rex Dieter - 1.1.16.2-2 +- xine-lib-safe-audio-pause3 patch (kdebug#180339) + * Tue Feb 10 2009 Kevin Kofler - 1.1.16.2-1.1 - also patch the caca version check in configure(.ac) From f7820e51d62cae32f078b18f860c560c2554febe Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 20 Feb 2009 13:37:39 +0000 Subject: [PATCH 071/150] * Fri Feb 20 2009 Rex Dieter - 1.1.16.2-3 - xine-lib-devel muiltilib conflict (#477226) --- xine-lib-1.1.16.2-multilib.patch | 16 ++++++++++++++++ xine-lib.spec | 10 ++++++++-- 2 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 xine-lib-1.1.16.2-multilib.patch diff --git a/xine-lib-1.1.16.2-multilib.patch b/xine-lib-1.1.16.2-multilib.patch new file mode 100644 index 0000000..4609e63 --- /dev/null +++ b/xine-lib-1.1.16.2-multilib.patch @@ -0,0 +1,16 @@ +diff -up xine-lib-1.1.16.2/misc/xine-config.in.multilib xine-lib-1.1.16.2/misc/xine-config.in +--- xine-lib-1.1.16.2/misc/xine-config.in.multilib 2008-06-25 08:04:09.000000000 -0500 ++++ xine-lib-1.1.16.2/misc/xine-config.in 2009-02-20 07:34:27.000000000 -0600 +@@ -6,12 +6,6 @@ unset prefix + unset exec_prefix + unset args + +-PKG_CONFIG_PATH="`cat <<'EOF' +-@XINE_PKGCONFIG_DIR@ +-EOF +-`${PKG_CONFIG_PATH:+:}$PKG_CONFIG_PATH" +-export PKG_CONFIG_PATH +- + usage() + { + cat <= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure %endif %patch8 -p1 -b .avsync_hack +%patch9 -p1 -b .multilib %patch100 -p1 -b .safe_audio_pause @@ -439,8 +442,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Feb 20 2009 Rex Dieter - 1.1.16.2-3 +- xine-lib-devel muiltilib conflict (#477226) + * Tue Feb 17 2009 Rex Dieter - 1.1.16.2-2 -- xine-lib-safe-audio-pause3 patch (kdebug#180339) +- xine-lib-safe-audio-pause3 patch (#486255, kdebug#180339) * Tue Feb 10 2009 Kevin Kofler - 1.1.16.2-1.1 - also patch the caca version check in configure(.ac) From 5658e316553794546ad36929ccdb3d278fdc5e84 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Thu, 26 Feb 2009 09:40:15 +0000 Subject: [PATCH 072/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index aa0ffe4..ed3cee6 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.2 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -442,6 +442,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Feb 26 2009 Fedora Release Engineering - 1.1.16.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + * Fri Feb 20 2009 Rex Dieter - 1.1.16.2-3 - xine-lib-devel muiltilib conflict (#477226) From cf59925f13c986e95994d193f09d9e5898a89225 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 10 Mar 2009 01:10:54 +0000 Subject: [PATCH 073/150] * Tue Mar 10 2009 Kevin Kofler - 1.1.16.2-5 - rebuild for new ImageMagick --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index ed3cee6..8fac3ad 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.2 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -442,6 +442,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Mar 10 2009 Kevin Kofler - 1.1.16.2-5 +- rebuild for new ImageMagick + * Thu Feb 26 2009 Fedora Release Engineering - 1.1.16.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild From 47c9b778d82a8c353960d3038500754441f898ab Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 26 Mar 2009 14:56:30 +0000 Subject: [PATCH 074/150] * Thu Mar 26 2009 Rex Dieter - 1.1.16.2-6 - add-mime-for-mod.patch --- xine-lib-add-mime-for-mod.patch | 23 +++++++++++++++++++++++ xine-lib.spec | 9 +++++++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 xine-lib-add-mime-for-mod.patch diff --git a/xine-lib-add-mime-for-mod.patch b/xine-lib-add-mime-for-mod.patch new file mode 100644 index 0000000..4bfa944 --- /dev/null +++ b/xine-lib-add-mime-for-mod.patch @@ -0,0 +1,23 @@ +--- src/demuxers/demux_mod.c 2009-02-08 20:56:51.000000000 +0200 ++++ src/demuxers/demux_mod.c.add-mime 2009-03-25 19:41:03.259017840 +0200 +@@ -379,7 +379,19 @@ + } + + static const char *get_mimetypes (demux_class_t *this_gen) { +- return NULL; ++ return "audio/x-mod: mod: SoundTracker/NoiseTracker/ProTracker Module;" ++ "audio/mod: mod: SoundTracker/NoiseTracker/ProTracker Module;" ++ "audio/it: it: ImpulseTracker Module;" ++ "audio/x-it: it: ImpulseTracker Module;" ++ "audio/x-stm: stm: ScreamTracker 2 Module;" ++ "audio/x-s3m: s3m: ScreamTracker 3 Module;" ++ "audio/s3m: s3m: ScreamTracker 3 Module;" ++ "application/playerpro: 669: 669 Tracker Module;" ++ "application/adrift; amf: ADRIFT Module File;" ++ "audio/med; med; Amiga MED/OctaMED Tracker Module Sound File;" ++ "audio/x-amf; amf: ADRIFT Module File;" ++ "audio/x-xm; xm: FastTracker II Audio;" ++ "audio/xm; xm: FastTracker II Audio;"; + } + + static void class_dispose (demux_class_t *this_gen) { \ No newline at end of file diff --git a/xine-lib.spec b/xine-lib.spec index 8fac3ad..825bedf 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.2 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -56,7 +56,8 @@ Patch8: xine-lib-1.1.15-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstream patches -Patch100: xine-lib-safe-audio-pause3.patch +Patch100: xine-lib-safe-audio-pause3.patch +Patch101: xine-lib-add-mime-for-mod.patch Provides: xine-lib(plugin-abi) = %{abiver} %if "%{?_isa}" != "%{nil}" @@ -210,6 +211,7 @@ sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure %patch9 -p1 -b .multilib %patch100 -p1 -b .safe_audio_pause +%patch101 -p0 -b .add-mime-for-mod # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -442,6 +444,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Mar 26 2009 Rex Dieter - 1.1.16.2-6 +- add-mime-for-mod.patch + * Tue Mar 10 2009 Kevin Kofler - 1.1.16.2-5 - rebuild for new ImageMagick From 4fc20dbcd498750e34700a5d19e58d1e0e1449da Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 26 Mar 2009 15:24:55 +0000 Subject: [PATCH 075/150] fix patch for no fuzz --- xine-lib-add-mime-for-mod.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib-add-mime-for-mod.patch b/xine-lib-add-mime-for-mod.patch index 4bfa944..371b062 100644 --- a/xine-lib-add-mime-for-mod.patch +++ b/xine-lib-add-mime-for-mod.patch @@ -20,4 +20,4 @@ + "audio/xm; xm: FastTracker II Audio;"; } - static void class_dispose (demux_class_t *this_gen) { \ No newline at end of file + static void class_dispose (demux_class_t *this_gen) { From 966bc61b769d07cdadd9022774dcbddc36eb4b71 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 3 Apr 2009 17:07:18 +0000 Subject: [PATCH 076/150] * Fri Apr 03 2009 Rex Dieter - 1.1.16.3-1 - xine-lib-1.1.16.3, plugin-abi 1.26 --- .cvsignore | 4 +- sources | 4 +- xine-lib-add-mime-for-mod.patch | 23 --- xine-lib-safe-audio-pause3.patch | 132 ------------------ xine-lib.spec | 232 +++++++++++++++---------------- 5 files changed, 119 insertions(+), 276 deletions(-) delete mode 100644 xine-lib-add-mime-for-mod.patch delete mode 100644 xine-lib-safe-audio-pause3.patch diff --git a/.cvsignore b/.cvsignore index 8a0cd42..dbdfc40 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.16.2-pruned.tar.bz2 -xine-lib-1.1.16.2-autotools.patch.bz2 +xine-lib-1.1.16.3-autotools.patch.bz2 +xine-lib-1.1.16.3-pruned.tar.bz2 diff --git a/sources b/sources index 95d5764..3cc02d3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e2c3a178be02f5c32957b2716123aa28 xine-lib-1.1.16.2-pruned.tar.bz2 -07bf186d51b8315026453a2f21b33703 xine-lib-1.1.16.2-autotools.patch.bz2 +e50122a9323107564d58056b35256610 xine-lib-1.1.16.3-autotools.patch.bz2 +0cac86b7d74c1dcaa22f5a8cbc5ef578 xine-lib-1.1.16.3-pruned.tar.bz2 diff --git a/xine-lib-add-mime-for-mod.patch b/xine-lib-add-mime-for-mod.patch deleted file mode 100644 index 371b062..0000000 --- a/xine-lib-add-mime-for-mod.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- src/demuxers/demux_mod.c 2009-02-08 20:56:51.000000000 +0200 -+++ src/demuxers/demux_mod.c.add-mime 2009-03-25 19:41:03.259017840 +0200 -@@ -379,7 +379,19 @@ - } - - static const char *get_mimetypes (demux_class_t *this_gen) { -- return NULL; -+ return "audio/x-mod: mod: SoundTracker/NoiseTracker/ProTracker Module;" -+ "audio/mod: mod: SoundTracker/NoiseTracker/ProTracker Module;" -+ "audio/it: it: ImpulseTracker Module;" -+ "audio/x-it: it: ImpulseTracker Module;" -+ "audio/x-stm: stm: ScreamTracker 2 Module;" -+ "audio/x-s3m: s3m: ScreamTracker 3 Module;" -+ "audio/s3m: s3m: ScreamTracker 3 Module;" -+ "application/playerpro: 669: 669 Tracker Module;" -+ "application/adrift; amf: ADRIFT Module File;" -+ "audio/med; med; Amiga MED/OctaMED Tracker Module Sound File;" -+ "audio/x-amf; amf: ADRIFT Module File;" -+ "audio/x-xm; xm: FastTracker II Audio;" -+ "audio/xm; xm: FastTracker II Audio;"; - } - - static void class_dispose (demux_class_t *this_gen) { diff --git a/xine-lib-safe-audio-pause3.patch b/xine-lib-safe-audio-pause3.patch deleted file mode 100644 index fdfbf8a..0000000 --- a/xine-lib-safe-audio-pause3.patch +++ /dev/null @@ -1,132 +0,0 @@ -# HG changeset patch -# User Miguel Freitas -# Date 1234834587 10800 -# Node ID 2208e465026c1e54318d36dad8ca180d52fcc318 -# Parent 24a9b3d531419405f71dbcf96da93876769eb990 -Protect audio loop so it cannot write to a paused device (fix -pause/resume freeze with pulseaudio). - -diff -r 24a9b3d53141 -r 2208e465026c src/xine-engine/audio_out.c ---- a/src/xine-engine/audio_out.c Fri Feb 13 18:01:29 2009 +0000 -+++ b/src/xine-engine/audio_out.c Mon Feb 16 22:36:27 2009 -0300 -@@ -243,6 +243,7 @@ - audio_fifo_t *free_fifo; - audio_fifo_t *out_fifo; - int64_t last_audio_vpts; -+ pthread_mutex_t current_speed_lock; - uint32_t current_speed; /* the current playback speed */ - /* FIXME: replace all this->clock->speed with this->current_speed. we should make - * sure nobody will change speed without going through xine.c:set_speed_internal */ -@@ -1040,6 +1041,7 @@ - * we must process/free buffers otherwise the entire engine will stop. - */ - -+ pthread_mutex_lock(&this->current_speed_lock); - if ( this->audio_loop_running && - (this->clock->speed == XINE_SPEED_PAUSE || - (this->clock->speed != XINE_FINE_SPEED_NORMAL && -@@ -1055,6 +1057,7 @@ - _x_refcounter_dec(in_buf->stream->refcounter); - fifo_append (this->free_fifo, in_buf); - in_buf = NULL; -+ pthread_mutex_unlock(&this->current_speed_lock); - continue; - } - -@@ -1065,6 +1068,7 @@ - } - - lprintf ("loop:pause: I feel sleepy (%d buffers).\n", this->out_fifo->num_buffers); -+ pthread_mutex_unlock(&this->current_speed_lock); - xine_usec_sleep (10000); - lprintf ("loop:pause: I wake up.\n"); - continue; -@@ -1274,6 +1278,7 @@ - fifo_append (this->free_fifo, in_buf); - in_buf = NULL; - } -+ pthread_mutex_unlock(&this->current_speed_lock); - - /* Give other threads a chance to use functions which require this->driver_lock to - * be available. This is needed when using NPTL on Linux (and probably PThreads -@@ -1684,6 +1689,7 @@ - free (this->frame_buf[1]); - free (this->zero_space); - -+ pthread_mutex_destroy(&this->current_speed_lock); - pthread_mutex_destroy(&this->flush_audio_driver_lock); - pthread_cond_destroy(&this->flush_audio_driver_reached); - -@@ -1910,8 +1916,15 @@ - if (value != XINE_FINE_SPEED_NORMAL && value != XINE_SPEED_PAUSE && !this->slow_fast_audio ) - this->ao.control(&this->ao, AO_CTRL_FLUSH_BUFFERS, NULL); - -- this->ao.control(&this->ao, -- (value == XINE_SPEED_PAUSE) ? AO_CTRL_PLAY_PAUSE : AO_CTRL_PLAY_RESUME, NULL); -+ if( value == XINE_SPEED_PAUSE ) { -+ /* current_speed_lock is here to make sure the ao_loop will pause in a safe place. -+ * that is, we cannot pause writing to device, filling gaps etc. */ -+ pthread_mutex_lock(&this->current_speed_lock); -+ this->ao.control(&this->ao, AO_CTRL_PLAY_PAUSE, NULL); -+ pthread_mutex_unlock(&this->current_speed_lock); -+ } else { -+ this->ao.control(&this->ao, AO_CTRL_PLAY_RESUME, NULL); -+ } - this->current_speed = value; - if( this->slow_fast_audio ) - ao_update_resample_factor(this); -@@ -2056,6 +2069,7 @@ - this->driver = driver; - this->xine = xine; - this->clock = xine->clock; -+ this->current_speed = xine->clock->speed; - this->streams = xine_list_new(); - - /* warning: driver_lock is a recursive mutex. it must NOT be -@@ -2087,6 +2101,7 @@ - this->discard_buffers = 0; - this->zero_space = calloc (1, ZERO_BUF_SIZE * 4 * 6); /* MAX as 32bit, 6 channels. */ - -+ pthread_mutex_init( &this->current_speed_lock, NULL ); - pthread_mutex_init( &this->flush_audio_driver_lock, NULL ); - pthread_cond_init( &this->flush_audio_driver_reached, NULL ); - -diff -r 24a9b3d53141 -r 2208e465026c src/xine-engine/xine.c ---- a/src/xine-engine/xine.c Fri Feb 13 18:01:29 2009 +0000 -+++ b/src/xine-engine/xine.c Mon Feb 16 22:36:27 2009 -0300 -@@ -330,17 +330,20 @@ - - static void set_speed_internal (xine_stream_t *stream, int speed) { - xine_t *xine = stream->xine; -+ int old_speed = xine->clock->speed; - -- if (xine->clock->speed != XINE_SPEED_PAUSE && speed == XINE_SPEED_PAUSE) -+ if (old_speed != XINE_SPEED_PAUSE && speed == XINE_SPEED_PAUSE) - /* get all decoder and post threads in a state where they agree to be blocked */ - xine->port_ticket->revoke(xine->port_ticket, 0); - -- if (xine->clock->speed == XINE_SPEED_PAUSE && speed != XINE_SPEED_PAUSE) -+ if (old_speed == XINE_SPEED_PAUSE && speed != XINE_SPEED_PAUSE) - /* all decoder and post threads may continue now */ - xine->port_ticket->issue(xine->port_ticket, 0); - -- stream->xine->clock->set_fine_speed (stream->xine->clock, speed); -- -+ if (old_speed != XINE_SPEED_PAUSE && speed == XINE_SPEED_PAUSE) -+ /* set master clock so audio_out loop can pause in a safe place */ -+ stream->xine->clock->set_fine_speed (stream->xine->clock, speed); -+ - /* see coment on audio_out loop about audio_paused */ - if( stream->audio_out ) { - xine->port_ticket->acquire(xine->port_ticket, 1); -@@ -350,6 +353,10 @@ - - xine->port_ticket->release(xine->port_ticket, 1); - } -+ -+ if (old_speed == XINE_SPEED_PAUSE || speed != XINE_SPEED_PAUSE) -+ /* master clock is set after resuming the audio device (audio_out loop may continue) */ -+ stream->xine->clock->set_fine_speed (stream->xine->clock, speed); - } - - diff --git a/xine-lib.spec b/xine-lib.spec index 825bedf..7893457 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -4,7 +4,7 @@ # http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html # - deprecate ESD support? -%define abiver 1.25 +%define plugin_abi 1.26 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -33,8 +33,8 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.16.2 -Release: 6%{?dist} +Version: 1.1.16.3 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -56,12 +56,10 @@ Patch8: xine-lib-1.1.15-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstream patches -Patch100: xine-lib-safe-audio-pause3.patch -Patch101: xine-lib-add-mime-for-mod.patch -Provides: xine-lib(plugin-abi) = %{abiver} +Provides: xine-lib(plugin-abi) = %{plugin_abi} %if "%{?_isa}" != "%{nil}" -Provides: xine-lib(plugin-abi)%{?_isa} = %{abiver} +Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi} %endif # X11 BuildRequires: libX11-devel @@ -144,7 +142,7 @@ This package contains development files for %{name}. Summary: aRts plugin for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} -#Requires: xine-lib(plugin-abi) = %{abiver} +#Requires: xine-lib(plugin-abi) = %{plugin_abi} # -arts was split off the -extras subpackage at 1.1.7-3 Obsoletes: xine-lib-extras < 1.1.7-3 @@ -166,7 +164,7 @@ This package contains the pulseaudio plugin for %{name}. Summary: Additional plugins for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} -#Requires: xine-lib(plugin-abi) = %{abiver} +#Requires: xine-lib(plugin-abi) = %{plugin_abi} %description extras This package contains extra plugins for %{name}: @@ -210,9 +208,6 @@ sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -%patch100 -p1 -b .safe_audio_pause -%patch101 -p0 -b .add-mime-for-mod - # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -292,142 +287,142 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man5/xine.5* %dir %{_libdir}/xine/ %dir %{_libdir}/xine/plugins/ -%dir %{_libdir}/xine/plugins/%{abiver}/ -%{_libdir}/xine/plugins/%{abiver}/mime.types +%dir %{_libdir}/xine/plugins/%{plugin_abi}/ +%{_libdir}/xine/plugins/%{plugin_abi}/mime.types # Listing every plugin separately for better control over binary packages # containing exactly the plugins we want, nothing accidentally snuck in # nor dropped. -%dir %{_libdir}/xine/plugins/%{abiver}/post/ -%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_audio_filters.so -%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_goom.so -%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_mosaico.so -%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_switch.so -%{_libdir}/xine/plugins/%{abiver}/post/xineplug_post_visualizations.so +%dir %{_libdir}/xine/plugins/%{plugin_abi}/post/ +%{_libdir}/xine/plugins/%{plugin_abi}/post/xineplug_post_audio_filters.so +%{_libdir}/xine/plugins/%{plugin_abi}/post/xineplug_post_goom.so +%{_libdir}/xine/plugins/%{plugin_abi}/post/xineplug_post_mosaico.so +%{_libdir}/xine/plugins/%{plugin_abi}/post/xineplug_post_switch.so +%{_libdir}/xine/plugins/%{plugin_abi}/post/xineplug_post_visualizations.so %if %{have_vidix} -%dir %{_libdir}/xine/plugins/%{abiver}/vidix/ -%{_libdir}/xine/plugins/%{abiver}/vidix/cyberblade_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/mach64_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/mga_crtc2_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/mga_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/nvidia_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/pm2_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/pm3_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/radeon_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/rage128_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/savage_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/sis_vid.so -%{_libdir}/xine/plugins/%{abiver}/vidix/unichrome_vid.so +%dir %{_libdir}/xine/plugins/%{plugin_abi}/vidix/ +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/cyberblade_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/mach64_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/mga_crtc2_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/mga_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/nvidia_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/pm2_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/pm3_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/radeon_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/rage128_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/savage_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/sis_vid.so +%{_libdir}/xine/plugins/%{plugin_abi}/vidix/unichrome_vid.so %endif # vidix -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_alsa.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_file.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_none.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_oss.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_bitplane.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gsm610.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_lpcm.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_mpc.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_alsa.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_file.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_none.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_oss.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_bitplane.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gsm610.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_lpcm.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_mpc.so %ifarch %ix86 -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_qt.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_qt.so %endif # ix86 -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_real.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_rgb.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_speex.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spu.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spucc.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spucmml.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_spudvb.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_sputext.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_theora.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_vorbis.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_real.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_rgb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_speex.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spu.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spucc.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spucmml.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spudvb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_sputext.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_theora.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_vorbis.so %ifarch %ix86 -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_w32dll.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_w32dll.so %endif # ix86 -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_yuv.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_audio.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_avi.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_fli.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_flv.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_games.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_iff.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_image.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_matroska.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mng.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_block.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_elem.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_pes.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_mpeg_ts.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_nsv.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_ogg.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_pva.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_qt.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_rawdv.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_real.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_slave.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_sputext.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_yuv_frames.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_dmx_yuv4mpeg2.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_flac.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_cdda.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_dvb.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_file.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_http.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_net.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_pnm.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_pvr.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_rtp.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_rtsp.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_stdin_fifo.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_v4l.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_fb.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_none.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_opengl.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_raw.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_syncfb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_yuv.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_audio.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_avi.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_fli.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_flv.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_games.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_iff.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_image.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_matroska.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_mng.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_mpeg.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_mpeg_block.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_mpeg_elem.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_mpeg_pes.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_mpeg_ts.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_nsv.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_ogg.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_pva.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_qt.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_rawdv.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_real.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_slave.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_sputext.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_yuv_frames.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_yuv4mpeg2.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_flac.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_cdda.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_dvb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_file.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_http.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_net.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pnm.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtp.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_raw.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_syncfb.so %if %{have_vidix} -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_vidix.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_vidix.so %endif # vidix %if %{with_xcb} -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xcbshm.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xcbxv.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbshm.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbxv.so %endif # xcb -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xshm.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xv.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xvmc.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xxmc.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_wavpack.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xshm.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xv.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so %if 0%{!?_without_arts:1} %files arts %defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_arts.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_arts.so %endif %if %{with_pa} %files pulseaudio %defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_pulseaudio.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so %endif %files extras %defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_esd.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_ao_out_jack.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_gdk_pixbuf.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_esd.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_jack.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gdk_pixbuf.so %if 0%{!?_without_imagemagick:1} -%{_libdir}/xine/plugins/%{abiver}/xineplug_decode_image.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_image.so %endif # imagemagick -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_gnome_vfs.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_inp_smb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_gnome_vfs.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_smb.so %if %{with_aalib} -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_aa.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_aa.so %endif # aalib -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_caca.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_caca.so %if 0%{!?_without_directfb:1} -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_directfb.so -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_xdirectfb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_directfb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xdirectfb.so %endif # directfb -%{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_sdl.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_sdl.so %files devel %defattr(-,root,root,-) @@ -444,6 +439,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Apr 03 2009 Rex Dieter - 1.1.16.3-1 +- xine-lib-1.1.16.3, plugin-abi 1.26 + * Thu Mar 26 2009 Rex Dieter - 1.1.16.2-6 - add-mime-for-mod.patch @@ -472,7 +470,7 @@ rm -rf $RPM_BUILD_ROOT - safe-audio-pause patch (kdebug#180339) * Mon Jan 26 2009 Rex Dieter - 1.1.16.1-2 -- Provides: xine-lib(plugin-abi)%%{?_isa} = %%{abiver} +- Provides: xine-lib(plugin-abi)%%{?_isa} = %%{plugin_abi} - touchup Summary/Description * Fri Jan 23 2009 Rex Dieter - 1.1.16.1-1 From efe8d228a75cb761fa1d5bb7d3f3a20b19f728ba Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 10 Apr 2009 15:17:17 +0000 Subject: [PATCH 077/150] * Fri Apr 10 2009 Rex Dieter - 1.1.16.3-2 - fix modtracker mimetypes --- xine-lib-1.1.16.3-mod_mimetypes_typo.patch | 20 ++++++++++++++++++++ xine-lib.spec | 8 +++++++- 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 xine-lib-1.1.16.3-mod_mimetypes_typo.patch diff --git a/xine-lib-1.1.16.3-mod_mimetypes_typo.patch b/xine-lib-1.1.16.3-mod_mimetypes_typo.patch new file mode 100644 index 0000000..b10fabb --- /dev/null +++ b/xine-lib-1.1.16.3-mod_mimetypes_typo.patch @@ -0,0 +1,20 @@ +diff -up xine-lib-1.1.16.3/src/demuxers/demux_mod.c.mod_mimetypes_typo xine-lib-1.1.16.3/src/demuxers/demux_mod.c +--- xine-lib-1.1.16.3/src/demuxers/demux_mod.c.mod_mimetypes_typo 2009-03-25 14:28:40.000000000 -0500 ++++ xine-lib-1.1.16.3/src/demuxers/demux_mod.c 2009-04-10 10:15:04.000000000 -0500 +@@ -387,11 +387,11 @@ static const char *get_mimetypes (demux_ + "audio/x-s3m: s3m: ScreamTracker 3 Module;" + "audio/s3m: s3m: ScreamTracker 3 Module;" + "application/playerpro: 669: 669 Tracker Module;" +- "application/adrift; amf: ADRIFT Module File;" +- "audio/med; med; Amiga MED/OctaMED Tracker Module Sound File;" +- "audio/x-amf; amf: ADRIFT Module File;" +- "audio/x-xm; xm: FastTracker II Audio;" +- "audio/xm; xm: FastTracker II Audio;"; ++ "application/adrift: amf: ADRIFT Module File;" ++ "audio/med: med: Amiga MED/OctaMED Tracker Module Sound File;" ++ "audio/x-amf: amf: ADRIFT Module File;" ++ "audio/x-xm: xm: FastTracker II Audio;" ++ "audio/xm: xm: FastTracker II Audio;"; + } + + static void class_dispose (demux_class_t *this_gen) { diff --git a/xine-lib.spec b/xine-lib.spec index 7893457..253bd5f 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,7 +34,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.3 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -55,6 +55,8 @@ Patch7: %{name}-1.1.16-old-caca.patch Patch8: xine-lib-1.1.15-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch +## upstreamable patches +Patch50: xine-lib-1.1.16.3-mod_mimetypes_typo.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{plugin_abi} @@ -207,6 +209,7 @@ sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib +%patch50 -p1 -b .mod_mimetypes_typo # Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -439,6 +442,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Apr 10 2009 Rex Dieter - 1.1.16.3-2 +- fix modtracker mimetypes + * Fri Apr 03 2009 Rex Dieter - 1.1.16.3-1 - xine-lib-1.1.16.3, plugin-abi 1.26 From 9440df6141ecab325a0fe69840ae7b585e6c6366 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 17 Apr 2009 16:56:23 +0000 Subject: [PATCH 078/150] sync from F-9/ branch --- xine-lib-1.1.16-old-caca.patch | 27 --------------------------- xine-lib.spec | 22 ++++------------------ 2 files changed, 4 insertions(+), 45 deletions(-) delete mode 100644 xine-lib-1.1.16-old-caca.patch diff --git a/xine-lib-1.1.16-old-caca.patch b/xine-lib-1.1.16-old-caca.patch deleted file mode 100644 index 5a149a9..0000000 --- a/xine-lib-1.1.16-old-caca.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- src/video_out/video_out_caca.c Tue Nov 18 21:13:55 2008 +0100 -+++ src/video_out/video_out_caca.c Mon Nov 10 16:33:51 2008 +0100 -@@ -276,7 +276,6 @@ static int caca_redraw_needed (vo_driver - - static vo_driver_t *open_plugin (video_driver_class_t *class_gen, const void *visual_gen) { - caca_class_t *class = (caca_class_t *) class_gen; -- caca_display_t *dp = (caca_display_t *)visual_gen; - caca_driver_t *this; - - this = calloc(1, sizeof (caca_driver_t)); -@@ -301,13 +300,8 @@ static vo_driver_t *open_plugin (video_d - this->yuv2rgb_factory = yuv2rgb_factory_init(MODE_32_RGB, 0, NULL); - this->yuv2rgb_factory->set_csc_levels(this->yuv2rgb_factory, 0, 128, 128); - -- if (dp) { -- this->cv = caca_get_canvas(dp); -- this->dp = dp; -- } else { -- this->cv = cucul_create_canvas(0, 0); -- this->dp = caca_create_display(this->cv); -- } -+ this->cv = cucul_create_canvas(0, 0); -+ this->dp = caca_create_display(this->cv); - - caca_refresh_display(this->dp); - return &this->vo_driver; - diff --git a/xine-lib.spec b/xine-lib.spec index 253bd5f..5986bbc 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -13,10 +13,6 @@ %define have_vidix 0 %endif # ix86 -%if 0%{?fedora} <= 9 - %define old_caca 1 -%endif - %if 0%{?fedora} %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} @@ -34,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.3 -Release: 2%{?dist} +Release: 2%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -50,7 +46,6 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: %{name}-1.1.4-optflags.patch Patch6: %{name}-1.1.1-deepbind-939.patch -Patch7: %{name}-1.1.16-old-caca.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.15-avsync_hack.patch # http://bugzilla.redhat.com/477226 @@ -79,11 +74,7 @@ BuildRequires: libmng-devel %if %{with_aalib} BuildRequires: aalib-devel >= 1.4 %endif # aalib -%if 0%{?old_caca} -BuildRequires: libcaca-devel >= 0.99 -%else BuildRequires: libcaca-devel >= 0.99-0.5.beta14 -%endif %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel %endif # directfb @@ -190,9 +181,6 @@ This package contains extra plugins for %{name}: %prep %setup -q -%if 0%{?old_caca} -sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure.ac -%endif %patch0 -p1 -b .autotools touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp @@ -202,11 +190,6 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # see also http://bugzilla.redhat.com/480504 for side-effects #patch6 -p1 -b .deepbind -%if 0%{?old_caca} -sed -i -e 's/caca >= 0\.99beta14 cucul >= 0\.99beta14/caca cucul/g' configure -%patch7 -p0 -b .old-caca -%endif - %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib %patch50 -p1 -b .mod_mimetypes_typo @@ -442,6 +425,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Apr 17 2009 Rex Dieter - 1.1.16.3-2.1 +- drop old_caca hacks/patches (F-9) + * Fri Apr 10 2009 Rex Dieter - 1.1.16.3-2 - fix modtracker mimetypes From 8961db9267bbdcf9a7b35ecd60f6d3da7de9c7b3 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 2 Jul 2009 17:24:14 +0000 Subject: [PATCH 079/150] * Thu Jul 02 2009 Rex Dieter - 1.1.16.3-3 - rebuild (DirectFB) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 5986bbc..d198b4f 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.3 -Release: 2%{?dist}.1 +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -425,6 +425,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Jul 02 2009 Rex Dieter - 1.1.16.3-3 +- rebuild (DirectFB) + * Fri Apr 17 2009 Rex Dieter - 1.1.16.3-2.1 - drop old_caca hacks/patches (F-9) From 346d5f4cc822efc2396c423b8a6175cba7c804b5 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Mon, 27 Jul 2009 08:05:29 +0000 Subject: [PATCH 080/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index d198b4f..32b7bdf 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.16.3 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://xinehq.de/ @@ -425,6 +425,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jul 27 2009 Fedora Release Engineering - 1.1.16.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + * Thu Jul 02 2009 Rex Dieter - 1.1.16.3-3 - rebuild (DirectFB) From 25c3a60902e8f309b1d4004529ef035de1b9ca89 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 22:40:59 +0000 Subject: [PATCH 081/150] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index a1c167d..3f11a94 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ NAME := xine-lib SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From 727d12ce69d035761680beaafb8f392620334b7b Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Thu, 26 Nov 2009 01:33:33 +0000 Subject: [PATCH 082/150] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index a1c167d..3f11a94 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ NAME := xine-lib SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From 13a297343ea85c6b0605e88dd78517b655fc5b4d Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 30 Nov 2009 02:08:09 +0000 Subject: [PATCH 083/150] * Sun Nov 29 2009 Rex Dieter - 1.1.16.3-5 - move -pulseaudio into main pkg (f12+) - update URL --- xine-lib.spec | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 32b7bdf..f31b4c4 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -23,17 +23,21 @@ %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora -%if 0%{?fedora} > 8 +%if 0%{?fedora} > 8 || 0%{?rhel} > 5 %define _without_arts --without-arts %endif +%if 0%{?fedora} > 11 +%define pa_in_main 1 +%endif + Summary: A multimedia engine Name: xine-lib Version: 1.1.16.3 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries -URL: http://xinehq.de/ +URL: http://www.xine-project.org/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code #Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 @@ -115,6 +119,11 @@ BuildRequires: samba-common %endif BuildRequires: libdvdnav-devel +%if 0%{?pa_in_main} +Obsoletes: xine-lib-pulseaudio < 1.1.16.3-5 +Provides: xine-lib-pulseaudio = %{version}-%{release} +%endif + %description This package contains the Xine library. It can be used to play back various media, decode multimedia files from local disk drives, and display @@ -146,8 +155,6 @@ This package contains the aRts plugin for %{name}. Summary: Pulseaudio plugin for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} -# -pulseaudio was split off -extras at 1.1.11.1-2 -#Obsoletes: xine-lib-extras < 1.1.11.1-2 %description pulseaudio This package contains the pulseaudio plugin for %{name}. @@ -378,18 +385,21 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so +%if %{with_pa} +%if ! 0%{?pa_in_main} +%files pulseaudio +%defattr(-,root,root,-) +%endif +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so +%endif + + %if 0%{!?_without_arts:1} %files arts %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_arts.so %endif -%if %{with_pa} -%files pulseaudio -%defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so -%endif - %files extras %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_esd.so @@ -425,6 +435,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Nov 29 2009 Rex Dieter - 1.1.16.3-5 +- move -pulseaudio into main pkg (f12+) +- update URL + * Mon Jul 27 2009 Fedora Release Engineering - 1.1.16.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild From 1622a9369f1bda10831df85cca567383cf8f5d23 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 30 Nov 2009 14:10:33 +0000 Subject: [PATCH 084/150] * Sun Nov 29 2009 Rex Dieter - 1.1.16.3-5 - move -pulseaudio into main pkg (f12+) - update URL --- xine-lib.spec | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 32b7bdf..f31b4c4 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -23,17 +23,21 @@ %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora -%if 0%{?fedora} > 8 +%if 0%{?fedora} > 8 || 0%{?rhel} > 5 %define _without_arts --without-arts %endif +%if 0%{?fedora} > 11 +%define pa_in_main 1 +%endif + Summary: A multimedia engine Name: xine-lib Version: 1.1.16.3 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries -URL: http://xinehq.de/ +URL: http://www.xine-project.org/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code #Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 @@ -115,6 +119,11 @@ BuildRequires: samba-common %endif BuildRequires: libdvdnav-devel +%if 0%{?pa_in_main} +Obsoletes: xine-lib-pulseaudio < 1.1.16.3-5 +Provides: xine-lib-pulseaudio = %{version}-%{release} +%endif + %description This package contains the Xine library. It can be used to play back various media, decode multimedia files from local disk drives, and display @@ -146,8 +155,6 @@ This package contains the aRts plugin for %{name}. Summary: Pulseaudio plugin for %{name} Group: System Environment/Libraries Requires: %{name} = %{version}-%{release} -# -pulseaudio was split off -extras at 1.1.11.1-2 -#Obsoletes: xine-lib-extras < 1.1.11.1-2 %description pulseaudio This package contains the pulseaudio plugin for %{name}. @@ -378,18 +385,21 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so +%if %{with_pa} +%if ! 0%{?pa_in_main} +%files pulseaudio +%defattr(-,root,root,-) +%endif +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so +%endif + + %if 0%{!?_without_arts:1} %files arts %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_arts.so %endif -%if %{with_pa} -%files pulseaudio -%defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so -%endif - %files extras %defattr(-,root,root,-) %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_esd.so @@ -425,6 +435,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Nov 29 2009 Rex Dieter - 1.1.16.3-5 +- move -pulseaudio into main pkg (f12+) +- update URL + * Mon Jul 27 2009 Fedora Release Engineering - 1.1.16.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild From 5c46b58bf28d8f5b2f4440d128e920312e23b58c Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 2 Dec 2009 18:27:27 +0000 Subject: [PATCH 085/150] * Wed Dec 02 2009 Rex Dieter - 1.1.17-1 - xine-lib-1.1.17, plugin-abi 1.27 --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.15-avsync_hack.patch | 22 -------- xine-lib-1.1.16.3-mod_mimetypes_typo.patch | 20 ------- xine-lib-mk-autotools-patch.sh | 1 + xine-lib.spec | 61 +++++++++++----------- 6 files changed, 35 insertions(+), 77 deletions(-) delete mode 100644 xine-lib-1.1.15-avsync_hack.patch delete mode 100644 xine-lib-1.1.16.3-mod_mimetypes_typo.patch diff --git a/.cvsignore b/.cvsignore index dbdfc40..8f16768 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.16.3-autotools.patch.bz2 -xine-lib-1.1.16.3-pruned.tar.bz2 +xine-lib-1.1.17-pruned.tar.bz2 +xine-lib-1.1.17-autotools.patch.bz2 diff --git a/sources b/sources index 3cc02d3..b24e568 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e50122a9323107564d58056b35256610 xine-lib-1.1.16.3-autotools.patch.bz2 -0cac86b7d74c1dcaa22f5a8cbc5ef578 xine-lib-1.1.16.3-pruned.tar.bz2 +4c2655e0c12520b1e6e78a72d59a62ce xine-lib-1.1.17-pruned.tar.bz2 +f4282ee36447d94765d89d06787012be xine-lib-1.1.17-autotools.patch.bz2 diff --git a/xine-lib-1.1.15-avsync_hack.patch b/xine-lib-1.1.15-avsync_hack.patch deleted file mode 100644 index f33aba4..0000000 --- a/xine-lib-1.1.15-avsync_hack.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -uNr xine-lib-1.1.15.orig/src/xine-engine/audio_out.c xine-lib-1.1.15/src/xine-engine/audio_out.c ---- xine-lib-1.1.15.orig/src/xine-engine/audio_out.c 2008-07-10 18:19:10.000000000 +0200 -+++ xine-lib-1.1.15/src/xine-engine/audio_out.c 2009-01-10 21:57:20.000000000 +0100 -@@ -1151,8 +1151,17 @@ - - /* - * calculate gap: -+ * -+ * HACK (rwa): If we have no video stream we do not need an AV sync and so -+ * we assume a gap of 0. This seems to avoid the skips in the -+ * first seconds when playing audio-only via the "glitch-free" -+ * pulseaudio server. - */ -- gap = in_buf->vpts - hw_vpts; -+ if (in_buf && in_buf->stream && in_buf->stream->video_decoder_plugin) { -+ gap = in_buf->vpts - hw_vpts; -+ } else { -+ gap = 0; -+ } - lprintf ("hw_vpts : %" PRId64 " buffer_vpts : %" PRId64 " gap : %" PRId64 "\n", - hw_vpts, in_buf->vpts, gap); - diff --git a/xine-lib-1.1.16.3-mod_mimetypes_typo.patch b/xine-lib-1.1.16.3-mod_mimetypes_typo.patch deleted file mode 100644 index b10fabb..0000000 --- a/xine-lib-1.1.16.3-mod_mimetypes_typo.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up xine-lib-1.1.16.3/src/demuxers/demux_mod.c.mod_mimetypes_typo xine-lib-1.1.16.3/src/demuxers/demux_mod.c ---- xine-lib-1.1.16.3/src/demuxers/demux_mod.c.mod_mimetypes_typo 2009-03-25 14:28:40.000000000 -0500 -+++ xine-lib-1.1.16.3/src/demuxers/demux_mod.c 2009-04-10 10:15:04.000000000 -0500 -@@ -387,11 +387,11 @@ static const char *get_mimetypes (demux_ - "audio/x-s3m: s3m: ScreamTracker 3 Module;" - "audio/s3m: s3m: ScreamTracker 3 Module;" - "application/playerpro: 669: 669 Tracker Module;" -- "application/adrift; amf: ADRIFT Module File;" -- "audio/med; med; Amiga MED/OctaMED Tracker Module Sound File;" -- "audio/x-amf; amf: ADRIFT Module File;" -- "audio/x-xm; xm: FastTracker II Audio;" -- "audio/xm; xm: FastTracker II Audio;"; -+ "application/adrift: amf: ADRIFT Module File;" -+ "audio/med: med: Amiga MED/OctaMED Tracker Module Sound File;" -+ "audio/x-amf: amf: ADRIFT Module File;" -+ "audio/x-xm: xm: FastTracker II Audio;" -+ "audio/xm: xm: FastTracker II Audio;"; - } - - static void class_dispose (demux_class_t *this_gen) { diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index dc1e103..3cb6d1a 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -23,6 +23,7 @@ tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned pushd xine-lib-$version +patch -p1 < ../xine-lib-${version}-no_autopoint.patch # extra work for to omit old libtool-related crud rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 ./autogen.sh noconfig diff --git a/xine-lib.spec b/xine-lib.spec index f31b4c4..5553318 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,10 +1,9 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? -# http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html # - deprecate ESD support? -%define plugin_abi 1.26 +%define plugin_abi 1.27 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -33,35 +32,36 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.16.3 -Release: 5%{?dist} +Version: 1.1.17 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code #Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 -Source0: %{name}-%{version}-pruned.tar.bz2 -Source1: %{name}-cleanup-sources.sh -Source2: %{name}-mk-autotools-patch.sh +Source0: xine-lib-%{version}-pruned.tar.bz2 +Source1: xine-lib-cleanup-sources.sh +Source2: xine-lib-mk-autotools-patch.sh # autotools patch created with source2 -Patch0: %{name}-%{version}-autotools.patch.bz2 +Patch0: xine-lib-%{version}-autotools.patch.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -Patch1: %{name}-1.1.4-optflags.patch -Patch6: %{name}-1.1.1-deepbind-939.patch +Patch1: xine-lib-1.1.4-optflags.patch +# used to help +Patch2: xine-lib-1.1.17-no_autopoint.patch +Patch6: xine-lib-1.1.1-deepbind-939.patch # http://bugzilla.redhat.com/470568 -Patch8: xine-lib-1.1.15-avsync_hack.patch +Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstreamable patches -Patch50: xine-lib-1.1.16.3-mod_mimetypes_typo.patch ## upstream patches -Provides: xine-lib(plugin-abi) = %{plugin_abi} -%if "%{?_isa}" != "%{nil}" -Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi} -%endif +Provides: xine-lib(plugin-abi) = %{plugin_abi} +%{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} + +BuildRequires: automake libtool # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel @@ -133,39 +133,32 @@ common multimedia formats available - and some uncommon formats, too. %package devel Summary: Xine library development files Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig Requires: zlib-devel - %description devel This package contains development files for %{name}. %package arts Summary: aRts plugin for %{name} Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{plugin_abi} -# -arts was split off the -extras subpackage at 1.1.7-3 -Obsoletes: xine-lib-extras < 1.1.7-3 - %description arts This package contains the aRts plugin for %{name}. %package pulseaudio Summary: Pulseaudio plugin for %{name} Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} - +Requires: %{name}%{?_isa} = %{version}-%{release} %description pulseaudio This package contains the pulseaudio plugin for %{name}. - %package extras Summary: Additional plugins for %{name} Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{plugin_abi} - %description extras This package contains extra plugins for %{name}: - EsounD @@ -196,12 +189,14 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # needed at least when compiling with external ffmpeg and internal faad livna bug#939. # see also http://bugzilla.redhat.com/480504 for side-effects #patch6 -p1 -b .deepbind - %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -%patch50 -p1 -b .mod_mimetypes_typo -# Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) +# autotools patch + touch'ing above seems to miss something, aclocal +# runs on make anyway, let's use the ./autogen.sh hammer for now. +./autogen.sh noconfig + +#Avoid standard rpaths on lib64 archs: (autotools patch handles this too) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -314,7 +309,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_lpcm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_mpc.so -%ifarch %ix86 +%ifarch %{ix86} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_qt.so %endif # ix86 %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_real.so @@ -324,6 +319,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spucc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spucmml.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spudvb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spuhdmv.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_sputext.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_theora.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_vorbis.so @@ -435,6 +431,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Dec 02 2009 Rex Dieter - 1.1.17-1 +- xine-lib-1.1.17, plugin-abi 1.27 + * Sun Nov 29 2009 Rex Dieter - 1.1.16.3-5 - move -pulseaudio into main pkg (f12+) - update URL From d4183433d2a3be052c4ca72530b9cfc4037c485f Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Thu, 3 Dec 2009 15:38:44 +0000 Subject: [PATCH 086/150] awol/rebased patches --- xine-lib-1.1.17-avsync_hack.patch | 22 ++++++++++++++++++++++ xine-lib-1.1.17-no_autopoint.patch | 17 +++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 xine-lib-1.1.17-avsync_hack.patch create mode 100644 xine-lib-1.1.17-no_autopoint.patch diff --git a/xine-lib-1.1.17-avsync_hack.patch b/xine-lib-1.1.17-avsync_hack.patch new file mode 100644 index 0000000..5fa1ae1 --- /dev/null +++ b/xine-lib-1.1.17-avsync_hack.patch @@ -0,0 +1,22 @@ +diff -up xine-lib-1.1.17/src/xine-engine/audio_out.c.avsync_hack xine-lib-1.1.17/src/xine-engine/audio_out.c +--- xine-lib-1.1.17/src/xine-engine/audio_out.c.avsync_hack 2009-11-30 19:33:30.000000000 -0600 ++++ xine-lib-1.1.17/src/xine-engine/audio_out.c 2009-12-02 09:07:37.622805780 -0600 +@@ -1156,8 +1156,17 @@ static void *ao_loop (void *this_gen) { + + /* + * calculate gap: ++ * ++ * HACK (rwa): If we have no video stream we do not need an AV sync and so ++ * we assume a gap of 0. This seems to avoid the skips in the ++ * first seconds when playing audio-only via the "glitch-free" ++ * pulseaudio server. + */ +- gap = in_buf->vpts - hw_vpts; ++ if (in_buf && in_buf->stream && in_buf->stream->video_decoder_plugin) { ++ gap = in_buf->vpts - hw_vpts; ++ } else { ++ gap = 0; ++ } + lprintf ("hw_vpts : %" PRId64 " buffer_vpts : %" PRId64 " gap : %" PRId64 "\n", + hw_vpts, in_buf->vpts, gap); + diff --git a/xine-lib-1.1.17-no_autopoint.patch b/xine-lib-1.1.17-no_autopoint.patch new file mode 100644 index 0000000..d5ee0cd --- /dev/null +++ b/xine-lib-1.1.17-no_autopoint.patch @@ -0,0 +1,17 @@ +diff -up xine-lib-1.1.17/autogen.sh.no_autopoint xine-lib-1.1.17/autogen.sh +--- xine-lib-1.1.17/autogen.sh.no_autopoint 2009-10-09 09:33:31.000000000 -0500 ++++ xine-lib-1.1.17/autogen.sh 2009-12-02 09:15:48.534555467 -0600 +@@ -229,10 +229,10 @@ run_aclocal () { + echo + fi + +- echo $_echo_n " + Running autopoint: $_echo_c" ++ #echo $_echo_n " + Running autopoint: $_echo_c" + +- autopoint +- echo "done." ++ #autopoint ++ #echo "done." + + echo $_echo_n " + Running aclocal: $_echo_c" + From 96fbf1ada3d23397713cce63db4587a511f11006 Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Mon, 7 Dec 2009 13:55:57 +0000 Subject: [PATCH 087/150] * Mon Dec 07 2009 Bastien Nocera 1.1.17-2 - Remove gnome-vfs2 plugin, it's mostly useless --- xine-lib.spec | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 5553318..d0c27db 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.17 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -110,7 +110,6 @@ BuildRequires: wavpack-devel BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig -BuildRequires: gnome-vfs2-devel BuildRequires: gtk2-devel %if 0%{?fedora} > 6 || 0%{?rhel} > 5 BuildRequires: libsmbclient-devel @@ -404,7 +403,6 @@ rm -rf $RPM_BUILD_ROOT %if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_image.so %endif # imagemagick -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_smb.so %if %{with_aalib} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_aa.so @@ -431,6 +429,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Dec 07 2009 Bastien Nocera 1.1.17-2 +- Remove gnome-vfs2 plugin, it's mostly useless + * Wed Dec 02 2009 Rex Dieter - 1.1.17-1 - xine-lib-1.1.17, plugin-abi 1.27 From 89bd664627d9e93a165b42dc22ebd6fe0bdd775e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 14 Dec 2009 16:06:33 +0000 Subject: [PATCH 088/150] * Sat Dec 12 2009 Rex Dieter - 1.1.17-3 - bump flac_decoder priority (rh#301861,xine#225) --- xine-lib-1.1.17-flac_priority.patch | 12 ++++++++++++ xine-lib.spec | 7 +++++++ 2 files changed, 19 insertions(+) create mode 100644 xine-lib-1.1.17-flac_priority.patch diff --git a/xine-lib-1.1.17-flac_priority.patch b/xine-lib-1.1.17-flac_priority.patch new file mode 100644 index 0000000..68aae11 --- /dev/null +++ b/xine-lib-1.1.17-flac_priority.patch @@ -0,0 +1,12 @@ +diff -up xine-lib-1.1.17/src/combined/decoder_flac.c.flac_priority xine-lib-1.1.17/src/combined/decoder_flac.c +--- xine-lib-1.1.17/src/combined/decoder_flac.c.flac_priority 2009-11-30 14:55:46.000000000 -0600 ++++ xine-lib-1.1.17/src/combined/decoder_flac.c 2009-12-12 21:34:19.095500951 -0600 +@@ -426,7 +426,7 @@ static uint32_t audio_types[] = { + + static const decoder_info_t dec_info_audio = { + audio_types, /* supported types */ +- 5 /* priority */ ++ 8 /* priority */ + }; + + const plugin_info_t xine_plugin_info[] EXPORTED = { diff --git a/xine-lib.spec b/xine-lib.spec index d0c27db..a5fa05c 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -56,6 +56,9 @@ Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstreamable patches +# https://bugzilla.redhat.com/show_bug.cgi?id=301861 +# http://bugs.xine-project.org/show_bug.cgi?id=225 +Patch50: xine-lib-1.1.17-flac_priority.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{plugin_abi} @@ -190,6 +193,7 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 #patch6 -p1 -b .deepbind %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib +%patch50 -p1 -b .flac_priority # autotools patch + touch'ing above seems to miss something, aclocal # runs on make anyway, let's use the ./autogen.sh hammer for now. @@ -429,6 +433,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Dec 12 2009 Rex Dieter - 1.1.17-3 +- bump flac_decoder priority (rh#301861,xine#225) + * Mon Dec 07 2009 Bastien Nocera 1.1.17-2 - Remove gnome-vfs2 plugin, it's mostly useless From 549b84b42382bb3ec56db5a8d8eccebb6b4f7dd0 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 14 Dec 2009 16:09:13 +0000 Subject: [PATCH 089/150] Release++ --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index a5fa05c..5ed9d31 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -33,7 +33,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.17 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ From 3cc315a82c6c6cf83ae38cc8dcf352bd5cbb5a8e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 24 Feb 2010 15:07:47 +0000 Subject: [PATCH 090/150] * Wed Feb 24 2010 Rex Dieter - 1.1.18-1 - xine-lib-1.1.18, plugin-abi 1.28 (#567913) --- .cvsignore | 4 +-- sources | 4 +-- xine-lib-1.1.17-flac_priority.patch | 12 ------- ...atch => xine-lib-1.1.18-no_autopoint.patch | 0 xine-lib.spec | 35 +++++++++++-------- 5 files changed, 25 insertions(+), 30 deletions(-) delete mode 100644 xine-lib-1.1.17-flac_priority.patch rename xine-lib-1.1.17-no_autopoint.patch => xine-lib-1.1.18-no_autopoint.patch (100%) diff --git a/.cvsignore b/.cvsignore index 8f16768..07a7912 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.17-pruned.tar.bz2 -xine-lib-1.1.17-autotools.patch.bz2 +xine-lib-1.1.18-pruned.tar.bz2 +xine-lib-1.1.18-autotools.patch.bz2 diff --git a/sources b/sources index b24e568..53206ac 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -4c2655e0c12520b1e6e78a72d59a62ce xine-lib-1.1.17-pruned.tar.bz2 -f4282ee36447d94765d89d06787012be xine-lib-1.1.17-autotools.patch.bz2 +8e93ff9da4839042680c8118f1c4cd3f xine-lib-1.1.18-pruned.tar.bz2 +2b8c6d3188a180fa763a44bb2ca9fe4c xine-lib-1.1.18-autotools.patch.bz2 diff --git a/xine-lib-1.1.17-flac_priority.patch b/xine-lib-1.1.17-flac_priority.patch deleted file mode 100644 index 68aae11..0000000 --- a/xine-lib-1.1.17-flac_priority.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up xine-lib-1.1.17/src/combined/decoder_flac.c.flac_priority xine-lib-1.1.17/src/combined/decoder_flac.c ---- xine-lib-1.1.17/src/combined/decoder_flac.c.flac_priority 2009-11-30 14:55:46.000000000 -0600 -+++ xine-lib-1.1.17/src/combined/decoder_flac.c 2009-12-12 21:34:19.095500951 -0600 -@@ -426,7 +426,7 @@ static uint32_t audio_types[] = { - - static const decoder_info_t dec_info_audio = { - audio_types, /* supported types */ -- 5 /* priority */ -+ 8 /* priority */ - }; - - const plugin_info_t xine_plugin_info[] EXPORTED = { diff --git a/xine-lib-1.1.17-no_autopoint.patch b/xine-lib-1.1.18-no_autopoint.patch similarity index 100% rename from xine-lib-1.1.17-no_autopoint.patch rename to xine-lib-1.1.18-no_autopoint.patch diff --git a/xine-lib.spec b/xine-lib.spec index 5ed9d31..895b2d3 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -3,7 +3,7 @@ # - drop the opengl video out plugin? # - deprecate ESD support? -%define plugin_abi 1.27 +%define plugin_abi 1.28 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -13,13 +13,15 @@ %endif # ix86 %if 0%{?fedora} - %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} - %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} - %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} +%define _enable_v4l --enable-v4l --enable-libv4l +%define _disable_gnomevfs --disable-gnomevfs +%define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} +%define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} +%define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else - %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} - %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} - %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} +%define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} +%define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} +%define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora %if 0%{?fedora} > 8 || 0%{?rhel} > 5 @@ -32,8 +34,8 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.17 -Release: 3%{?dist} +Version: 1.1.18 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -49,16 +51,13 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: xine-lib-1.1.4-optflags.patch # used to help -Patch2: xine-lib-1.1.17-no_autopoint.patch +Patch2: xine-lib-1.1.18-no_autopoint.patch Patch6: xine-lib-1.1.1-deepbind-939.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstreamable patches -# https://bugzilla.redhat.com/show_bug.cgi?id=301861 -# http://bugs.xine-project.org/show_bug.cgi?id=225 -Patch50: xine-lib-1.1.17-flac_priority.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{plugin_abi} @@ -71,6 +70,9 @@ BuildRequires: libXv-devel BuildRequires: libXinerama-devel BuildRequires: libXvMC-devel BuildRequires: libGLU-devel +%if 0%{?_enable_v4l:1} +BuildRequires: libv4l-devel +%endif %if %{with_xcb} BuildRequires: libxcb-devel %endif # xcb @@ -193,7 +195,6 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 #patch6 -p1 -b .deepbind %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -%patch50 -p1 -b .flac_priority # autotools patch + touch'ing above seems to miss something, aclocal # runs on make anyway, let's use the ./autogen.sh hammer for now. @@ -215,6 +216,8 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{!?_without_directfb:1} --enable-directfb \ %endif # directfb + %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l --disable-libv4l} \ + %{?_disable_gnomevfs} \ --disable-a52dec \ --disable-mad \ --disable-vcd \ @@ -366,6 +369,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so @@ -433,6 +437,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Feb 24 2010 Rex Dieter - 1.1.18-1 +- xine-lib-1.1.18, plugin-abi 1.28 (#567913) + * Sat Dec 12 2009 Rex Dieter - 1.1.17-3 - bump flac_decoder priority (rh#301861,xine#225) From 277a2b42301e06fb936a8b26c9bf1793f399378f Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sun, 7 Mar 2010 15:05:51 +0000 Subject: [PATCH 091/150] * Sun Mar 07 2010 Rex Dieter - 1.1.18-2 - rebuild (ImageMagick) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 895b2d3..c9df1d9 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -35,7 +35,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.18 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -437,6 +437,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Mar 07 2010 Rex Dieter - 1.1.18-2 +- rebuild (ImageMagick) + * Wed Feb 24 2010 Rex Dieter - 1.1.18-1 - xine-lib-1.1.18, plugin-abi 1.28 (#567913) From 68efe077519ac783c5be3b2a74382d336008b4a6 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sun, 7 Mar 2010 23:49:54 +0000 Subject: [PATCH 092/150] * Sun Mar 07 2010 Rex Dieter - 1.1.18.1-1 - xine-lib-1.1.18.1 --- .cvsignore | 4 ++-- sources | 4 ++-- ...autopoint.patch => xine-lib-1.1.18.1-no_autopoint.patch | 0 xine-lib.spec | 7 +++++-- 4 files changed, 9 insertions(+), 6 deletions(-) rename xine-lib-1.1.18-no_autopoint.patch => xine-lib-1.1.18.1-no_autopoint.patch (100%) diff --git a/.cvsignore b/.cvsignore index 07a7912..9d21c9b 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.18-pruned.tar.bz2 -xine-lib-1.1.18-autotools.patch.bz2 +xine-lib-1.1.18.1-autotools.patch.bz2 +xine-lib-1.1.18.1-pruned.tar.bz2 diff --git a/sources b/sources index 53206ac..cf9ff04 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -8e93ff9da4839042680c8118f1c4cd3f xine-lib-1.1.18-pruned.tar.bz2 -2b8c6d3188a180fa763a44bb2ca9fe4c xine-lib-1.1.18-autotools.patch.bz2 +e2c45d451fd9d8ad3be680237ff5bcdf xine-lib-1.1.18.1-autotools.patch.bz2 +55de212f416d9d366cad7520ccd7a539 xine-lib-1.1.18.1-pruned.tar.bz2 diff --git a/xine-lib-1.1.18-no_autopoint.patch b/xine-lib-1.1.18.1-no_autopoint.patch similarity index 100% rename from xine-lib-1.1.18-no_autopoint.patch rename to xine-lib-1.1.18.1-no_autopoint.patch diff --git a/xine-lib.spec b/xine-lib.spec index c9df1d9..c0b33dd 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -34,8 +34,8 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.18 -Release: 2%{?dist} +Version: 1.1.18.1 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -437,6 +437,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Mar 07 2010 Rex Dieter - 1.1.18.1-1 +- xine-lib-1.1.18.1 + * Sun Mar 07 2010 Rex Dieter - 1.1.18-2 - rebuild (ImageMagick) From dee332a2dadaad166460acbf471356c17efbeb3e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 8 Mar 2010 14:53:03 +0000 Subject: [PATCH 093/150] fix patch reference --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index c0b33dd..17f16b7 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -51,7 +51,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch1: xine-lib-1.1.4-optflags.patch # used to help -Patch2: xine-lib-1.1.18-no_autopoint.patch +Patch2: xine-lib-%{version}-no_autopoint.patch Patch6: xine-lib-1.1.1-deepbind-939.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.17-avsync_hack.patch From 3adfd1633f2de5fcf86d415dc2ba2e6f81bb9bf6 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 14 Apr 2010 18:13:31 +0000 Subject: [PATCH 094/150] -extras: don't mention gnome-vfs if it's not included --- xine-lib.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xine-lib.spec b/xine-lib.spec index 17f16b7..2df59cf 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -168,7 +168,9 @@ This package contains extra plugins for %{name}: - EsounD - JACK - GDK-Pixbuf +%if ! 0%{?_disable_gnomevfs:1} - GNOME VFS +%endif - SMB - SDL %if %{with_aalib} From 595aaf6d2ca24c51ccb8cf3a01ba09a6afdbada9 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 8 May 2010 02:29:15 +0000 Subject: [PATCH 095/150] Initialize branch EL-6 for xine-lib --- branch | 1 + 1 file changed, 1 insertion(+) create mode 100644 branch diff --git a/branch b/branch new file mode 100644 index 0000000..46381b9 --- /dev/null +++ b/branch @@ -0,0 +1 @@ +EL-6 From a56e4a2f3c0b7b933bbd49cfc2fdc30bf150d68d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Mon, 31 May 2010 21:55:59 +0000 Subject: [PATCH 096/150] =?UTF-8?q?*=20Tue=20Jun=20=201=202010=20Ville=20S?= =?UTF-8?q?kytt=C3=A4=20=20-=201.1.18.1-2=20-=20Rebui?= =?UTF-8?q?ld.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 61 +++++++++++++++++++++++++++------------------------ 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 2df59cf..c7b6ef8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -35,7 +35,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.18.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -439,6 +439,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Jun 1 2010 Ville Skyttä - 1.1.18.1-2 +- Rebuild. + * Sun Mar 07 2010 Rex Dieter - 1.1.18.1-1 - xine-lib-1.1.18.1 @@ -541,10 +544,10 @@ rm -rf $RPM_BUILD_ROOT * Thu Apr 24 2008 Rex Dieter - 1.1.12-2 - CVE-2008-1878 -* Wed Apr 16 2008 Ville Skyttä - 1.1.12-1 +* Wed Apr 16 2008 Ville Skyttä - 1.1.12-1 - 1.1.12 (plugin ABI 1.21); qt, mkv, and pulseaudio patches applied upstream. -* Wed Apr 9 2008 Ville Skyttä - 1.1.11.1-3 +* Wed Apr 9 2008 Ville Skyttä - 1.1.11.1-3 - Apply upstream fixes for Quicktime (#441705) and Matroska regressions introduced in 1.1.11.1. @@ -552,12 +555,12 @@ rm -rf $RPM_BUILD_ROOT - pulse-rework2 patch (#439731) - -pulseaudio subpkg (#439731) -* Sun Mar 30 2008 Ville Skyttä - 1.1.11.1-1 +* Sun Mar 30 2008 Ville Skyttä - 1.1.11.1-1 - 1.1.11.1 (security update, #438663, CVE-2008-1482). - Provide versioned xine-lib(plugin-abi) so 3rd party packages installing plugins can use it instead of requiring a version of xine-lib. -* Wed Mar 19 2008 Ville Skyttä - 1.1.11-1 +* Wed Mar 19 2008 Ville Skyttä - 1.1.11-1 - 1.1.11 (security update, #438182, CVE-2008-0073). - Drop jack and wavpack build conditionals. - Specfile cleanups. @@ -565,37 +568,37 @@ rm -rf $RPM_BUILD_ROOT * Fri Mar 7 2008 Rex Dieter - 1.1.10.1-1.1 - xcb support for f7+ (#373411) -* Fri Feb 8 2008 Ville Skyttä - 1.1.10.1-1 +* Fri Feb 8 2008 Ville Skyttä - 1.1.10.1-1 - 1.1.10.1 (security update, #431541). -* Sun Jan 27 2008 Ville Skyttä - 1.1.10-2 +* Sun Jan 27 2008 Ville Skyttä - 1.1.10-2 - Include spu, spucc, and spucmml decoders (#213597). -* Sun Jan 27 2008 Ville Skyttä - 1.1.10-1 +* Sun Jan 27 2008 Ville Skyttä - 1.1.10-1 - 1.1.10 (security update). -* Mon Jan 21 2008 Ville Skyttä - 1.1.9.1-3 +* Mon Jan 21 2008 Ville Skyttä - 1.1.9.1-3 - Fix version number in libxine.pc (#429487). -* Sun Jan 20 2008 Ville Skyttä - 1.1.9.1-2 +* Sun Jan 20 2008 Ville Skyttä - 1.1.9.1-2 - Disable upstream "discard buffers on ao close" 1.1.9 changeset (#429182). -* Sat Jan 12 2008 Ville Skyttä - 1.1.9.1-1 +* Sat Jan 12 2008 Ville Skyttä - 1.1.9.1-1 - 1.1.9.1 (security update). -* Sun Jan 6 2008 Ville Skyttä - 1.1.9-1 +* Sun Jan 6 2008 Ville Skyttä - 1.1.9-1 - 1.1.9. -* Thu Sep 27 2007 Ville Skyttä - 1.1.8-6 +* Thu Sep 27 2007 Ville Skyttä - 1.1.8-6 - Enable wavpack support by default for all distros. -* Sun Sep 23 2007 Ville Skyttä - 1.1.8-5 +* Sun Sep 23 2007 Ville Skyttä - 1.1.8-5 - Enable JACK support by default for all distros. -* Wed Sep 19 2007 Ville Skyttä - 1.1.8-4 +* Wed Sep 19 2007 Ville Skyttä - 1.1.8-4 - Fix "--without wavpack" build. -* Sat Sep 15 2007 Ville Skyttä - 1.1.8-3 +* Sat Sep 15 2007 Ville Skyttä - 1.1.8-3 - Move XCB plugins to the main package. - Make aalib, caca, pulseaudio, jack, and wavpack support optional at build time in preparation for the first EPEL build. @@ -604,63 +607,63 @@ rm -rf $RPM_BUILD_ROOT - remove the dependency from -extras to -arts, and use Obsoletes to provide an upgrade path -* Thu Aug 30 2007 Ville Skyttä - 1.1.8-1 +* Thu Aug 30 2007 Ville Skyttä - 1.1.8-1 - 1.1.8, "open" patch applied upstream. - Build XCB plugins by default for Fedora 8+ only. * Sat Aug 25 2007 Aurelien Bompard 1.1.7-3 - Split the aRts plugin into its own subpackage -* Tue Aug 14 2007 Ville Skyttä - 1.1.7-2 +* Tue Aug 14 2007 Ville Skyttä - 1.1.7-2 - Include XCB output plugins (in -extras at least for now). - Protect "open" with glibc 2.6.90 and -D_FORTIFY_SOURCE=2. - Clean up %%configure options. - License: GPLv2+ -* Thu Jun 7 2007 Ville Skyttä - 1.1.7-1 +* Thu Jun 7 2007 Ville Skyttä - 1.1.7-1 - 1.1.7. * Wed Jun 06 2007 Rex Dieter - 1.1.6-3 - respin (for libmpcdec) -* Wed Apr 25 2007 Ville Skyttä - 1.1.6-2 +* Wed Apr 25 2007 Ville Skyttä - 1.1.6-2 - Make Real codec search path /usr/lib(64)/codecs again (#237743). -* Wed Apr 18 2007 Ville Skyttä - 1.1.6-1 +* Wed Apr 18 2007 Ville Skyttä - 1.1.6-1 - 1.1.6. -* Wed Apr 11 2007 Ville Skyttä - 1.1.5-1 +* Wed Apr 11 2007 Ville Skyttä - 1.1.5-1 - 1.1.5. - Include GSM 06.10 decoder (#228186). - Re-enable CACA support. -* Sun Apr 8 2007 Ville Skyttä +* Sun Apr 8 2007 Ville Skyttä - Exclude vidix dir on systems that don't have vidix. - Specfile cleanups. -* Mon Mar 26 2007 Ville Skyttä - 1.1.4-4 +* Mon Mar 26 2007 Ville Skyttä - 1.1.4-4 - Add PulseAudio support (in -extras, #234035/Jost Diederichs). - Adjust Samba build dependencies to work for both <= and > FC6. - Add --with freetype and --with antialiasing build time options, default disabled, and an upstream patch for FreeType memory leak (#233194). -* Sat Mar 10 2007 Ville Skyttä - 1.1.4-3 +* Sat Mar 10 2007 Ville Skyttä - 1.1.4-3 - Apply upstream fix for CVE-2007-1246. -* Wed Feb 14 2007 Ville Skyttä - 1.1.4-2 +* Wed Feb 14 2007 Ville Skyttä - 1.1.4-2 - Rebuild. -* Wed Jan 31 2007 Ville Skyttä - 1.1.4-1 +* Wed Jan 31 2007 Ville Skyttä - 1.1.4-1 - 1.1.4, with wavpack and system libmpcdec support. * Thu Jan 18 2007 Aurelien Bompard 1.1.3-4 - rebuild -* Wed Jan 3 2007 Ville Skyttä - 1.1.3-3 +* Wed Jan 3 2007 Ville Skyttä - 1.1.3-3 - Fix libflac decoder with FLAC < 1.1.3 (#220961). - Apply upstream patch for FLAC >= 1.1.3. -* Sun Dec 17 2006 Ville Skyttä - 1.1.3-2 +* Sun Dec 17 2006 Ville Skyttä - 1.1.3-2 - Don't run autotools during build. * Mon Dec 04 2006 Aurelien Bompard 1.1.3-1 From eb97b605e424c8eb054ff94db7e368a8680eb6c8 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 12:32:45 +0000 Subject: [PATCH 097/150] * Sun Mar 07 2010 Rex Dieter - 1.1.18.1-1 - xine-lib-1.1.18.1 --- .cvsignore | 4 +- sources | 4 +- xine-lib-1.1.16.3-mod_mimetypes_typo.patch | 20 ---- ...patch => xine-lib-1.1.17-avsync_hack.patch | 14 +-- xine-lib-1.1.18.1-no_autopoint.patch | 17 ++++ xine-lib-mk-autotools-patch.sh | 1 + xine-lib.spec | 98 +++++++++++-------- 7 files changed, 88 insertions(+), 70 deletions(-) delete mode 100644 xine-lib-1.1.16.3-mod_mimetypes_typo.patch rename xine-lib-1.1.15-avsync_hack.patch => xine-lib-1.1.17-avsync_hack.patch (59%) create mode 100644 xine-lib-1.1.18.1-no_autopoint.patch diff --git a/.cvsignore b/.cvsignore index dbdfc40..9d21c9b 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.16.3-autotools.patch.bz2 -xine-lib-1.1.16.3-pruned.tar.bz2 +xine-lib-1.1.18.1-autotools.patch.bz2 +xine-lib-1.1.18.1-pruned.tar.bz2 diff --git a/sources b/sources index 3cc02d3..cf9ff04 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e50122a9323107564d58056b35256610 xine-lib-1.1.16.3-autotools.patch.bz2 -0cac86b7d74c1dcaa22f5a8cbc5ef578 xine-lib-1.1.16.3-pruned.tar.bz2 +e2c45d451fd9d8ad3be680237ff5bcdf xine-lib-1.1.18.1-autotools.patch.bz2 +55de212f416d9d366cad7520ccd7a539 xine-lib-1.1.18.1-pruned.tar.bz2 diff --git a/xine-lib-1.1.16.3-mod_mimetypes_typo.patch b/xine-lib-1.1.16.3-mod_mimetypes_typo.patch deleted file mode 100644 index b10fabb..0000000 --- a/xine-lib-1.1.16.3-mod_mimetypes_typo.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up xine-lib-1.1.16.3/src/demuxers/demux_mod.c.mod_mimetypes_typo xine-lib-1.1.16.3/src/demuxers/demux_mod.c ---- xine-lib-1.1.16.3/src/demuxers/demux_mod.c.mod_mimetypes_typo 2009-03-25 14:28:40.000000000 -0500 -+++ xine-lib-1.1.16.3/src/demuxers/demux_mod.c 2009-04-10 10:15:04.000000000 -0500 -@@ -387,11 +387,11 @@ static const char *get_mimetypes (demux_ - "audio/x-s3m: s3m: ScreamTracker 3 Module;" - "audio/s3m: s3m: ScreamTracker 3 Module;" - "application/playerpro: 669: 669 Tracker Module;" -- "application/adrift; amf: ADRIFT Module File;" -- "audio/med; med; Amiga MED/OctaMED Tracker Module Sound File;" -- "audio/x-amf; amf: ADRIFT Module File;" -- "audio/x-xm; xm: FastTracker II Audio;" -- "audio/xm; xm: FastTracker II Audio;"; -+ "application/adrift: amf: ADRIFT Module File;" -+ "audio/med: med: Amiga MED/OctaMED Tracker Module Sound File;" -+ "audio/x-amf: amf: ADRIFT Module File;" -+ "audio/x-xm: xm: FastTracker II Audio;" -+ "audio/xm: xm: FastTracker II Audio;"; - } - - static void class_dispose (demux_class_t *this_gen) { diff --git a/xine-lib-1.1.15-avsync_hack.patch b/xine-lib-1.1.17-avsync_hack.patch similarity index 59% rename from xine-lib-1.1.15-avsync_hack.patch rename to xine-lib-1.1.17-avsync_hack.patch index f33aba4..5fa1ae1 100644 --- a/xine-lib-1.1.15-avsync_hack.patch +++ b/xine-lib-1.1.17-avsync_hack.patch @@ -1,8 +1,8 @@ -diff -uNr xine-lib-1.1.15.orig/src/xine-engine/audio_out.c xine-lib-1.1.15/src/xine-engine/audio_out.c ---- xine-lib-1.1.15.orig/src/xine-engine/audio_out.c 2008-07-10 18:19:10.000000000 +0200 -+++ xine-lib-1.1.15/src/xine-engine/audio_out.c 2009-01-10 21:57:20.000000000 +0100 -@@ -1151,8 +1151,17 @@ - +diff -up xine-lib-1.1.17/src/xine-engine/audio_out.c.avsync_hack xine-lib-1.1.17/src/xine-engine/audio_out.c +--- xine-lib-1.1.17/src/xine-engine/audio_out.c.avsync_hack 2009-11-30 19:33:30.000000000 -0600 ++++ xine-lib-1.1.17/src/xine-engine/audio_out.c 2009-12-02 09:07:37.622805780 -0600 +@@ -1156,8 +1156,17 @@ static void *ao_loop (void *this_gen) { + /* * calculate gap: + * @@ -13,9 +13,9 @@ diff -uNr xine-lib-1.1.15.orig/src/xine-engine/audio_out.c xine-lib-1.1.15/src/x */ - gap = in_buf->vpts - hw_vpts; + if (in_buf && in_buf->stream && in_buf->stream->video_decoder_plugin) { -+ gap = in_buf->vpts - hw_vpts; ++ gap = in_buf->vpts - hw_vpts; + } else { -+ gap = 0; ++ gap = 0; + } lprintf ("hw_vpts : %" PRId64 " buffer_vpts : %" PRId64 " gap : %" PRId64 "\n", hw_vpts, in_buf->vpts, gap); diff --git a/xine-lib-1.1.18.1-no_autopoint.patch b/xine-lib-1.1.18.1-no_autopoint.patch new file mode 100644 index 0000000..d5ee0cd --- /dev/null +++ b/xine-lib-1.1.18.1-no_autopoint.patch @@ -0,0 +1,17 @@ +diff -up xine-lib-1.1.17/autogen.sh.no_autopoint xine-lib-1.1.17/autogen.sh +--- xine-lib-1.1.17/autogen.sh.no_autopoint 2009-10-09 09:33:31.000000000 -0500 ++++ xine-lib-1.1.17/autogen.sh 2009-12-02 09:15:48.534555467 -0600 +@@ -229,10 +229,10 @@ run_aclocal () { + echo + fi + +- echo $_echo_n " + Running autopoint: $_echo_c" ++ #echo $_echo_n " + Running autopoint: $_echo_c" + +- autopoint +- echo "done." ++ #autopoint ++ #echo "done." + + echo $_echo_n " + Running aclocal: $_echo_c" + diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index dc1e103..3cb6d1a 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -23,6 +23,7 @@ tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned pushd xine-lib-$version +patch -p1 < ../xine-lib-${version}-no_autopoint.patch # extra work for to omit old libtool-related crud rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 ./autogen.sh noconfig diff --git a/xine-lib.spec b/xine-lib.spec index f31b4c4..17f16b7 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,10 +1,9 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? -# http://www.redhat.com/archives/fedora-legal-list/2007-August/msg00011.html # - deprecate ESD support? -%define plugin_abi 1.26 +%define plugin_abi 1.28 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -14,13 +13,15 @@ %endif # ix86 %if 0%{?fedora} - %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} - %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} - %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} +%define _enable_v4l --enable-v4l --enable-libv4l +%define _disable_gnomevfs --disable-gnomevfs +%define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} +%define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} +%define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else - %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} - %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} - %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} +%define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} +%define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} +%define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora %if 0%{?fedora} > 8 || 0%{?rhel} > 5 @@ -33,41 +34,45 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.16.3 -Release: 5%{?dist} +Version: 1.1.18.1 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code #Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 -Source0: %{name}-%{version}-pruned.tar.bz2 -Source1: %{name}-cleanup-sources.sh -Source2: %{name}-mk-autotools-patch.sh +Source0: xine-lib-%{version}-pruned.tar.bz2 +Source1: xine-lib-cleanup-sources.sh +Source2: xine-lib-mk-autotools-patch.sh # autotools patch created with source2 -Patch0: %{name}-%{version}-autotools.patch.bz2 +Patch0: xine-lib-%{version}-autotools.patch.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -Patch1: %{name}-1.1.4-optflags.patch -Patch6: %{name}-1.1.1-deepbind-939.patch +Patch1: xine-lib-1.1.4-optflags.patch +# used to help +Patch2: xine-lib-%{version}-no_autopoint.patch +Patch6: xine-lib-1.1.1-deepbind-939.patch # http://bugzilla.redhat.com/470568 -Patch8: xine-lib-1.1.15-avsync_hack.patch +Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstreamable patches -Patch50: xine-lib-1.1.16.3-mod_mimetypes_typo.patch ## upstream patches -Provides: xine-lib(plugin-abi) = %{plugin_abi} -%if "%{?_isa}" != "%{nil}" -Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi} -%endif +Provides: xine-lib(plugin-abi) = %{plugin_abi} +%{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} + +BuildRequires: automake libtool # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel BuildRequires: libXinerama-devel BuildRequires: libXvMC-devel BuildRequires: libGLU-devel +%if 0%{?_enable_v4l:1} +BuildRequires: libv4l-devel +%endif %if %{with_xcb} BuildRequires: libxcb-devel %endif # xcb @@ -110,7 +115,6 @@ BuildRequires: wavpack-devel BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig -BuildRequires: gnome-vfs2-devel BuildRequires: gtk2-devel %if 0%{?fedora} > 6 || 0%{?rhel} > 5 BuildRequires: libsmbclient-devel @@ -133,39 +137,32 @@ common multimedia formats available - and some uncommon formats, too. %package devel Summary: Xine library development files Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig Requires: zlib-devel - %description devel This package contains development files for %{name}. %package arts Summary: aRts plugin for %{name} Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{plugin_abi} -# -arts was split off the -extras subpackage at 1.1.7-3 -Obsoletes: xine-lib-extras < 1.1.7-3 - %description arts This package contains the aRts plugin for %{name}. %package pulseaudio Summary: Pulseaudio plugin for %{name} Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} - +Requires: %{name}%{?_isa} = %{version}-%{release} %description pulseaudio This package contains the pulseaudio plugin for %{name}. - %package extras Summary: Additional plugins for %{name} Group: System Environment/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{plugin_abi} - %description extras This package contains extra plugins for %{name}: - EsounD @@ -196,12 +193,14 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 # needed at least when compiling with external ffmpeg and internal faad livna bug#939. # see also http://bugzilla.redhat.com/480504 for side-effects #patch6 -p1 -b .deepbind - %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -%patch50 -p1 -b .mod_mimetypes_typo -# Avoid standard rpaths on lib64 archs: (autotools patch should handle this, no? -- Rex ) +# autotools patch + touch'ing above seems to miss something, aclocal +# runs on make anyway, let's use the ./autogen.sh hammer for now. +./autogen.sh noconfig + +#Avoid standard rpaths on lib64 archs: (autotools patch handles this too) #sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure @@ -217,6 +216,8 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{!?_without_directfb:1} --enable-directfb \ %endif # directfb + %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l --disable-libv4l} \ + %{?_disable_gnomevfs} \ --disable-a52dec \ --disable-mad \ --disable-vcd \ @@ -314,7 +315,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_lpcm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_mpc.so -%ifarch %ix86 +%ifarch %{ix86} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_qt.so %endif # ix86 %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_real.so @@ -324,6 +325,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spucc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spucmml.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spudvb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_spuhdmv.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_sputext.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_theora.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_vorbis.so @@ -367,6 +369,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so @@ -408,7 +411,6 @@ rm -rf $RPM_BUILD_ROOT %if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_image.so %endif # imagemagick -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_smb.so %if %{with_aalib} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_aa.so @@ -435,6 +437,24 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Mar 07 2010 Rex Dieter - 1.1.18.1-1 +- xine-lib-1.1.18.1 + +* Sun Mar 07 2010 Rex Dieter - 1.1.18-2 +- rebuild (ImageMagick) + +* Wed Feb 24 2010 Rex Dieter - 1.1.18-1 +- xine-lib-1.1.18, plugin-abi 1.28 (#567913) + +* Sat Dec 12 2009 Rex Dieter - 1.1.17-3 +- bump flac_decoder priority (rh#301861,xine#225) + +* Mon Dec 07 2009 Bastien Nocera 1.1.17-2 +- Remove gnome-vfs2 plugin, it's mostly useless + +* Wed Dec 02 2009 Rex Dieter - 1.1.17-1 +- xine-lib-1.1.17, plugin-abi 1.27 + * Sun Nov 29 2009 Rex Dieter - 1.1.16.3-5 - move -pulseaudio into main pkg (f12+) - update URL From d1fcff865880bf2be0c45af3159ea561cd676d03 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 15:19:13 +0000 Subject: [PATCH 098/150] no libXvMC on el6/ppc64 --- xine-lib.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 17f16b7..a0e1b05 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -24,6 +24,12 @@ %define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora +%if 0%{?rhel} > 5 +%ifarch ppc64 +%define no_xvmc 1 +%endif +%endif + %if 0%{?fedora} > 8 || 0%{?rhel} > 5 %define _without_arts --without-arts %endif @@ -68,7 +74,7 @@ BuildRequires: automake libtool BuildRequires: libX11-devel BuildRequires: libXv-devel BuildRequires: libXinerama-devel -BuildRequires: libXvMC-devel +%{!?no_xvmc:BuildRequires: libXvMC-devel} BuildRequires: libGLU-devel %if 0%{?_enable_v4l:1} BuildRequires: libv4l-devel @@ -384,7 +390,7 @@ rm -rf $RPM_BUILD_ROOT %endif # xcb %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xv.so -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so +%{!?no_xvmc:%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so From e79635e8dfbadb3836b91142126ec8b224e2a14d Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 15:35:39 +0000 Subject: [PATCH 099/150] fix for no libv4l --- xine-lib.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index a0e1b05..8c935ff 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -370,12 +370,14 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_http.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_net.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pnm.so -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so +%if 0%{?_enable_v4l:1} +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so From 6f122026f013a43b44f5723d1a187edb0bb63406 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 17:20:33 +0000 Subject: [PATCH 100/150] fix xcb bits for el-6 --- xine-lib.spec | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index c7b6ef8..7bb8a4d 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -17,15 +17,14 @@ %define _disable_gnomevfs --disable-gnomevfs %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} %define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} -%define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} %define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} -%define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora -%if 0%{?fedora} > 8 || 0%{?rhel} > 5 -%define _without_arts --without-arts +%if 0%{?fedora} || 0%{?rhel} > 5 +%define _without_arts --without-art +%define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %endif %if 0%{?fedora} > 11 @@ -73,7 +72,7 @@ BuildRequires: libGLU-devel %if 0%{?_enable_v4l:1} BuildRequires: libv4l-devel %endif -%if %{with_xcb} +%if 0%{?_with_xcb:1} BuildRequires: libxcb-devel %endif # xcb # Video @@ -380,7 +379,7 @@ rm -rf $RPM_BUILD_ROOT %if %{have_vidix} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_vidix.so %endif # vidix -%if %{with_xcb} +%if 0%{?_with_xcb:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbxv.so %endif # xcb From c0776ed69daf5d842711aa200e1c13ce6e704c44 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 17:24:30 +0000 Subject: [PATCH 101/150] a few more el-6 fixes --- xine-lib.spec | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 8c935ff..0a2749f 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -13,15 +13,10 @@ %endif # ix86 %if 0%{?fedora} -%define _enable_v4l --enable-v4l --enable-libv4l %define _disable_gnomevfs --disable-gnomevfs %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} -%define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} -%define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} -%define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} -%define with_xcb %{?_with_xcb:1}%{!?_with_xcb:0} %endif # Fedora %if 0%{?rhel} > 5 @@ -31,7 +26,10 @@ %endif %if 0%{?fedora} > 8 || 0%{?rhel} > 5 +%define _enable_v4l --enable-v4l --enable-libv4l %define _without_arts --without-arts +%define _with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} +%define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %endif %if 0%{?fedora} > 11 @@ -79,7 +77,7 @@ BuildRequires: libGLU-devel %if 0%{?_enable_v4l:1} BuildRequires: libv4l-devel %endif -%if %{with_xcb} +%if 0%{?_with_xcb:1} BuildRequires: libxcb-devel %endif # xcb # Video @@ -107,7 +105,7 @@ BuildRequires: jack-audio-connection-kit-devel BuildRequires: libmodplug-devel BuildRequires: libmpcdec-devel BuildRequires: libvorbis-devel -%if %{with_pa} +%if 0%{?_with_pa:1} BuildRequires: pulseaudio-lib-devel %endif # pa BuildRequires: speex-devel @@ -386,7 +384,7 @@ rm -rf $RPM_BUILD_ROOT %if %{have_vidix} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_vidix.so %endif # vidix -%if %{with_xcb} +%if 0%{?_with_xcb:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbxv.so %endif # xcb @@ -396,7 +394,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so -%if %{with_pa} +%if 0%{?_with_pa:1} %if ! 0%{?pa_in_main} %files pulseaudio %defattr(-,root,root,-) @@ -404,7 +402,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so %endif - %if 0%{!?_without_arts:1} %files arts %defattr(-,root,root,-) From 08481795c603c1ad048890e0dcd6d7475606993a Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 18:15:18 +0000 Subject: [PATCH 102/150] more el-6 fixes --- xine-lib.spec | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 0a2749f..75e873d 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -19,9 +19,10 @@ %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} %endif # Fedora +%define _enable_xvmc --enable-xvmc %if 0%{?rhel} > 5 %ifarch ppc64 -%define no_xvmc 1 +%undefine _enable_xvmc %endif %endif @@ -32,7 +33,7 @@ %define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %endif -%if 0%{?fedora} > 11 +%if 0%{?fedora} > 11 || 0%{?rhel} > 5 %define pa_in_main 1 %endif @@ -72,7 +73,7 @@ BuildRequires: automake libtool BuildRequires: libX11-devel BuildRequires: libXv-devel BuildRequires: libXinerama-devel -%{!?no_xvmc:BuildRequires: libXvMC-devel} +%{?_enable_xvmc:BuildRequires: libXvMC-devel} BuildRequires: libGLU-devel %if 0%{?_enable_v4l:1} BuildRequires: libv4l-devel @@ -221,6 +222,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --enable-directfb \ %endif # directfb %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l --disable-libv4l} \ + %{?_enable_xvmc}%{!?_enable_xvmc:--disable-xvmc} \ %{?_disable_gnomevfs} \ --disable-a52dec \ --disable-mad \ @@ -390,8 +392,10 @@ rm -rf $RPM_BUILD_ROOT %endif # xcb %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xv.so -%{!?no_xvmc:%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so} +%if 0%{?_enable_xvmc:1} +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so %if 0%{?_with_pa:1} From ba91530bdd8353ecbe0cecb2c28ce7f9e0e57b76 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 19:22:43 +0000 Subject: [PATCH 103/150] sync changes from EL-6 branch --- xine-lib.spec | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 7bb8a4d..4aa99ac 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -13,21 +13,27 @@ %endif # ix86 %if 0%{?fedora} -%define _enable_v4l --enable-v4l --enable-libv4l %define _disable_gnomevfs --disable-gnomevfs %define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} -%define with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} %else %define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} -%define with_pa %{?_with_pulseaudio:1}%{!?_with_pulseaudio:0} %endif # Fedora -%if 0%{?fedora} || 0%{?rhel} > 5 -%define _without_arts --without-art -%define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} +%define _enable_xvmc --enable-xvmc +%if 0%{?rhel} > 5 +%ifarch ppc64 +%undefine _enable_xvmc +%endif %endif -%if 0%{?fedora} > 11 +%if 0%{?fedora} > 8 || 0%{?rhel} > 5 +%define _enable_v4l --enable-v4l --enable-libv4l +%define _without_arts --without-arts +%define _with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} +%define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} +%endif + +%if 0%{?fedora} > 11 || 0%{?rhel} > 5 %define pa_in_main 1 %endif @@ -67,7 +73,7 @@ BuildRequires: automake libtool BuildRequires: libX11-devel BuildRequires: libXv-devel BuildRequires: libXinerama-devel -BuildRequires: libXvMC-devel +%{?_enable_xvmc:BuildRequires: libXvMC-devel} BuildRequires: libGLU-devel %if 0%{?_enable_v4l:1} BuildRequires: libv4l-devel @@ -100,7 +106,7 @@ BuildRequires: jack-audio-connection-kit-devel BuildRequires: libmodplug-devel BuildRequires: libmpcdec-devel BuildRequires: libvorbis-devel -%if %{with_pa} +%if 0%{?_with_pa:1} BuildRequires: pulseaudio-lib-devel %endif # pa BuildRequires: speex-devel @@ -167,9 +173,7 @@ This package contains extra plugins for %{name}: - EsounD - JACK - GDK-Pixbuf -%if ! 0%{?_disable_gnomevfs:1} - GNOME VFS -%endif - SMB - SDL %if %{with_aalib} @@ -218,6 +222,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --enable-directfb \ %endif # directfb %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l --disable-libv4l} \ + %{?_enable_xvmc}%{!?_enable_xvmc:--disable-xvmc} \ %{?_disable_gnomevfs} \ --disable-a52dec \ --disable-mad \ @@ -365,12 +370,14 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_http.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_net.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pnm.so -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so +%if 0%{?_enable_v4l:1} +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so @@ -385,11 +392,13 @@ rm -rf $RPM_BUILD_ROOT %endif # xcb %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xv.so +%if 0%{?_enable_xvmc:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so -%if %{with_pa} +%if 0%{?_with_pa:1} %if ! 0%{?pa_in_main} %files pulseaudio %defattr(-,root,root,-) @@ -397,7 +406,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so %endif - %if 0%{!?_without_arts:1} %files arts %defattr(-,root,root,-) From 3a547b7aa9047b4cd6d3d5fe85cb8e432fc718a6 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 21 Jun 2010 19:24:44 +0000 Subject: [PATCH 104/150] put back gnome-vfs exclusion in %%description --- xine-lib.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 4aa99ac..0e48428 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -173,7 +173,9 @@ This package contains extra plugins for %{name}: - EsounD - JACK - GDK-Pixbuf - - GNOME VFS +%if ! 0%{?_disable_gnomevfs:1} + - GNOME VFS +%endif - SMB - SDL %if %{with_aalib} From 583b25cbebc55b62838424ecb71d912ed09c822e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 19 Jul 2010 17:17:00 +0000 Subject: [PATCH 105/150] * Mon Jul 19 2010 Rex Dieter - 1.1.18.1-3 - no directfb on arm (yet) --- xine-lib.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 0e48428..3602256 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -26,6 +26,10 @@ %endif %endif +%ifarch %{arm} +%define _without_directfb 1 +%endif + %if 0%{?fedora} > 8 || 0%{?rhel} > 5 %define _enable_v4l --enable-v4l --enable-libv4l %define _without_arts --without-arts @@ -40,7 +44,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.18.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -448,6 +452,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jul 19 2010 Rex Dieter - 1.1.18.1-3 +- no directfb on arm (yet) + * Tue Jun 1 2010 Ville Skyttä - 1.1.18.1-2 - Rebuild. From 016fec2ced2ffcd87c9965c053a030b15a044447 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 26 Jul 2010 14:01:58 +0000 Subject: [PATCH 106/150] * Sun Jul 25 2010 Rex Dieter - 1.1.19-1 - 1.1.19 --- .cvsignore | 4 ++-- sources | 4 ++-- ...point.patch => xine-lib-1.1.19-no_autopoint.patch | 0 xine-lib-mk-autotools-patch.sh | 2 +- xine-lib.spec | 12 ++++++++---- 5 files changed, 13 insertions(+), 9 deletions(-) rename xine-lib-1.1.18.1-no_autopoint.patch => xine-lib-1.1.19-no_autopoint.patch (100%) diff --git a/.cvsignore b/.cvsignore index 9d21c9b..de99961 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -xine-lib-1.1.18.1-autotools.patch.bz2 -xine-lib-1.1.18.1-pruned.tar.bz2 +xine-lib-1.1.19-autotools.patch.bz2 +xine-lib-1.1.19-pruned.tar.bz2 diff --git a/sources b/sources index cf9ff04..ac4cd83 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e2c45d451fd9d8ad3be680237ff5bcdf xine-lib-1.1.18.1-autotools.patch.bz2 -55de212f416d9d366cad7520ccd7a539 xine-lib-1.1.18.1-pruned.tar.bz2 +e80686751441fb75ce075b097f1af75d xine-lib-1.1.19-autotools.patch.bz2 +552e3e38f1afb77428f6aaa08e13b0d2 xine-lib-1.1.19-pruned.tar.bz2 diff --git a/xine-lib-1.1.18.1-no_autopoint.patch b/xine-lib-1.1.19-no_autopoint.patch similarity index 100% rename from xine-lib-1.1.18.1-no_autopoint.patch rename to xine-lib-1.1.19-no_autopoint.patch diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index 3cb6d1a..1c524c5 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -23,7 +23,7 @@ tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned pushd xine-lib-$version -patch -p1 < ../xine-lib-${version}-no_autopoint.patch +#patch -p1 < ../xine-lib-${version}-no_autopoint.patch # extra work for to omit old libtool-related crud rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 ./autogen.sh noconfig diff --git a/xine-lib.spec b/xine-lib.spec index 3602256..b147ceb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -3,7 +3,7 @@ # - drop the opengl video out plugin? # - deprecate ESD support? -%define plugin_abi 1.28 +%define plugin_abi 1.29 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -43,8 +43,8 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.18.1 -Release: 3%{?dist} +Version: 1.1.19 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -131,6 +131,7 @@ BuildRequires: libsmbclient-devel BuildRequires: samba-common %endif BuildRequires: libdvdnav-devel +BuildRequires: libdvdread-devel %if 0%{?pa_in_main} Obsoletes: xine-lib-pulseaudio < 1.1.16.3-5 @@ -341,7 +342,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_sputext.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_theora.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_vorbis.so -%ifarch %ix86 +%ifarch %{ix86} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_w32dll.so %endif # ix86 %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_yuv.so @@ -452,6 +453,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jul 25 2010 Rex Dieter - 1.1.19-1 +- 1.1.19 + * Mon Jul 19 2010 Rex Dieter - 1.1.18.1-3 - no directfb on arm (yet) From 143cd6dae967d9c934bcc98b00a3bd72d7131ffe Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 26 Jul 2010 15:38:19 +0000 Subject: [PATCH 107/150] BR: gettext --- xine-lib.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/xine-lib.spec b/xine-lib.spec index b147ceb..4f815f4 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -73,6 +73,7 @@ Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} BuildRequires: automake libtool +BuildRequires: gettext # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel From c4c909b1a9e6cc0e2189d01be266b1cda8ce0e3d Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 26 Jul 2010 15:59:54 +0000 Subject: [PATCH 108/150] gettext-devel ? --- xine-lib.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 4f815f4..7f79a4e 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -73,7 +73,8 @@ Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} BuildRequires: automake libtool -BuildRequires: gettext +# for /usr/bin/autopoint +BuildRequires: gettext-devel # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel From 84ca12a84b921c2a00ae8990bb306ebd526347aa Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 26 Jul 2010 16:07:10 +0000 Subject: [PATCH 109/150] re-enable no_autopoint patch, the pain is just not worth it --- sources | 2 +- xine-lib-mk-autotools-patch.sh | 2 +- xine-lib.spec | 2 -- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/sources b/sources index ac4cd83..7be858d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e80686751441fb75ce075b097f1af75d xine-lib-1.1.19-autotools.patch.bz2 +1a77122fa938a3f8cb85cef231236c39 xine-lib-1.1.19-autotools.patch.bz2 552e3e38f1afb77428f6aaa08e13b0d2 xine-lib-1.1.19-pruned.tar.bz2 diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh index 1c524c5..3cb6d1a 100644 --- a/xine-lib-mk-autotools-patch.sh +++ b/xine-lib-mk-autotools-patch.sh @@ -23,7 +23,7 @@ tar jxf xine-lib-$version-pruned.tar.bz2 cp -a xine-lib-$version xine-lib-$version-pruned pushd xine-lib-$version -#patch -p1 < ../xine-lib-${version}-no_autopoint.patch +patch -p1 < ../xine-lib-${version}-no_autopoint.patch # extra work for to omit old libtool-related crud rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 ./autogen.sh noconfig diff --git a/xine-lib.spec b/xine-lib.spec index 7f79a4e..b147ceb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -73,8 +73,6 @@ Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} BuildRequires: automake libtool -# for /usr/bin/autopoint -BuildRequires: gettext-devel # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel From d21dbfca70f6535cb49e3aeac4ba0a3dc437a2c6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 13:22:27 +0000 Subject: [PATCH 110/150] dist-git conversion --- .cvsignore => .gitignore | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .cvsignore => .gitignore (100%) diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore From 53f040ddbce0875fa601cb6adc45720bdf1cacca Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 13:23:57 +0000 Subject: [PATCH 111/150] dist-git conversion --- .cvsignore => .gitignore | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .cvsignore => .gitignore (100%) diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore From 14b33c734c2db5f59e25a31b6305e705953a8197 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Wed, 15 Sep 2010 07:33:07 -0500 Subject: [PATCH 112/150] - rebuild (ImageMagick) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index b147ceb..20b8dbf 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -44,7 +44,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.19 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -453,6 +453,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Sep 15 2010 Rex Dieter - 1.1.19-2 +- rebuild (ImageMagick) + * Sun Jul 25 2010 Rex Dieter - 1.1.19-1 - 1.1.19 From 91d1fcc33f0c057b52568eb0c7060584336946f5 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 28 Nov 2010 15:48:53 +0100 Subject: [PATCH 113/150] * Sun Nov 28 2010 Kevin Kofler - 1.1.19-3 - rebuild for new directfb (1.4.11) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 20b8dbf..09ee7d2 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -44,7 +44,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.19 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -453,6 +453,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Nov 28 2010 Kevin Kofler - 1.1.19-3 +- rebuild for new directfb (1.4.11) + * Wed Sep 15 2010 Rex Dieter - 1.1.19-2 - rebuild (ImageMagick) From af04f9092826764b0a5cf430e986d86e11f0cc7c Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 24 Jan 2011 08:55:18 -0600 Subject: [PATCH 114/150] - xvmclib header changes, fixes ftbfs (#635653,#661071) --- xine-lib-1.1.19-xvmclib_header.patch | 11 +++++++++++ xine-lib.spec | 8 +++++++- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 xine-lib-1.1.19-xvmclib_header.patch diff --git a/xine-lib-1.1.19-xvmclib_header.patch b/xine-lib-1.1.19-xvmclib_header.patch new file mode 100644 index 0000000..880250c --- /dev/null +++ b/xine-lib-1.1.19-xvmclib_header.patch @@ -0,0 +1,11 @@ +diff -up xine-lib-1.1.19/src/video_out/xxmc.h.ftbfs xine-lib-1.1.19/src/video_out/xxmc.h +--- xine-lib-1.1.19/src/video_out/xxmc.h.ftbfs 2010-03-09 16:17:05.000000000 -0600 ++++ xine-lib-1.1.19/src/video_out/xxmc.h 2011-01-24 08:48:28.516631749 -0600 +@@ -79,6 +79,7 @@ + #include + #ifdef HAVE_VLDXVMC + #include ++ #include + #else + #include + #include diff --git a/xine-lib.spec b/xine-lib.spec index 09ee7d2..771fe4d 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -44,7 +44,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.19 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -67,6 +67,8 @@ Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch ## upstreamable patches +# fixes ftbfs for xvmc header reshuffling +Patch50: xine-lib-1.1.19-xvmclib_header.patch ## upstream patches Provides: xine-lib(plugin-abi) = %{plugin_abi} @@ -207,6 +209,7 @@ touch -r m4/optimizations.m4.stamp m4/optimizations.m4 #patch6 -p1 -b .deepbind %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib +%patch50 -p1 -b .xvmclib_header # autotools patch + touch'ing above seems to miss something, aclocal # runs on make anyway, let's use the ./autogen.sh hammer for now. @@ -453,6 +456,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jan 24 2011 Rex Dieter - 1.1.19-4 +- xvmclib header changes, fixes ftbfs (#635653,#661071) + * Sun Nov 28 2010 Kevin Kofler - 1.1.19-3 - rebuild for new directfb (1.4.11) From 941d67e1e4beec7b114b368638958cdc1b80f964 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Mon, 7 Feb 2011 23:14:53 -0600 Subject: [PATCH 115/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 771fe4d..b69280e 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -44,7 +44,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.19 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -456,6 +456,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Feb 07 2011 Fedora Release Engineering - 1.1.19-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Mon Jan 24 2011 Rex Dieter - 1.1.19-4 - xvmclib header changes, fixes ftbfs (#635653,#661071) From 4c0623f6462211f3bd512edce7139e0be847a783 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 14 Feb 2011 08:25:29 -0600 Subject: [PATCH 116/150] - split v4l, libv4l handling --- xine-lib.spec | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index b69280e..b43f805 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -31,7 +31,8 @@ %endif %if 0%{?fedora} > 8 || 0%{?rhel} > 5 -%define _enable_v4l --enable-v4l --enable-libv4l +%define _enable_v4l --enable-v4l +%define _enable_libv4l --enable-libv4l %define _without_arts --without-arts %define _with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} %define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} @@ -44,7 +45,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.19 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -81,7 +82,7 @@ BuildRequires: libXv-devel BuildRequires: libXinerama-devel %{?_enable_xvmc:BuildRequires: libXvMC-devel} BuildRequires: libGLU-devel -%if 0%{?_enable_v4l:1} +%if 0%{?_enable_libv4l:1} BuildRequires: libv4l-devel %endif %if 0%{?_with_xcb:1} @@ -231,7 +232,8 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{!?_without_directfb:1} --enable-directfb \ %endif # directfb - %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l --disable-libv4l} \ + %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l} \ + %{?_enable_libv4l}%{!?_enable_libv4l:--disable-libv4l} \ %{?_enable_xvmc}%{!?_enable_xvmc:--disable-xvmc} \ %{?_disable_gnomevfs} \ --disable-a52dec \ @@ -386,6 +388,8 @@ rm -rf $RPM_BUILD_ROOT %if 0%{?_enable_v4l:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so +%endif +%if 0%{?_enable_libv4l:1) %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so %endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so @@ -456,6 +460,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Feb 14 2011 Rex Dieter 1.1.19-6 +- split v4l, libv4l handling + * Mon Feb 07 2011 Fedora Release Engineering - 1.1.19-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From 0f41a42622a2890712568d49eeb4bd286ddc56ad Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 14 Feb 2011 08:56:29 -0600 Subject: [PATCH 117/150] - omit v4l(1) bits (f15+) --- xine-lib.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xine-lib.spec b/xine-lib.spec index b43f805..726c3c0 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -38,6 +38,10 @@ %define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %endif +%if 0%{?fedora} > 14 +%undefine _enable_v4l +%endif + %if 0%{?fedora} > 11 || 0%{?rhel} > 5 %define pa_in_main 1 %endif @@ -462,6 +466,7 @@ rm -rf $RPM_BUILD_ROOT %changelog * Mon Feb 14 2011 Rex Dieter 1.1.19-6 - split v4l, libv4l handling +- omit v4l(1) bits (f15+) * Mon Feb 07 2011 Fedora Release Engineering - 1.1.19-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From ecb7e8977815b8feca645fbc7ae618d8d9b09913 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Mon, 14 Feb 2011 10:45:46 -0600 Subject: [PATCH 118/150] another approach, disabling v4l support hammers both v4l1 and v4l2 --- xine-lib.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 726c3c0..087da2c 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -39,7 +39,7 @@ %endif %if 0%{?fedora} > 14 -%undefine _enable_v4l +%define _disable_v4l1 1 %endif %if 0%{?fedora} > 11 || 0%{?rhel} > 5 @@ -283,6 +283,12 @@ rm -Rf $RPM_BUILD_ROOT%{_libdir}/libxine.la __docs/README \ # Directory for binary codecs mkdir -p $RPM_BUILD_ROOT%{codecdir} +# unpackaged files +%if 0%{?_disable_v4l1:1} +rm -fv $RPM_BUILD_ROOT%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so +rm -fv $RPM_BUILD_ROOT%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so +%endif + %clean rm -rf $RPM_BUILD_ROOT @@ -390,10 +396,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so %if 0%{?_enable_v4l:1} +%if ! 0%{?_disable_v4l1:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so %endif -%if 0%{?_enable_libv4l:1) %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so %endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so From fc45a321b84f471a440fe28fe92791b1c89e5c00 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Fri, 15 Jul 2011 18:34:40 +0200 Subject: [PATCH 119/150] * Fri Jul 15 2011 Kevin Kofler 1.1.19-7 - rebuild for new DirectFB (1.5.0) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 087da2c..b47ff84 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -49,7 +49,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.19 -Release: 6%{?dist} +Release: 7%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -470,6 +470,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Jul 15 2011 Kevin Kofler 1.1.19-7 +- rebuild for new DirectFB (1.5.0) + * Mon Feb 14 2011 Rex Dieter 1.1.19-6 - split v4l, libv4l handling - omit v4l(1) bits (f15+) From fffc4c3b90583bc0decf855fb60319bda8f64753 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 01:40:14 +0100 Subject: [PATCH 120/150] xine-lib-cleanup-sources.sh: Use .xz tarballs. --- xine-lib-cleanup-sources.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 31cff0f..f7ba13e 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -6,9 +6,9 @@ if [ -z "$1" -o $# -ne 1 ]; then fi version=$1 -tarball="xine-lib-$version.tar.bz2" +tarball="xine-lib-$version.tar.xz" dir="xine-lib-$version" -modtarball="xine-lib-$version-pruned.tar.bz2" +modtarball="xine-lib-$version-pruned.tar.xz" if [ ! -f $tarball ]; then @@ -18,7 +18,7 @@ fi echo "Uncompressing $tarball..." rm -rf $dir -tar -xjf $tarball +tar -xJf $tarball cd $dir rmpluglib() @@ -81,5 +81,5 @@ sed -i -e '/nosefart\/Makefile/d' configure.ac cd .. echo "Generating $modtarball..." -tar -cjf $modtarball $dir +tar -cJf $modtarball $dir rm -rf $dir From c02680866f0435267e45c45280a7fd598bc103d3 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 01:47:21 +0100 Subject: [PATCH 121/150] xine-lib-cleanup-sources.sh: Also remove libmpeg2new. --- xine-lib-cleanup-sources.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index f7ba13e..1cabc9c 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -30,7 +30,7 @@ rmpluglib() } # Main libraries -for remove in libfaad libffmpeg libmad libmpeg2 dxr3 liba52 libdts; do +for remove in libfaad libffmpeg libmad libmpeg2 libmpeg2new dxr3 liba52 libdts; do echo "removing src/$remove..." rm -rf src/$remove sed -i -e "/$remove/d" src/Makefile.am From 23f22cd378b4b2a44ea7e0c766d186995965cb1d Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 01:55:58 +0100 Subject: [PATCH 122/150] xine-lib-cleanup-sources.sh: Fix removing unwanted input plugin files. EXTRA_DIST is not an actual use of the file. --- xine-lib-cleanup-sources.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 1cabc9c..1ccd7cc 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -48,7 +48,7 @@ for p in dvd vcd mms; do echo "removing $p input plugin..." # Remove sources for sourcefile in `awk '/^xineplug_inp_'$p'_la_SOURCES/ { $1=""; $2=""; print $0}' src/input/Makefile.am`; do - if [ "`grep -c $sourcefile src/input/Makefile.am`" -le 1 ]; then # if this file is only used for this plugin + if [ "`grep -v '^EXTRA_DIST = ' src/input/Makefile.am | grep -c $sourcefile`" -le 1 ]; then # if this file is only used for this plugin rm -f src/input/$sourcefile fi done From 7a494c091c9b8764003f880428e1d68f198d455a Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 02:01:49 +0100 Subject: [PATCH 123/150] xine-lib-cleanup-sources.sh: Remove patches for forbidden libraries. While they don't seem to contain any actually encumbered code, I feel it's safer to not have them in there. They're useless for us in any case. --- xine-lib-cleanup-sources.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 1ccd7cc..6a1aa82 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -76,6 +76,8 @@ sed -i -e '/^xineplug_decode_nsf_la/,/^\s*$/d' \ -e 's/ nosefart//' \ src/libxineadec/Makefile.am sed -i -e '/nosefart\/Makefile/d' configure.ac +# Patches for forbidden libraries +rm -fv misc/lib*.patch win32/scripts/*.patch # All clean ! From f955cb1ab13016fa3fb3a680725522905f34c3d1 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 02:58:05 +0100 Subject: [PATCH 124/150] * Sun Nov 20 2011 Kevin Kofler 1.1.20-1 - update to 1.1.20 (#753758) - use .xz tarball - drop old conditionals - drop ESD (esound) support on F17+ (native PulseAudio just works) - drop autotools patch, run autogen.sh in %%prep instead - drop unused deepbind patch --- .gitignore | 1 + sources | 3 +- xine-lib-mk-autotools-patch.sh | 34 ------- xine-lib.spec | 167 +++++++++------------------------ 4 files changed, 48 insertions(+), 157 deletions(-) delete mode 100644 xine-lib-mk-autotools-patch.sh diff --git a/.gitignore b/.gitignore index de99961..4d5df15 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ xine-lib-1.1.19-autotools.patch.bz2 xine-lib-1.1.19-pruned.tar.bz2 +/xine-lib-1.1.20-pruned.tar.xz diff --git a/sources b/sources index 7be858d..cf0f1a3 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -1a77122fa938a3f8cb85cef231236c39 xine-lib-1.1.19-autotools.patch.bz2 -552e3e38f1afb77428f6aaa08e13b0d2 xine-lib-1.1.19-pruned.tar.bz2 +0a916dc5456276402ab2002dd68ded50 xine-lib-1.1.20-pruned.tar.xz diff --git a/xine-lib-mk-autotools-patch.sh b/xine-lib-mk-autotools-patch.sh deleted file mode 100644 index 3cb6d1a..0000000 --- a/xine-lib-mk-autotools-patch.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh - -# be sure to have all build deps + libtool installed before running this - -set -e - -if [ -z "$1" -o $# -ne 1 ]; then - echo "Usage: $0 " - exit 2 -fi - -version=$1 - -# missing dependency on autoconf >= (apparently) 2.61 in upstream autofoo files -acversion="$(rpm -q --qf=%{VERSION} autoconf)" -case $acversion in - 2.6*) ;; - *) echo "ERROR: autoconf >= 2.61 required" ; exit 1 ;; -esac - -rm -rf xine-lib-$version xine-lib-$version-pruned -tar jxf xine-lib-$version-pruned.tar.bz2 -cp -a xine-lib-$version xine-lib-$version-pruned - -pushd xine-lib-$version -patch -p1 < ../xine-lib-${version}-no_autopoint.patch -# extra work for to omit old libtool-related crud -rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 -./autogen.sh noconfig -rm -rf autom4te.cache *~ -popd - -diff -Nru xine-lib-$version-pruned xine-lib-$version \ -| bzip2 --best > xine-lib-$version-autotools.patch.bz2 diff --git a/xine-lib.spec b/xine-lib.spec index b47ff84..798ba4e 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -1,7 +1,6 @@ # TODO, sometime, maybe: # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? -# - deprecate ESD support? %define plugin_abi 1.29 %define codecdir %{_libdir}/codecs @@ -12,61 +11,34 @@ %define have_vidix 0 %endif # ix86 -%if 0%{?fedora} -%define _disable_gnomevfs --disable-gnomevfs -%define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} -%else -%define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} -%endif # Fedora - -%define _enable_xvmc --enable-xvmc -%if 0%{?rhel} > 5 -%ifarch ppc64 -%undefine _enable_xvmc -%endif -%endif - -%ifarch %{arm} +%ifarch %{arm} %define _without_directfb 1 %endif -%if 0%{?fedora} > 8 || 0%{?rhel} > 5 -%define _enable_v4l --enable-v4l -%define _enable_libv4l --enable-libv4l -%define _without_arts --without-arts -%define _with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} -%define _with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} -%endif - -%if 0%{?fedora} > 14 +%if 0%{?fedora} > 14 %define _disable_v4l1 1 %endif -%if 0%{?fedora} > 11 || 0%{?rhel} > 5 -%define pa_in_main 1 +%if 0%{?fedora} > 16 +%define _without_esound 1 %endif -Summary: A multimedia engine +Summary: A multimedia engine Name: xine-lib -Version: 1.1.19 -Release: 7%{?dist} +Version: 1.1.20 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries -URL: http://www.xine-project.org/ +URL: http://www.xine-project.org/ # The tarball is generated from the upstream tarball using # the script in SOURCE1. It prunes potentially patented code -#Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.bz2 -Source0: xine-lib-%{version}-pruned.tar.bz2 +#Source0: http://downloads.sourceforge.net/xine/xine-lib-%{version}.tar.xz +Source0: xine-lib-%{version}-pruned.tar.xz Source1: xine-lib-cleanup-sources.sh -Source2: xine-lib-mk-autotools-patch.sh -# autotools patch created with source2 -Patch0: xine-lib-%{version}-autotools.patch.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Patch0: xine-lib-1.1.19-no_autopoint.patch Patch1: xine-lib-1.1.4-optflags.patch -# used to help -Patch2: xine-lib-%{version}-no_autopoint.patch -Patch6: xine-lib-1.1.1-deepbind-939.patch # http://bugzilla.redhat.com/470568 Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 @@ -79,71 +51,56 @@ Patch50: xine-lib-1.1.19-xvmclib_header.patch Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} -BuildRequires: automake libtool +BuildRequires: autoconf automake libtool # X11 BuildRequires: libX11-devel BuildRequires: libXv-devel BuildRequires: libXinerama-devel -%{?_enable_xvmc:BuildRequires: libXvMC-devel} +BuildRequires: libXvMC-devel BuildRequires: libGLU-devel -%if 0%{?_enable_libv4l:1} BuildRequires: libv4l-devel -%endif -%if 0%{?_with_xcb:1} BuildRequires: libxcb-devel -%endif # xcb # Video BuildRequires: SDL-devel BuildRequires: libtheora-devel BuildRequires: libmng-devel -%if %{with_aalib} BuildRequires: aalib-devel >= 1.4 -%endif # aalib BuildRequires: libcaca-devel >= 0.99-0.5.beta14 %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel %endif # directfb -%if 0%{!?_without_imagemagick:1} BuildRequires: ImageMagick-devel >= 6.2.4.6-1 -%endif # imagemagick %if 0%{?_with_freetype:1} BuildRequires: fontconfig-devel %endif # freetype # Audio BuildRequires: alsa-lib-devel >= 0.9.0 +%if 0%{!?_without_esound:1} BuildRequires: esound-devel +%endif # esound BuildRequires: flac-devel BuildRequires: jack-audio-connection-kit-devel BuildRequires: libmodplug-devel BuildRequires: libmpcdec-devel BuildRequires: libvorbis-devel -%if 0%{?_with_pa:1} BuildRequires: pulseaudio-lib-devel -%endif # pa BuildRequires: speex-devel -%if 0%{?_without_arts:1} -Obsoletes: xine-lib-arts < %{version}-%{release} -%else -BuildRequires: arts-devel -%endif BuildRequires: wavpack-devel # CDs BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig BuildRequires: gtk2-devel -%if 0%{?fedora} > 6 || 0%{?rhel} > 5 BuildRequires: libsmbclient-devel -%else -BuildRequires: samba-common -%endif BuildRequires: libdvdnav-devel BuildRequires: libdvdread-devel -%if 0%{?pa_in_main} +# Dropped in Fedora 9 +Obsoletes: xine-lib-arts < %{version}-%{release} + +# Included in main package since Fedora 12 Obsoletes: xine-lib-pulseaudio < 1.1.16.3-5 Provides: xine-lib-pulseaudio = %{version}-%{release} -%endif %description This package contains the Xine library. It can be used to play back @@ -160,21 +117,6 @@ Requires: zlib-devel %description devel This package contains development files for %{name}. -%package arts -Summary: aRts plugin for %{name} -Group: System Environment/Libraries -Requires: %{name}%{?_isa} = %{version}-%{release} -#Requires: xine-lib(plugin-abi) = %{plugin_abi} -%description arts -This package contains the aRts plugin for %{name}. - -%package pulseaudio -Summary: Pulseaudio plugin for %{name} -Group: System Environment/Libraries -Requires: %{name}%{?_isa} = %{version}-%{release} -%description pulseaudio -This package contains the pulseaudio plugin for %{name}. - %package extras Summary: Additional plugins for %{name} Group: System Environment/Libraries @@ -182,21 +124,16 @@ Requires: %{name}%{?_isa} = %{version}-%{release} #Requires: xine-lib(plugin-abi) = %{plugin_abi} %description extras This package contains extra plugins for %{name}: +%if 0%{!?_without_esound:1} - EsounD +%endif # esound - JACK - GDK-Pixbuf -%if ! 0%{?_disable_gnomevfs:1} - - GNOME VFS -%endif - SMB - SDL -%if %{with_aalib} - AA-lib -%endif # aalib - Libcaca -%if 0%{!?_without_imagemagick:1} - Image decoding -%endif # imagemagick %if 0%{!?_without_directfb:1} - DirectFB output %endif # directfb @@ -204,14 +141,15 @@ This package contains extra plugins for %{name}: %prep %setup -q -%patch0 -p1 -b .autotools +%patch0 -p1 -b .no_autopoint +# extra work for to omit old libtool-related crud +rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 +./autogen.sh noconfig +rm -rf autom4te.cache *~ touch -r configure.ac aclocal.m4 touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags touch -r m4/optimizations.m4.stamp m4/optimizations.m4 -# needed at least when compiling with external ffmpeg and internal faad livna bug#939. -# see also http://bugzilla.redhat.com/480504 for side-effects -#patch6 -p1 -b .deepbind %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib %patch50 -p1 -b .xvmclib_header @@ -236,10 +174,10 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{!?_without_directfb:1} --enable-directfb \ %endif # directfb - %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l} \ - %{?_enable_libv4l}%{!?_enable_libv4l:--disable-libv4l} \ - %{?_enable_xvmc}%{!?_enable_xvmc:--disable-xvmc} \ - %{?_disable_gnomevfs} \ + --enable-v4l \ + --enable-libv4l \ + --enable-xvmc \ + --disable-gnomevfs \ --disable-a52dec \ --disable-mad \ --disable-vcd \ @@ -248,19 +186,19 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{?_with_freetype:1} %if 0%{?_with_antialiasing:1} --enable-antialiasing \ - --with-caca \ %endif # antialiasing --with-freetype \ --with-fontconfig \ %endif # freetype + --with-caca \ --with-external-ffmpeg \ --with-xv-path=%{_libdir} \ --with-libflac \ --with-external-libmpcdec \ -%if 0%{?_without_imagemagick:1} - --without-imagemagick \ -%endif # imagemagick - %{!?_without_arts:--with-arts} %{?_without_arts} \ + --without-arts \ +%if 0%{?_without_esound:1} + --without-esound \ +%endif --with-wavpack \ --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} @@ -339,6 +277,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_file.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_oss.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_bitplane.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_lpcm.so @@ -395,13 +334,11 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so -%if 0%{?_enable_v4l:1} %if ! 0%{?_disable_v4l1:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so %endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so -%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so @@ -410,44 +347,24 @@ rm -rf $RPM_BUILD_ROOT %if %{have_vidix} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_vidix.so %endif # vidix -%if 0%{?_with_xcb:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbxv.so -%endif # xcb %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xv.so -%if 0%{?_enable_xvmc:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so -%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so -%if 0%{?_with_pa:1} -%if ! 0%{?pa_in_main} -%files pulseaudio -%defattr(-,root,root,-) -%endif -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so -%endif - -%if 0%{!?_without_arts:1} -%files arts -%defattr(-,root,root,-) -%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_arts.so -%endif - %files extras %defattr(-,root,root,-) +%if 0%{!?_without_esound:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_esd.so +%endif # esound %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_jack.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gdk_pixbuf.so -%if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_image.so -%endif # imagemagick %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_smb.so -%if %{with_aalib} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_aa.so -%endif # aalib %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_caca.so %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_directfb.so @@ -470,6 +387,14 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Nov 20 2011 Kevin Kofler 1.1.20-1 +- update to 1.1.20 (#753758) +- use .xz tarball +- drop old conditionals +- drop ESD (esound) support on F17+ (native PulseAudio just works) +- drop autotools patch, run autogen.sh in %%prep instead +- drop unused deepbind patch + * Fri Jul 15 2011 Kevin Kofler 1.1.19-7 - rebuild for new DirectFB (1.5.0) From ad825765e9a9b162b49e1c6d0197bbdbd6f000e1 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 03:00:42 +0100 Subject: [PATCH 125/150] Delete unused deepbind patch. --- xine-lib-1.1.1-deepbind-939.patch | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 xine-lib-1.1.1-deepbind-939.patch diff --git a/xine-lib-1.1.1-deepbind-939.patch b/xine-lib-1.1.1-deepbind-939.patch deleted file mode 100644 index b04400b..0000000 --- a/xine-lib-1.1.1-deepbind-939.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- xine-lib-1.1.1/src/xine-engine/load_plugins.c.~1~ 2005-09-19 09:14:02.000000000 -0700 -+++ xine-lib-1.1.1/src/xine-engine/load_plugins.c 2006-04-22 23:07:33.000000000 -0700 -@@ -591,7 +591,7 @@ static void collect_plugins(xine_t *this - printf("load_plugins: %s not cached\n", str); - #endif - -- if(!info && (lib = dlopen (str, RTLD_LAZY | RTLD_GLOBAL)) == NULL) { -+ if(!info && (lib = dlopen (str, RTLD_LAZY | RTLD_GLOBAL | RTLD_DEEPBIND)) == NULL) { - const char *error = dlerror(); - /* too noisy -- but good to catch unresolved references */ - xprintf(this, XINE_VERBOSITY_LOG, -@@ -649,7 +649,7 @@ static int _load_plugin_class(xine_t *th - /* load the dynamic library if needed */ - if (!node->file->lib_handle) { - lprintf("dlopen %s\n", filename); -- if ((lib = dlopen (filename, RTLD_LAZY | RTLD_GLOBAL)) == NULL) { -+ if ((lib = dlopen (filename, RTLD_LAZY | RTLD_GLOBAL | RTLD_DEEPBIND)) == NULL) { - const char *error = dlerror(); - - xine_log (this, XINE_LOG_PLUGIN, From 809c5f3c59b688b83cca49f4831ec373fe84f2cd Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 03:12:42 +0100 Subject: [PATCH 126/150] - drop xvmclib_header patch, fixed upstream --- xine-lib-1.1.19-xvmclib_header.patch | 11 ----------- xine-lib.spec | 6 +----- 2 files changed, 1 insertion(+), 16 deletions(-) delete mode 100644 xine-lib-1.1.19-xvmclib_header.patch diff --git a/xine-lib-1.1.19-xvmclib_header.patch b/xine-lib-1.1.19-xvmclib_header.patch deleted file mode 100644 index 880250c..0000000 --- a/xine-lib-1.1.19-xvmclib_header.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up xine-lib-1.1.19/src/video_out/xxmc.h.ftbfs xine-lib-1.1.19/src/video_out/xxmc.h ---- xine-lib-1.1.19/src/video_out/xxmc.h.ftbfs 2010-03-09 16:17:05.000000000 -0600 -+++ xine-lib-1.1.19/src/video_out/xxmc.h 2011-01-24 08:48:28.516631749 -0600 -@@ -79,6 +79,7 @@ - #include - #ifdef HAVE_VLDXVMC - #include -+ #include - #else - #include - #include diff --git a/xine-lib.spec b/xine-lib.spec index 798ba4e..3bdf3b8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -43,10 +43,6 @@ Patch1: xine-lib-1.1.4-optflags.patch Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch -## upstreamable patches -# fixes ftbfs for xvmc header reshuffling -Patch50: xine-lib-1.1.19-xvmclib_header.patch -## upstream patches Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} @@ -152,7 +148,6 @@ touch -r m4/optimizations.m4 m4/optimizations.m4.stamp touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -%patch50 -p1 -b .xvmclib_header # autotools patch + touch'ing above seems to miss something, aclocal # runs on make anyway, let's use the ./autogen.sh hammer for now. @@ -394,6 +389,7 @@ rm -rf $RPM_BUILD_ROOT - drop ESD (esound) support on F17+ (native PulseAudio just works) - drop autotools patch, run autogen.sh in %%prep instead - drop unused deepbind patch +- drop xvmclib_header patch, fixed upstream * Fri Jul 15 2011 Kevin Kofler 1.1.19-7 - rebuild for new DirectFB (1.5.0) From 4b30f13d69768cb66f0ee64bf29f7c04ac595d54 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 04:30:29 +0100 Subject: [PATCH 127/150] - don't build the bundled libdvdnav (unused because DVD input is disabled) - plugin ABI is now 1.30 - cat config.log and exit 1 to debug smbc_init detection issue --- xine-lib.spec | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 3bdf3b8..944fbea 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -2,7 +2,7 @@ # - libstk: http://www.libstk.net/ - probably not, see 1.1.5 ChangeLog # - drop the opengl video out plugin? -%define plugin_abi 1.29 +%define plugin_abi 1.30 %define codecdir %{_libdir}/codecs %ifarch %{ix86} @@ -140,22 +140,12 @@ This package contains extra plugins for %{name}: %patch0 -p1 -b .no_autopoint # extra work for to omit old libtool-related crud rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 -./autogen.sh noconfig -rm -rf autom4te.cache *~ -touch -r configure.ac aclocal.m4 -touch -r m4/optimizations.m4 m4/optimizations.m4.stamp %patch1 -p1 -b .optflags -touch -r m4/optimizations.m4.stamp m4/optimizations.m4 %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -# autotools patch + touch'ing above seems to miss something, aclocal -# runs on make anyway, let's use the ./autogen.sh hammer for now. ./autogen.sh noconfig -#Avoid standard rpaths on lib64 archs: (autotools patch handles this too) -#sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure - %build export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " @@ -187,6 +177,7 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %endif # freetype --with-caca \ --with-external-ffmpeg \ + --with-external-dvdnav \ --with-xv-path=%{_libdir} \ --with-libflac \ --with-external-libmpcdec \ @@ -198,6 +189,9 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} +cat config.log +exit 1 + make %{?_smp_mflags} @@ -390,6 +384,8 @@ rm -rf $RPM_BUILD_ROOT - drop autotools patch, run autogen.sh in %%prep instead - drop unused deepbind patch - drop xvmclib_header patch, fixed upstream +- don't build the bundled libdvdnav (unused because DVD input is disabled) +- plugin ABI is now 1.30 * Fri Jul 15 2011 Kevin Kofler 1.1.19-7 - rebuild for new DirectFB (1.5.0) From a06944aa29a396eb128912ba268c1200c010e4e6 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 04:42:26 +0100 Subject: [PATCH 128/150] Don't patch configure in the optflags patch since we regenerate it anyway. --- xine-lib-1.1.4-optflags.patch | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/xine-lib-1.1.4-optflags.patch b/xine-lib-1.1.4-optflags.patch index a76864a..72540f6 100644 --- a/xine-lib-1.1.4-optflags.patch +++ b/xine-lib-1.1.4-optflags.patch @@ -9,14 +9,3 @@ archopt_val= case "$host_or_hostalias" in ---- xine-lib-1.1.4/configure~ 2007-01-30 23:02:56.000000000 +0200 -+++ xine-lib-1.1.4/configure 2007-01-30 23:03:40.000000000 +0200 -@@ -47754,7 +47754,7 @@ - - DEBUG_CFLAGS="-O $DEBUG_CFLAGS" - -- if test x"$sarchopt" != "xno"; then -+ if false ; then - archopt_val= - - case "$host_or_hostalias" in From 5002673aba5c6dae60e097e83b245826bee6715f Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 04:56:23 +0100 Subject: [PATCH 129/150] Remove config.log debugging. (It turns out that Samba has unresolved symbols.) --- xine-lib.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 944fbea..35ae72a 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -189,9 +189,6 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} -cat config.log -exit 1 - make %{?_smp_mflags} From ce16711891c38ec1bbe5262c1b4259aac850e128 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 05:31:39 +0100 Subject: [PATCH 130/150] It turns out libdvdnav IS used, in the spudec plugin. (Or rather, it uses one file from it, which is now in libdvdread.) --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 35ae72a..1eaa0ef 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -381,7 +381,7 @@ rm -rf $RPM_BUILD_ROOT - drop autotools patch, run autogen.sh in %%prep instead - drop unused deepbind patch - drop xvmclib_header patch, fixed upstream -- don't build the bundled libdvdnav (unused because DVD input is disabled) +- use the system libdvdnav (and libdvdread) instead of the bundled one - plugin ABI is now 1.30 * Fri Jul 15 2011 Kevin Kofler 1.1.19-7 From 838da37aa8bf874de45943593a8eb547fdd0a779 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sun, 20 Nov 2011 05:51:21 +0100 Subject: [PATCH 131/150] - fix system libdvdnav support to also link libdvdread --- xine-lib-1.1.20-link-libdvdread.patch | 11 +++++++++++ xine-lib.spec | 5 +++++ 2 files changed, 16 insertions(+) create mode 100644 xine-lib-1.1.20-link-libdvdread.patch diff --git a/xine-lib-1.1.20-link-libdvdread.patch b/xine-lib-1.1.20-link-libdvdread.patch new file mode 100644 index 0000000..c714aad --- /dev/null +++ b/xine-lib-1.1.20-link-libdvdread.patch @@ -0,0 +1,11 @@ +diff -ur xine-lib-1.1.20/configure.ac xine-lib-1.1.20-link-libdvdread/configure.ac +--- xine-lib-1.1.20/configure.ac 2011-11-13 02:36:20.000000000 +0100 ++++ xine-lib-1.1.20-link-libdvdread/configure.ac 2011-11-20 05:46:16.000000000 +0100 +@@ -1773,6 +1773,7 @@ + AM_PATH_DVDNAV(0.1.9, + AC_DEFINE(HAVE_DVDNAV,1,[Define this if you have a suitable version of libdvdnav]), + [AC_MSG_RESULT([*** no usable version of libdvdnav found, using internal copy ***])]) ++ AC_CHECK_LIB(dvdread, navRead_DSI, DVDNAV_LIBS="$DVDNAV_LIBS -ldvdread",) + else + AC_MSG_RESULT([Use included DVDNAV support]) + fi diff --git a/xine-lib.spec b/xine-lib.spec index 1eaa0ef..38b18a9 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -43,6 +43,9 @@ Patch1: xine-lib-1.1.4-optflags.patch Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch +# fix system libdvdnav support to also link libdvdread +# otherwise, we get unresolved symbols in the spudec plugin +Patch10: xine-lib-1.1.20-link-libdvdread.patch Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} @@ -143,6 +146,7 @@ rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 %patch1 -p1 -b .optflags %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib +%patch10 -p1 -b .link-libdvdread ./autogen.sh noconfig @@ -382,6 +386,7 @@ rm -rf $RPM_BUILD_ROOT - drop unused deepbind patch - drop xvmclib_header patch, fixed upstream - use the system libdvdnav (and libdvdread) instead of the bundled one +- fix system libdvdnav support to also link libdvdread - plugin ABI is now 1.30 * Fri Jul 15 2011 Kevin Kofler 1.1.19-7 From 831d52d6c33a1ef158930bb59d19d81be78a4096 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 3 Jan 2012 16:12:20 +0100 Subject: [PATCH 132/150] * Tue Jan 03 2011 Kevin Kofler 1.1.20.1-1 - update to 1.1.20.1 (bugfix release) - drop upstreamed link-libdvdread patch --- .gitignore | 1 + sources | 2 +- xine-lib.spec | 10 +++++----- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 4d5df15..cd0f87f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ xine-lib-1.1.19-autotools.patch.bz2 xine-lib-1.1.19-pruned.tar.bz2 /xine-lib-1.1.20-pruned.tar.xz +/xine-lib-1.1.20.1-pruned.tar.xz diff --git a/sources b/sources index cf0f1a3..d1fab77 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -0a916dc5456276402ab2002dd68ded50 xine-lib-1.1.20-pruned.tar.xz +46d9f91395feb50237ac385aa6654b26 xine-lib-1.1.20.1-pruned.tar.xz diff --git a/xine-lib.spec b/xine-lib.spec index 38b18a9..2921665 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -25,7 +25,7 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.20 +Version: 1.1.20.1 Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries @@ -43,9 +43,6 @@ Patch1: xine-lib-1.1.4-optflags.patch Patch8: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 Patch9: xine-lib-1.1.16.2-multilib.patch -# fix system libdvdnav support to also link libdvdread -# otherwise, we get unresolved symbols in the spudec plugin -Patch10: xine-lib-1.1.20-link-libdvdread.patch Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} @@ -146,7 +143,6 @@ rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 %patch1 -p1 -b .optflags %patch8 -p1 -b .avsync_hack %patch9 -p1 -b .multilib -%patch10 -p1 -b .link-libdvdread ./autogen.sh noconfig @@ -377,6 +373,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Jan 03 2011 Kevin Kofler 1.1.20.1-1 +- update to 1.1.20.1 (bugfix release) +- drop upstreamed link-libdvdread patch + * Sun Nov 20 2011 Kevin Kofler 1.1.20-1 - update to 1.1.20 (#753758) - use .xz tarball From 666fd2482ee8915d8828834d5951a8d86f7dc68b Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 3 Jan 2012 16:15:22 +0100 Subject: [PATCH 133/150] =?UTF-8?q?s/2011/2012/,=20duh=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 2921665..7bd8afb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -373,7 +373,7 @@ rm -rf $RPM_BUILD_ROOT %changelog -* Tue Jan 03 2011 Kevin Kofler 1.1.20.1-1 +* Tue Jan 03 2012 Kevin Kofler 1.1.20.1-1 - update to 1.1.20.1 (bugfix release) - drop upstreamed link-libdvdread patch From 4a6eed5ac591c6332b2677ed902c8d9634be313a Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 3 Jan 2012 16:33:48 +0100 Subject: [PATCH 134/150] Delete obsolete patch. --- xine-lib-1.1.20-link-libdvdread.patch | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 xine-lib-1.1.20-link-libdvdread.patch diff --git a/xine-lib-1.1.20-link-libdvdread.patch b/xine-lib-1.1.20-link-libdvdread.patch deleted file mode 100644 index c714aad..0000000 --- a/xine-lib-1.1.20-link-libdvdread.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ur xine-lib-1.1.20/configure.ac xine-lib-1.1.20-link-libdvdread/configure.ac ---- xine-lib-1.1.20/configure.ac 2011-11-13 02:36:20.000000000 +0100 -+++ xine-lib-1.1.20-link-libdvdread/configure.ac 2011-11-20 05:46:16.000000000 +0100 -@@ -1773,6 +1773,7 @@ - AM_PATH_DVDNAV(0.1.9, - AC_DEFINE(HAVE_DVDNAV,1,[Define this if you have a suitable version of libdvdnav]), - [AC_MSG_RESULT([*** no usable version of libdvdnav found, using internal copy ***])]) -+ AC_CHECK_LIB(dvdread, navRead_DSI, DVDNAV_LIBS="$DVDNAV_LIBS -ldvdread",) - else - AC_MSG_RESULT([Use included DVDNAV support]) - fi From 3843e1c31bc7ea855f1687176162e954d7d48fc8 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 14 Jan 2012 02:58:08 -0600 Subject: [PATCH 135/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 7bd8afb..40ec7b2 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -26,7 +26,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.20.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -373,6 +373,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Jan 14 2012 Fedora Release Engineering - 1.1.20.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Tue Jan 03 2012 Kevin Kofler 1.1.20.1-1 - update to 1.1.20.1 (bugfix release) - drop upstreamed link-libdvdread patch From 069aba18f74f62bf2f27b3fc35bf191ede1b0e03 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sat, 10 Mar 2012 08:16:20 -0600 Subject: [PATCH 136/150] rebuild (ImageMagick) --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 40ec7b2..51128a8 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -26,7 +26,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.20.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -373,6 +373,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Mar 10 2012 Rex Dieter 1.1.20.1-3 +- rebuild (ImageMagick) + * Sat Jan 14 2012 Fedora Release Engineering - 1.1.20.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From 175663444c00adbafa2bcb7b9f42fa836beade14 Mon Sep 17 00:00:00 2001 From: "Pavel Alexeev (aka Pahan-Hubbitus)" Date: Sun, 3 Jun 2012 02:09:52 +0400 Subject: [PATCH 137/150] Rebuild for ImageMagick update http://lists.fedoraproject.org/pipermail/devel/2012-May/167462.html --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 7bd8afb..5185c70 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -26,7 +26,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.20.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -373,6 +373,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jun 3 2012 Pavel Alexeev 1.1.20.1-2 +- Rebuild for ImageMagick update http://lists.fedoraproject.org/pipermail/devel/2012-May/167462.html + * Tue Jan 03 2012 Kevin Kofler 1.1.20.1-1 - update to 1.1.20.1 (bugfix release) - drop upstreamed link-libdvdread patch From 50ba62cfcd6d8622b4f6840b4b683efe2df3318d Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sat, 23 Jun 2012 12:01:23 +0200 Subject: [PATCH 138/150] Update to 1.1.21, enable libbluray support * Tue Jun 12 2012 Xavier Bachelot 1.1.21-1 - Update to 1.1.21. - Enable libbluray support. --- .gitignore | 1 + sources | 2 +- xine-lib.spec | 10 ++++++++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index cd0f87f..6f9a840 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ xine-lib-1.1.19-autotools.patch.bz2 xine-lib-1.1.19-pruned.tar.bz2 /xine-lib-1.1.20-pruned.tar.xz /xine-lib-1.1.20.1-pruned.tar.xz +/xine-lib-1.1.21-pruned.tar.xz diff --git a/sources b/sources index d1fab77..cce5cd6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -46d9f91395feb50237ac385aa6654b26 xine-lib-1.1.20.1-pruned.tar.xz +121b82650df35c7d701586889edc9aab xine-lib-1.1.21-pruned.tar.xz diff --git a/xine-lib.spec b/xine-lib.spec index 51128a8..54d791b 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -25,8 +25,8 @@ Summary: A multimedia engine Name: xine-lib -Version: 1.1.20.1 -Release: 3%{?dist} +Version: 1.1.21 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -90,6 +90,7 @@ BuildRequires: gtk2-devel BuildRequires: libsmbclient-devel BuildRequires: libdvdnav-devel BuildRequires: libdvdread-devel +BuildRequires: libbluray-devel # Dropped in Fedora 9 Obsoletes: xine-lib-arts < %{version}-%{release} @@ -311,6 +312,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_yuv_frames.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_yuv4mpeg2.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_flac.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_bluray.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_cdda.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_dvb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_file.so @@ -373,6 +375,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Jun 12 2012 Xavier Bachelot 1.1.21-1 +- Update to 1.1.21. +- Enable libbluray support. + * Sat Mar 10 2012 Rex Dieter 1.1.20.1-3 - rebuild (ImageMagick) From ad948d47c8744b87933139840d6fcf8f268de682 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sat, 23 Jun 2012 05:32:58 -0500 Subject: [PATCH 139/150] s/pulseaudio-lib-devel/pkgconfig(libpulse)/ or use pulseaudio-libs-devel these days, that old name was deprecated long ago --- xine-lib.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 54d791b..17aedfa 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -79,13 +79,13 @@ BuildRequires: jack-audio-connection-kit-devel BuildRequires: libmodplug-devel BuildRequires: libmpcdec-devel BuildRequires: libvorbis-devel -BuildRequires: pulseaudio-lib-devel BuildRequires: speex-devel BuildRequires: wavpack-devel # CDs BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig +BuildRequires: pkgconfig(libpulse) BuildRequires: gtk2-devel BuildRequires: libsmbclient-devel BuildRequires: libdvdnav-devel From 7537d5e2da03a62eef237d576b2fd9cb397c27a6 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Mon, 16 Jul 2012 21:50:44 +0200 Subject: [PATCH 140/150] - do not remove DVD plugin, not encumbered (only uses libdvdread/libdvdnav) * Mon Jul 16 2012 Kevin Kofler 1.1.21-2 - do not remove DVD plugin, not encumbered (only uses libdvdread/libdvdnav) It makes no sense to remove the DVD input plugin when: * the libdvd* libraries which do all the actual work are in Fedora, * GStreamer also ships the exact equivalent functionality in Fedora and * we are now shipping the BluRay input plugin in Fedora. The DVD input plugin does not include nor depend on any decoding or decryption code, it only wraps the libdvdread and libdvdnav libraries. (The same goes for the BluRay plugin, except libbluray is used there.) --- sources | 2 +- xine-lib-cleanup-sources.sh | 5 ++++- xine-lib.spec | 9 ++++++++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/sources b/sources index cce5cd6..fd1b3c5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -121b82650df35c7d701586889edc9aab xine-lib-1.1.21-pruned.tar.xz +1568a378a732bd9b69d418674ad4165c xine-lib-1.1.21-pruned.tar.xz diff --git a/xine-lib-cleanup-sources.sh b/xine-lib-cleanup-sources.sh index 6a1aa82..a250800 100755 --- a/xine-lib-cleanup-sources.sh +++ b/xine-lib-cleanup-sources.sh @@ -44,7 +44,10 @@ for remove in ffmpeg; do rmpluglib combined ffmpeg done # Input plugins -for p in dvd vcd mms; do +# DVD reading (dvd input plugin) has now been in Fedora for a while (libdvdread, +# libdvdnav), the xine-lib code only wraps those libraries. (Decrypting and +# decoding are of course still separate and forbidden in Fedora.) +for p in vcd mms; do echo "removing $p input plugin..." # Remove sources for sourcefile in `awk '/^xineplug_inp_'$p'_la_SOURCES/ { $1=""; $2=""; print $0}' src/input/Makefile.am`; do diff --git a/xine-lib.spec b/xine-lib.spec index 17aedfa..2f2352c 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -26,7 +26,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -47,6 +47,9 @@ Patch9: xine-lib-1.1.16.2-multilib.patch Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} +# DVD plugin moved from there +Conflicts: xine-lib-extras-freeworld < 1.1.21-3 + BuildRequires: autoconf automake libtool # X11 BuildRequires: libX11-devel @@ -315,6 +318,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_bluray.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_cdda.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_dvb.so +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_dvd.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_file.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_http.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_net.so @@ -375,6 +379,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jul 16 2012 Kevin Kofler 1.1.21-2 +- do not remove DVD plugin, not encumbered (only uses libdvdread/libdvdnav) + * Tue Jun 12 2012 Xavier Bachelot 1.1.21-1 - Update to 1.1.21. - Enable libbluray support. From 93d016bc79677b19244ed6b99f0968aeb6c7b38c Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sat, 21 Jul 2012 12:07:40 +0200 Subject: [PATCH 141/150] Revert "Rebuild for ImageMagick update http://lists.fedoraproject.org/pipermail/devel/2012-May/167462.html" This reverts commit 175663444c00adbafa2bcb7b9f42fa836beade14. Syncing from master instead. --- xine-lib.spec | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 5185c70..7bd8afb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -26,7 +26,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.20.1 -Release: 2%{?dist} +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -373,9 +373,6 @@ rm -rf $RPM_BUILD_ROOT %changelog -* Sun Jun 3 2012 Pavel Alexeev 1.1.20.1-2 -- Rebuild for ImageMagick update http://lists.fedoraproject.org/pipermail/devel/2012-May/167462.html - * Tue Jan 03 2012 Kevin Kofler 1.1.20.1-1 - update to 1.1.20.1 (bugfix release) - drop upstreamed link-libdvdread patch From 98180e81b4931c972c7db840e945feae2ee74ddc Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Sat, 21 Jul 2012 15:46:43 +0200 Subject: [PATCH 142/150] - disable libbluray support on F16, libbluray too old * Sat Jul 21 2012 Kevin Kofler 1.1.21-2.1 - disable libbluray support on F16, libbluray too old --- xine-lib.spec | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 2f2352c..2e3946a 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -23,10 +23,14 @@ %define _without_esound 1 %endif +%if 0%{?fedora} > 16 +%define bluray 1 +%endif + Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 2%{?dist} +Release: 2%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -93,7 +97,9 @@ BuildRequires: gtk2-devel BuildRequires: libsmbclient-devel BuildRequires: libdvdnav-devel BuildRequires: libdvdread-devel +%if 0%{?bluray} BuildRequires: libbluray-devel +%endif # Dropped in Fedora 9 Obsoletes: xine-lib-arts < %{version}-%{release} @@ -315,7 +321,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_yuv_frames.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_dmx_yuv4mpeg2.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_flac.so +%if 0%{?bluray} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_bluray.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_cdda.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_dvb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_dvd.so @@ -379,6 +387,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Jul 21 2012 Kevin Kofler 1.1.21-2.1 +- disable libbluray support on F16, libbluray too old + * Mon Jul 16 2012 Kevin Kofler 1.1.21-2 - do not remove DVD plugin, not encumbered (only uses libdvdread/libdvdnav) From 7e6058d0e78c7382466d9039c7df7c869c08d394 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 22 Jul 2012 00:35:12 -0500 Subject: [PATCH 143/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 2e3946a..e855808 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 2%{?dist}.1 +Release: 3%{?dist}.1 License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -387,6 +387,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jul 22 2012 Fedora Release Engineering - 1.1.21-3.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Sat Jul 21 2012 Kevin Kofler 1.1.21-2.1 - disable libbluray support on F16, libbluray too old From 1b31029cd5caaa92ef737fa198300ae4a68bf843 Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Mon, 17 Sep 2012 23:12:14 +0200 Subject: [PATCH 144/150] rebuild for new directfb * Mon Sep 17 2012 Kevin Kofler 1.1.21-4 - rebuild for new directfb --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index e855808..1e701eb 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 3%{?dist}.1 +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -387,6 +387,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Sep 17 2012 Kevin Kofler 1.1.21-4 +- rebuild for new directfb + * Sun Jul 22 2012 Fedora Release Engineering - 1.1.21-3.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From 1b121475e097285d896c8554ce377487b11c393d Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 12 Feb 2013 15:55:25 +0100 Subject: [PATCH 145/150] find the Samba 4 libsmbclient.h using pkg-config, fixes FTBFS (#909825) * Tue Feb 12 2013 Kevin Kofler 1.1.21-5 - find the Samba 4 libsmbclient.h using pkg-config, fixes FTBFS (#909825) --- xine-lib-1.1.21-samba4.patch | 32 ++++++++++++++++++++++++++++++++ xine-lib.spec | 16 +++++++++++----- 2 files changed, 43 insertions(+), 5 deletions(-) create mode 100644 xine-lib-1.1.21-samba4.patch diff --git a/xine-lib-1.1.21-samba4.patch b/xine-lib-1.1.21-samba4.patch new file mode 100644 index 0000000..6c5f67d --- /dev/null +++ b/xine-lib-1.1.21-samba4.patch @@ -0,0 +1,32 @@ +diff -ur xine-lib-1.1.21/configure.ac xine-lib-1.1.21-samba4/configure.ac +--- xine-lib-1.1.21/configure.ac 2012-07-16 21:42:38.000000000 +0200 ++++ xine-lib-1.1.21-samba4/configure.ac 2013-02-12 15:44:33.000000000 +0100 +@@ -1698,12 +1698,10 @@ + [with_samba=$enableval], [with_samba=yes]) + + if test "x$with_samba" = "xyes"; then +- AC_CHECK_LIB(smbclient, smbc_init, +- [ AC_CHECK_HEADER(libsmbclient.h, +- [ have_libsmbclient=yes +- LIBSMBCLIENT_LIBS="-lsmbclient" ], +- AC_MSG_RESULT([*** All libsmbclient dependent parts will be disabled ***]))], +- AC_MSG_RESULT([*** All libsmbclient dependent parts will be disabled ***])) ++ PKG_CHECK_MODULES([LIBSMBCLIENT], [smbclient], ++ [have_libsmbclient=yes], ++ AC_MSG_RESULT(*** All libsmbclient dependent parts will be disabled ***)) ++ AC_SUBST(LIBSMBCLIENT_CFLAGS) + AC_SUBST(LIBSMBCLIENT_LIBS) + fi + AM_CONDITIONAL(HAVE_LIBSMBCLIENT, test "x$have_libsmbclient" = "xyes") +diff -ur xine-lib-1.1.21/src/input/Makefile.am xine-lib-1.1.21-samba4/src/input/Makefile.am +--- xine-lib-1.1.21/src/input/Makefile.am 2012-07-16 21:42:38.000000000 +0200 ++++ xine-lib-1.1.21-samba4/src/input/Makefile.am 2013-02-12 15:46:45.000000000 +0100 +@@ -150,7 +150,7 @@ + + xineplug_inp_smb_la_SOURCES = input_smb.c + xineplug_inp_smb_la_LIBADD = $(XINE_LIB) $(LIBSMBCLIENT_LIBS) $(LTLIBINTL) +-xineplug_inp_smb_la_CFLAGS = $(VISIBILITY_FLAG) $(AM_CFLAGS) ++xineplug_inp_smb_la_CFLAGS = $(VISIBILITY_FLAG) $(AM_CFLAGS) $(LIBSMBCLIENT_CFLAGS) + xineplug_inp_smb_la_LDFLAGS = $(xineplug_ldflags) + + xineplug_inp_pvr_la_SOURCES = input_pvr.c diff --git a/xine-lib.spec b/xine-lib.spec index 1e701eb..ebfe4e0 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -44,9 +44,11 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch0: xine-lib-1.1.19-no_autopoint.patch Patch1: xine-lib-1.1.4-optflags.patch # http://bugzilla.redhat.com/470568 -Patch8: xine-lib-1.1.17-avsync_hack.patch +Patch2: xine-lib-1.1.17-avsync_hack.patch # http://bugzilla.redhat.com/477226 -Patch9: xine-lib-1.1.16.2-multilib.patch +Patch3: xine-lib-1.1.16.2-multilib.patch +# find the Samba 4 libsmbclient.h using pkg-config (#909825) +Patch4: xine-lib-1.1.21-samba4.patch Provides: xine-lib(plugin-abi) = %{plugin_abi} %{?_isa:Provides: xine-lib(plugin-abi)%{?_isa} = %{plugin_abi}} @@ -151,8 +153,9 @@ This package contains extra plugins for %{name}: # extra work for to omit old libtool-related crud rm -f configure ltmain.sh libtool m4/libtool.m4 m4/ltoptions.m4 m4/ltversion.m4 %patch1 -p1 -b .optflags -%patch8 -p1 -b .avsync_hack -%patch9 -p1 -b .multilib +%patch2 -p1 -b .avsync_hack +%patch3 -p1 -b .multilib +%patch4 -p1 -b .samba4 ./autogen.sh noconfig @@ -387,6 +390,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Feb 12 2013 Kevin Kofler 1.1.21-5 +- find the Samba 4 libsmbclient.h using pkg-config, fixes FTBFS (#909825) + * Mon Sep 17 2012 Kevin Kofler 1.1.21-4 - rebuild for new directfb From 9f705b68844e4c3a9492eb9f6693f19ac7b5cd5c Mon Sep 17 00:00:00 2001 From: Kevin Fenzi Date: Sat, 30 Mar 2013 12:54:15 -0600 Subject: [PATCH 146/150] Rebuild for broken deps in rawhide --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index ebfe4e0..3d671e1 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -390,6 +390,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Mar 30 2013 Kevin Fenzi - 1.1.21-6 +- Rebuild for broken deps in rawhide + * Tue Feb 12 2013 Kevin Kofler 1.1.21-5 - find the Samba 4 libsmbclient.h using pkg-config, fixes FTBFS (#909825) From 5d28f1e7d9ec9de3807febdc726ac6da4a1a9700 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 4 Aug 2013 03:18:45 -0500 Subject: [PATCH 147/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 3d671e1..6c973ae 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 6%{?dist} +Release: 7%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -390,6 +390,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Aug 04 2013 Fedora Release Engineering - 1.1.21-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Sat Mar 30 2013 Kevin Fenzi - 1.1.21-6 - Rebuild for broken deps in rawhide From e9cb3c563713dee3a0f8bf932604f8a0ac2e880a Mon Sep 17 00:00:00 2001 From: Jon Ciesla Date: Tue, 27 Aug 2013 08:02:03 -0500 Subject: [PATCH 148/150] libmng rebuild --- xine-lib.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 6c973ae..30bedb3 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -30,7 +30,7 @@ Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 7%{?dist} +Release: 8%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -390,6 +390,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Aug 27 2013 Jon Ciesla - 1.1.21-8 +- libmng rebuild. + * Sun Aug 04 2013 Fedora Release Engineering - 1.1.21-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild From 195a4e285b5b721d0ade45b083e848552db4de3a Mon Sep 17 00:00:00 2001 From: Till Maas Date: Sat, 31 Aug 2013 21:53:28 +0200 Subject: [PATCH 149/150] Disable directfb support for Fedora 20 and newer, because it was retired --- xine-lib.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/xine-lib.spec b/xine-lib.spec index 30bedb3..8365d82 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -27,10 +27,14 @@ %define bluray 1 %endif +%if 0%{?fedora} > 19 +%define _without_directfb 1 +%endif + Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 8%{?dist} +Release: 9%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -390,6 +394,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Aug 31 2013 Till Maas - 1.1.21-9 +- Disable directfb support for Fedora 20 and newer, because it was retired + * Tue Aug 27 2013 Jon Ciesla - 1.1.21-8 - libmng rebuild. From da58f27df9a7e59cbe69636eba16211bced0f0b4 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Tue, 26 Aug 2014 14:49:56 -0500 Subject: [PATCH 150/150] 1.1.21-10 - add conditionals to support el5/el6, fix/cleanup other conditionals - omit libmodplug support (for now, FTBFS) --- xine-lib.spec | 97 ++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 84 insertions(+), 13 deletions(-) diff --git a/xine-lib.spec b/xine-lib.spec index 8365d82..1930e7d 100644 --- a/xine-lib.spec +++ b/xine-lib.spec @@ -11,6 +11,14 @@ %define have_vidix 0 %endif # ix86 +%if 0%{?fedora} +%define with_aalib %{?_without_aalib:0}%{!?_without_aalib:1} +# FIXME: libmodplug-0.8.8.5-1 regressed (pkgconfig --cflags dropped -I/usr/include/libmodplug), and now FTBFS +#define _enable_modplug --enable-modplug +%else +%define with_aalib %{?_with_aalib:1}%{!?_with_aalib:0} +%endif # Fedora + %ifarch %{arm} %define _without_directfb 1 %endif @@ -31,10 +39,25 @@ %define _without_directfb 1 %endif +%define _enable_xvmc --enable-xvmc +%if 0%{?rhel} > 5 +%ifarch ppc64 +%undefine _enable_xvmc +%endif +%endif + +%if 0%{?fedora} > 8 || 0%{?rhel} > 5 +%define _enable_v4l --enable-v4l --enable-libv4l +%define _without_arts --without-arts +%define _with_pa %{?_without_pulseaudio:0}%{!?_without_pulseaudio:1} +%define _with_xcb 1 +%define _with_smbclient 1 +%endif + Summary: A multimedia engine Name: xine-lib Version: 1.1.21 -Release: 9%{?dist} +Release: 10%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://www.xine-project.org/ @@ -65,23 +88,27 @@ BuildRequires: autoconf automake libtool BuildRequires: libX11-devel BuildRequires: libXv-devel BuildRequires: libXinerama-devel -BuildRequires: libXvMC-devel +%{?_enable_xvmc:BuildRequires: libXvMC-devel} BuildRequires: libGLU-devel +%if 0%{?_enable_v4l:1} BuildRequires: libv4l-devel +%endif +%if 0%{?_with_xcb} BuildRequires: libxcb-devel +%endif # Video BuildRequires: SDL-devel BuildRequires: libtheora-devel BuildRequires: libmng-devel +%if %{with_aalib} BuildRequires: aalib-devel >= 1.4 +%endif # aalib BuildRequires: libcaca-devel >= 0.99-0.5.beta14 %if 0%{!?_without_directfb:1} BuildRequires: directfb-devel %endif # directfb BuildRequires: ImageMagick-devel >= 6.2.4.6-1 -%if 0%{?_with_freetype:1} BuildRequires: fontconfig-devel -%endif # freetype # Audio BuildRequires: alsa-lib-devel >= 0.9.0 %if 0%{!?_without_esound:1} @@ -89,7 +116,9 @@ BuildRequires: esound-devel %endif # esound BuildRequires: flac-devel BuildRequires: jack-audio-connection-kit-devel +%if 0%{?_enable_modplug:1} BuildRequires: libmodplug-devel +%endif BuildRequires: libmpcdec-devel BuildRequires: libvorbis-devel BuildRequires: speex-devel @@ -98,21 +127,29 @@ BuildRequires: wavpack-devel BuildRequires: libcdio-devel # Other BuildRequires: pkgconfig +%if 0%{?_with_pa} BuildRequires: pkgconfig(libpulse) +%endif BuildRequires: gtk2-devel -BuildRequires: libsmbclient-devel +%if 0%{?_with_smbclient} +BuildRequires: pkgconfig(smbclient) +%endif BuildRequires: libdvdnav-devel BuildRequires: libdvdread-devel %if 0%{?bluray} BuildRequires: libbluray-devel %endif +%if 0%{?_without_arts:1} # Dropped in Fedora 9 Obsoletes: xine-lib-arts < %{version}-%{release} +%endif # Included in main package since Fedora 12 +%if 0%{?fedora} > 11 Obsoletes: xine-lib-pulseaudio < 1.1.16.3-5 Provides: xine-lib-pulseaudio = %{version}-%{release} +%endif %description This package contains the Xine library. It can be used to play back @@ -143,13 +180,28 @@ This package contains extra plugins for %{name}: - GDK-Pixbuf - SMB - SDL +%if %{with_aalib} - AA-lib +%endif # aalib - Libcaca - Image decoding %if 0%{!?_without_directfb:1} - DirectFB output %endif # directfb +%if ! 0%{?_without_arts:1} +%package arts +Summary: aRts plugin for %{name} +Group: System Environment/Libraries +BuildRequires: arts-devel +Requires: %{name}%{?_isa} = %{version}-%{release} +#Requires: xine-lib(plugin-abi) = %{plugin_abi} +# -arts was split off the -extras subpackage at 1.1.7-3 +Obsoletes: xine-lib-extras < 1.1.7-3 +%description arts +This package contains the aRts plugin for %{name}. +%endif + %prep %setup -q @@ -176,32 +228,29 @@ export SDL_CFLAGS="$(sdl-config --cflags)" SDL_LIBS="$(sdl-config --libs)" %if 0%{!?_without_directfb:1} --enable-directfb \ %endif # directfb - --enable-v4l \ - --enable-libv4l \ - --enable-xvmc \ + %{?_enable_modplug}%{!?_enable_modplug:--disable-modplug} \ + %{?_enable_v4l}%{!?_enable_v4l:--disable-v4l --disable-libv4l} \ + %{?_enable_xvmc}%{!?_enable_xvmc:--disable-xvmc} \ --disable-gnomevfs \ --disable-a52dec \ --disable-mad \ --disable-vcd \ --disable-asf \ --disable-faad \ -%if 0%{?_with_freetype:1} -%if 0%{?_with_antialiasing:1} --enable-antialiasing \ -%endif # antialiasing --with-freetype \ --with-fontconfig \ -%endif # freetype --with-caca \ --with-external-ffmpeg \ --with-external-dvdnav \ + %{?_with_xcb:--with-xcb}%{!?with_xcb:--without-xcb} \ --with-xv-path=%{_libdir} \ --with-libflac \ --with-external-libmpcdec \ - --without-arts \ %if 0%{?_without_esound:1} --without-esound \ %endif + %{!?_without_arts:--with-arts} %{?_without_arts} \ --with-wavpack \ --with-real-codecs-path=%{codecdir} \ --with-w32-path=%{codecdir} @@ -280,7 +329,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_file.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_oss.so +%if 0%{?_with_pa:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_pulseaudio.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_bitplane.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gsm610.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_lpcm.so @@ -341,11 +392,13 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_rtsp.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_stdin_fifo.so +%if 0%{?_enable_v4l:1} %if ! 0%{?_disable_v4l1:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_pvr.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l.so %endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_v4l2.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_fb.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_none.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_opengl.so @@ -354,14 +407,24 @@ rm -rf $RPM_BUILD_ROOT %if %{have_vidix} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_vidix.so %endif # vidix +%if 0%{?_with_xcb} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xcbxv.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xshm.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xv.so +%if 0%{?_enable_xvmc:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xvmc.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_xxmc.so +%endif %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_wavpack.so +%if 0%{!?_without_arts:1} +%files arts +%defattr(-,root,root,-) +%{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_arts.so +%endif + %files extras %defattr(-,root,root,-) %if 0%{!?_without_esound:1} @@ -370,8 +433,12 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_ao_out_jack.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_gdk_pixbuf.so %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_decode_image.so +%if 0%{?_with_smbclient} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_inp_smb.so +%endif +%if %{with_aalib} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_aa.so +%endif # aalib %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_caca.so %if 0%{!?_without_directfb:1} %{_libdir}/xine/plugins/%{plugin_abi}/xineplug_vo_out_directfb.so @@ -394,6 +461,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Aug 26 2014 Rex Dieter - 1.1.21-10 +- add conditionals to support el5/el6, fix/cleanup other conditionals +- omit libmodplug support (for now, FTBFS) + * Sat Aug 31 2013 Till Maas - 1.1.21-9 - Disable directfb support for Fedora 20 and newer, because it was retired