1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-01 12:22:22 +00:00
mpv/rpm/mplayer.spec
Uoti Urpala 6122d83981 tremor: drop internal tremor library
Drop internal copy of the tremor library. Note that the internal ogg
demuxer (which is still sometimes useful to work around libavformat
ogg demuxer problems, though it's itself quite buggy) now cannot be
compiled without either external libvorbis or libvorbisidec (tremor).
2011-02-01 21:28:03 +02:00

309 lines
8.8 KiB
RPMSpec

%define date %(date --iso)
%define svnbuild %(date +%Y%m%d)
%define codecsdir %{_libdir}/codecs
Name: mplayer
Version: 1.0
Release: 0.%{svnbuild}svn%{?dist}
Summary: Movie player playing most video formats and DVDs
Group: Applications/Multimedia
License: GPL
URL: http://www.mplayerhq.hu/
Source0: http://www.mplayerhq.hu/MPlayer/releases/mplayer-export-snapshot.tar.bz2
Source1: http://www.mplayerhq.hu/MPlayer/skins/Blue-1.7.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: SDL-devel
BuildRequires: aalib-devel
BuildRequires: alsa-lib-devel
BuildRequires: cdparanoia-devel
BuildRequires: desktop-file-utils
BuildRequires: em8300-devel
BuildRequires: enca-devel
BuildRequires: faad2-devel
BuildRequires: fontconfig-devel
BuildRequires: freetype-devel >= 2.0.9
BuildRequires: fribidi-devel
BuildRequires: giflib-devel
BuildRequires: gtk2-devel
BuildRequires: ladspa-devel
BuildRequires: lame-devel
BuildRequires: libGL-devel
BuildRequires: libXinerama-devel
BuildRequires: libXv-devel
BuildRequires: libXvMC-devel
BuildRequires: libXxf86dga-devel
BuildRequires: libXxf86vm-devel
BuildRequires: libcaca-devel
BuildRequires: libdca-devel
BuildRequires: libdv-devel
BuildRequires: libdvdnav-devel
BuildRequires: libjpeg-devel
BuildRequires: libmpcdec-devel
BuildRequires: libtheora-devel
BuildRequires: libvorbis-devel
BuildRequires: lirc-devel
BuildRequires: live-devel
BuildRequires: lzo-devel >= 2
BuildRequires: speex-devel >= 1.1
BuildRequires: xvidcore-devel >= 0.9.2
%{?_with_arts:BuildRequires: arts-devel}
%{?_with_amr:BuildRequires: amrnb-devel amrwb-devel}
%{?_with_directfb:BuildRequires: directfb-devel}
%{?_with_esound:BuildRequires: esound-devel}
%{?_with_jack:BuildRequires: jack-audio-connection-kit-devel}
%{?_with_libmad:BuildRequires: libmad-devel}
%{?_with_openal:BuildRequires: openal-devel}
%{?_with_samba:BuildRequires: samba-common}
%{?_with_svgalib:BuildRequires: svgalib-devel}
%{?_with_xmms:BuildRequires: xmms-devel}
# for XML docs, SVN only
BuildRequires: docbook-dtds
BuildRequires: docbook-style-xsl
BuildRequires: libxml2
BuildRequires: libxslt
%description
MPlayer is a movie player that plays most MPEG, VOB, AVI, OGG/OGM,
VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, yuv4mpeg, FILM,
RoQ, and PVA files. You can also use it to watch VCDs, SVCDs, DVDs,
3ivx, RealMedia, and DivX movies.
It supports a wide range of output drivers including X11, XVideo, DGA,
OpenGL, SVGAlib, fbdev, AAlib, DirectFB etc. There are also nice
antialiased shaded subtitles and OSD.
Non-default rpmbuild options:
--with samba: Enable Samba (smb://) support
--with xmms: Enable XMMS input plugin support
--with amr: Enable AMR support
--with libmad: Enable libmad support
--with openal: Enable OpenAL support
--with jack: Enable JACK support
--with arts: Enable aRts support
--with esound: Enable EsounD support
--with directfb:Enable DirectFB support
--with svgalib: Enable SVGAlib support
%package gui
Summary: GUI for MPlayer
Group: Applications/Multimedia
Requires: mplayer = %{version}-%{release}
%description gui
This package contains a GUI for MPlayer and a default skin for it.
%package doc
Summary: MPlayer documentation in various languages
Group: Documentation
%description doc
MPlayer documentation in various languages.
%prep
%setup -q -n mplayer-export-%{date}
doconv() {
iconv -f $1 -t $2 -o DOCS/man/$3/mplayer.1.utf8 DOCS/man/$3/mplayer.1 && \
mv DOCS/man/$3/mplayer.1.utf8 DOCS/man/$3/mplayer.1
}
for lang in de es fr it ; do doconv iso-8859-1 utf-8 $lang ; done
for lang in hu pl ; do doconv iso-8859-2 utf-8 $lang ; done
for lang in ru ; do doconv koi8-r utf-8 $lang ; done
mv DOCS/man/zh DOCS/man/zh_CN
%build
./configure \
--prefix=%{_prefix} \
--bindir=%{_bindir} \
--datadir=%{_datadir}/mplayer \
--mandir=%{_mandir} \
--confdir=%{_sysconfdir}/mplayer \
--libdir=%{_libdir} \
--codecsdir=%{codecsdir} \
\
--enable-gui \
--enable-largefiles \
--disable-termcap \
--disable-bitmap-font \
--enable-lirc \
--enable-joystick \
%{!?_with_samba:--disable-smb} \
--disable-dvdread-internal \
--disable-libdvdcss-internal \
--enable-menu \
\
%{!?_with_amr:--disable-libamr_nb --disable-libamr_wb} \
%{!?_with_libmad:--disable-mad} \
%{?_with_xmms:--enable-xmms} \
\
--disable-svga \
--enable-xvmc \
--%{?_with_directfb:enable}%{!?_with_directfb:disable}-directfb \
%{!?_with_svgalib:--disable-svga} \
\
%{!?_with_arts:--disable-arts} \
%{!?_with_esound:--disable-esd} \
%{!?_with_jack:--disable-jack} \
%{!?_with_openal:--disable-openal} \
\
--language=all \
\
%{?_with_xmms:--with-xmmslibdir=%{_libdir}} \
--with-xvmclib=XvMCW
%{__make}
mv -f mplayer gmplayer
%{__make} distclean
./configure \
--prefix=%{_prefix} \
--bindir=%{_bindir} \
--datadir=%{_datadir}/mplayer \
--mandir=%{_mandir} \
--confdir=%{_sysconfdir}/mplayer \
--libdir=%{_libdir} \
--codecsdir=%{codecsdir} \
\
--enable-largefiles \
--disable-termcap \
--disable-bitmap-font \
--enable-lirc \
--enable-joystick \
%{!?_with_samba:--disable-smb} \
--disable-dvdread-internal \
--disable-libdvdcss-internal \
--enable-menu \
\
%{!?_with_amr:--disable-libamr_nb --disable-libamr_wb} \
%{!?_with_libmad:--disable-mad} \
%{?_with_xmms:--enable-xmms} \
\
--disable-svga \
--enable-xvmc \
--%{?_with_directfb:enable}%{!?_with_directfb:disable}-directfb \
%{!?_with_svgalib:--disable-svga} \
\
%{!?_with_arts:--disable-arts} \
%{!?_with_esound:--disable-esd} \
%{!?_with_jack:--disable-jack} \
%{!?_with_openal:--disable-openal} \
\
--language=all \
\
%{?_with_xmms:--with-xmmslibdir=%{_libdir}} \
--with-xvmclib=XvMCW
%{__make}
# build HTML documentation from XML files
pushd DOCS/xml
%{__make} html-chunked
popd
%install
rm -rf $RPM_BUILD_ROOT doc
make install DESTDIR=$RPM_BUILD_ROOT STRIPBINARIES=no
install -pm 755 TOOLS/midentify.sh $RPM_BUILD_ROOT%{_bindir}/
# Clean up documentation
mkdir doc
cp -pR DOCS/* doc/
rm -r doc/man doc/xml doc/README
mv doc/HTML/* doc/
rm -rf doc/HTML
# Default config files
install -Dpm 644 etc/example.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/mplayer/mplayer.conf
# use Nimbus Sans L font for OSD (via fontconfig)
echo "fontconfig=yes" >>$RPM_BUILD_ROOT%{_sysconfdir}/mplayer/mplayer.conf
echo "font=\"Sans\"" >>$RPM_BUILD_ROOT%{_sysconfdir}/mplayer/mplayer.conf
install -pm 644 etc/{input,menu}.conf $RPM_BUILD_ROOT%{_sysconfdir}/mplayer/
# GUI mplayer
install -pm 755 g%{name} $RPM_BUILD_ROOT%{_bindir}/
# Default skin
install -dm 755 $RPM_BUILD_ROOT%{_datadir}/mplayer/skins
tar xjC $RPM_BUILD_ROOT%{_datadir}/mplayer/skins --exclude=.svn -f %{SOURCE1}
ln -s Blue $RPM_BUILD_ROOT%{_datadir}/mplayer/skins/default
# Icons
install -dm 755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
install -pm 644 etc/mplayer.xpm \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
# Desktop file
desktop-file-install \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
etc/%{name}.desktop
# Codec dir
install -dm 755 $RPM_BUILD_ROOT%{codecsdir}
%post gui
gtk-update-icon-cache -qf %{_datadir}/icons/hicolor &>/dev/null || :
update-desktop-database &>/dev/null || :
%postun gui
gtk-update-icon-cache -qf %{_datadir}/icons/hicolor &>/dev/null || :
update-desktop-database &>/dev/null || :
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-, root, root, -)
%doc AUTHORS Changelog LICENSE README
%dir %{_sysconfdir}/mplayer
%config(noreplace) %{_sysconfdir}/mplayer/mplayer.conf
%config(noreplace) %{_sysconfdir}/mplayer/input.conf
%config(noreplace) %{_sysconfdir}/mplayer/menu.conf
%{_bindir}/midentify.sh
%{_bindir}/mplayer
%dir %{codecsdir}/
%dir %{_datadir}/mplayer/
%{_mandir}/man1/mplayer.1*
%lang(cs) %{_mandir}/cs/man1/mplayer.1*
%lang(de) %{_mandir}/de/man1/mplayer.1*
%lang(es) %{_mandir}/es/man1/mplayer.1*
%lang(fr) %{_mandir}/fr/man1/mplayer.1*
%lang(hu) %{_mandir}/hu/man1/mplayer.1*
%lang(it) %{_mandir}/it/man1/mplayer.1*
%lang(pl) %{_mandir}/pl/man1/mplayer.1*
%lang(ru) %{_mandir}/ru/man1/mplayer.1*
%lang(zh_CN) %{_mandir}/zh_CN/man1/mplayer.1*
%files gui
%defattr(-, root, root, -)
%{_bindir}/gmplayer
%{_datadir}/applications/*mplayer.desktop
%{_datadir}/icons/hicolor/32x32/apps/mplayer.xpm
%{_datadir}/mplayer/skins/
%files doc
%defattr(-, root, root, -)
%doc doc/en/ doc/tech/
%lang(cs) %doc doc/cs/
%lang(de) %doc doc/de/
%lang(es) %doc doc/es/
%lang(fr) %doc doc/fr/
%lang(hu) %doc doc/hu/
%lang(pl) %doc doc/pl/
%lang(ru) %doc doc/ru/
%lang(zh_CN) %doc doc/zh_CN/
%changelog
* Sat Oct 06 2007 Dominik Mierzejewski <rpm at greysector.net>
- adapted livna specfile for inclusion in SVN