From 8c12c1927d7d1562c92026a6a5664a3866731358 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 2 Feb 2007 18:02:26 +0000 Subject: [PATCH] =?UTF-8?q?*=20Wed=20Jan=2031=202007=20Ville=20Skytt=C3=A4?= =?UTF-8?q?=20=20-=201.1.4-1=20-=201.1.4,=20wi?= =?UTF-8?q?th=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 | 45 +++--- 6 files changed, 60 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 8477e9b..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: 3%{?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,12 @@ 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 + * 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.