# 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 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} %define have_vidix 1 %else %define have_vidix 0 %endif %if 0%{?fedora} >= 8 %define with_xcb %{?_without_xcb:0}%{!?_without_xcb:1} %else %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} %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} %endif %define with_dfb %{?_without_directfb:0}%{!?_without_directfb:1} Summary: Xine library Name: xine-lib Version: 1.1.8 Release: 2%{?dist}.1 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: %{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.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 %if %{with_xcb} BuildRequires: libxcb-devel %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 %{with_dfb} BuildRequires: directfb-devel %endif # dfb %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 libvorbis-devel flac-devel libmodplug-devel BuildRequires: esound-devel speex-devel arts-devel alsa-lib-devel >= 0.9.0 BuildRequires: wavpack-devel libmpcdec-devel %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 # samba-common in <= FC-6, libsmbclient-devel in FC7+ BuildRequires: %{_includedir}/libsmbclient.h %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} %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), jack, pulseaudio, xcb. %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: - 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 # imagemagick %if %{with_dfb} - DirectFB output %endif # dfb %if %{with_xcb} - XCB output %endif # xcb %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 -p0 -b .multilib-devel # 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 %{with_dfb} --enable-directfb \ %endif # dfb --disable-a52dec \ --disable-mad \ --disable-dvdnavtest --with-external-dvdnav \ --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/%{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. %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 # 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 %ifarch %ix86 %{_libdir}/xine/plugins/%{version}/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_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 # 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 %if %{have_vidix} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_vidix.so %endif # vidix %{_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 %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 # 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 %{with_dfb} %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_directfb.so %{_libdir}/xine/plugins/%{version}/xineplug_vo_out_xdirectfb.so %endif # dfb %{_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 # xcb %files devel %defattr(-,root,root,-) %doc __docs/hackersguide/* %{_bindir}/xine-config %{_datadir}/aclocal/xine.m4 %{_includedir}/xine.h %{_includedir}/xine/ %{_libdir}/libxine.so %{_libdir}/pkgconfig/libxine.pc %{_mandir}/man1/xine-config.1* %changelog * Mon Sep 10 2007 Ville Skyttä - 1.1.8-2.1 - Adjust default -extras feature set for EPEL-5. * 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