# 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 # - 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 %define abiver 1.21 %define codecdir %{_libdir}/codecs %ifarch %{ix86} %define have_vidix 1 %else %define have_vidix 0 %endif # ix86 %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.12 Release: 2%{?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://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 # autotools patch created with source2 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} # X11 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 BuildRequires: libtheora-devel BuildRequires: 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 # 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: 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 BuildRequires: wavpack-devel %if %{with_pa} BuildRequires: pulseaudio-lib-devel %endif # pa BuildRequires: jack-audio-connection-kit-devel # CDs BuildRequires: libcdio-devel # Other 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. 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, imagemagick, freetype, antialiasing (with freetype), pulseaudio, xcb. %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. # 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} # -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} %description extras This package contains extra plugins for xine-lib: - EsounD - JACK - 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 # imagemagick %if 0%{!?_without_directfb:1} - DirectFB output %endif # directfb %prep %setup -q %patch0 -p1 -b .autotools 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 %patch7 -p1 -b .CVE-2008-1878 # Avoid standard rpaths on lib64 archs: sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure %build export FFMPEG_CFLAGS=" " FFMPEG_LIBS=" " export FFMPEG_POSTPROC_CFLAGS=" " FFMPEG_POSTPROC_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 \ --disable-dependency-tracking \ --enable-ipv6 \ %if 0%{!?_without_directfb:1} --enable-directfb \ %endif # directfb --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-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} %install rm -rf $RPM_BUILD_ROOT __docs make install DESTDIR=$RPM_BUILD_ROOT %find_lang libxine1 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 \ __docs/README.{freebsd,irix,solaris,MINGWCROSS,WIN32} \ __docs/README.{dxr3,network_dvd} # Directory for binary codecs mkdir -p $RPM_BUILD_ROOT%{codecdir} %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files -f libxine1.lang %defattr(-,root,root,-) %doc AUTHORS COPYING COPYING.LIB CREDITS ChangeLog* README TODO %doc __docs/README.* __docs/faq.* %dir %{codecdir}/ %{_datadir}/xine/ %{_libdir}/libxine.so.* %{_mandir}/man5/xine.5* %dir %{_libdir}/xine/ %dir %{_libdir}/xine/plugins/ %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/%{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/%{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/%{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/%{abiver}/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 %ifarch %ix86 %{_libdir}/xine/plugins/%{abiver}/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_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_raw.so %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_syncfb.so %if %{have_vidix} %{_libdir}/xine/plugins/%{abiver}/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 %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 %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 %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 %if 0%{!?_without_imagemagick:1} %{_libdir}/xine/plugins/%{abiver}/xineplug_decode_image.so %endif # imagemagick %{_libdir}/xine/plugins/%{abiver}/xineplug_inp_gnome_vfs.so %{_libdir}/xine/plugins/%{abiver}/xineplug_inp_smb.so %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 %endif # directfb %{_libdir}/xine/plugins/%{abiver}/xineplug_vo_out_sdl.so %files devel %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 * Thu Apr 24 2008 Rex Dieter - 1.1.12-2 - 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. * 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) * 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. - Specfile cleanups. * 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). * 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). * 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). * 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. * 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. * 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 * 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 - 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. * 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). * 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). - Re-enable CACA support. * 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. - 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. * 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. * 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. * 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 - 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 - delete more source files in the cleanup script - drop patch3 (affecting mms) * Tue Oct 17 2006 Aurelien Bompard 1.1.2-16 - fix files list - add BR gtk2-devel - remove xineplug_decode_gdk_pixbuf.so from x86-only * Mon Oct 16 2006 Aurelien Bompard 1.1.2-15 - removed libdts - drop dxr patch (it's removed from tarball) - list xineplug_decode_gdk_pixbuf.so and xineplug_vo_out_vidix.so only on x86 * Sun Oct 15 2006 Aurelien Bompard 1.1.2-14 - update SOURCE1 to remove liba52 from tarball (patented) * Tue Sep 12 2006 Aurelien Bompard 1.1.2-13 - drop patches 2 and 4 * Fri Sep 08 2006 Aurelien Bompard 1.1.2-12 - initial Fedora Extras package