|
发表于 2003-12-11 15:38:01
|
显示全部楼层
mplayer 1.0pre3 SPEC
http://the.turbolinux.co.jp 更多信息浏览这里
http://www.rpm.org/support/RPM-HOWTO.html RPMhowto
http://pkgcvs.turbolinux.co.jp/spec/spec-rule-cn.html turbolinux spec规则
http://pkgcvs.turbolinux.co.jp/cgi-bin/cvsweb.cgi/ turbolinux的CVS站点
我改了一下1.0pre2的规则,缺少的包请到CVS里下载自己编绎(尽量不要使用rpmfind.net不要使用别的发行版本),
turbo的RPM编绎目录位于/var/src/rpm
将所有源文件,path放置于/var/src/rpm/SOURCES
spec文件放置于/var/src/rpm/SPECS
然后执行rpm -ba /var/src/rpm/SPECS/*.spec
请注意要安装rpm-build这个包,更多请参考rpmhowto
mplayer.spec 有错误,请跟帖指正,谢谢,RPM包的东东还是有N多不懂
仍然是针对i586优化,gcc的编绎参数正在学习中,谁知道请教教我,谢谢
对了nvidia的vidix驱动,HOHO仍然是绿屏,没打游戏也就没装nvidia驱动,请安装了驱动的朋友试试vidix-nvidia包
%define name mplayer
%define fname MPlayer
%define ver 1.0pre3
%define rel 1
%define ser 2003121018
# The language to use in mplayer, one of : cz de dk en es fr hu nl no pl ro ru
%define mplang zh_CN
Summary: MPlayer is a movie player for LINUX.
Name: %{name}
Version: %{ver}
Release: %{rel}
Serial: %{ser}
Group: Applications/Multimedia
Copyright: GPL
URL: http://www.mplayerhq.hu/homepage/
Source0: http://www2.mplayerhq.hu/MPlayer/releases/%{fname}-%{ver}.tar.bz2
#NoSource: 0
#Source1: gnome-%{name}.desktop
#Source2: %{name}.desktop
#add codecs
Source3 http://www2.mplayerhq.hu/MPlayer ... s/essential.tar.bz2
# Skins
Source10: http://www1.mplayerhq.hu/MPlayer/Skin/Blue-small-1.0.tar.bz2
Source11: http://www1.mplayerhq.hu/MPlayer/Skin/Corelian-1.0.tar.bz2
Source12: http://www1.mplayerhq.hu/MPlayer/Skin/plastic-1.1.1.tar.bz2
Source13: http://www1.mplayerhq.hu/MPlayer/Skin/CornerMP-1.0.tar.bz2
Source14: http://www1.mplayerhq.hu/MPlayer/Skin/CornerMP-aqua-1.0.tar.bz2
Source15: http://www1.mplayerhq.hu/MPlayer/Skin/gnome-1.1.tar.bz2
Source16: http://www1.mplayerhq.hu/MPlayer/Skin/krystal-1.0.tar.bz2
Source17 http://www1.mplayerhq.hu/MPlayer/Skin/softgrip-1.0.tar.bz2
Source18 http://www1.mplayerhq.hu/MPlayer/Skin/default-1.7.tar.bz2
#NoSource: 10
#NoSource: 11
#NoSource: 12
#Patch1: %{name}-%{ver}-rpm.patch
BuildRoot: /var/tmp/%{name}-%{version}-root
BuildRequires: gcc3 >= 3.2
BuildRequires: XFree86-devel >= 4.0.3
BuildRequires: ncurses-devel
BuildRequires: audiofile-devel
BuildRequires: esound-devel
BuildRequires: zlib-devel
BuildRequires: unzip
BuildRequires: SDL-devel >= 1.1.7
BuildRequires: Mesa-devel
BuildRequires: aalib-devel
BuildRequires: gtk+-devel >= 1.2
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: alsa-lib-devel
BuildRequires: libvorbis-devel
BuildRequires: libdvdnav
#BuildRequires: arts-devel
Requires: XFree86-libs >= 4.0.3
Requires: SDL >= 1.1.7
Requires: gtk+ >= 1.2
Requires: libjpeg
Requires: libpng
Requires: audiofile
Requires: esound
Requires: alsa-lib
Requires: libvorbis
Requires: libdvdnav
%description
MPlayer is a movie and animation player that supports a wide range of file
formats, including ASF, Quicktime, and Vivo. It has many MMX/SSE/3Dnow
optimized native audio and video codecs, but allows using XAnim's binary
codec plugins, and Win32 codec DLLs. It has basic VCD/DVD playback
functionality, including DVD subtitles, but supports many text-based subtitle
formats too. For video output, nearly every existing interface is supported.
It's also able to convert any supported files to raw/divx/mpeg4 AVI (pcm/mp3
audio), and even video grabbing from V4L devices.
%package -n mencoder
Group: Applications/Multimedia
Summary: MEncoder is a movie encoder for LINUX.
Requires: mplayer = %{version}
%description -n mencoder
MEncoder a movie encoder for LINUX and is a part of the MPlayer package.
%package tools
Group: Applications/Multimedia
Summary: Various tools for the MPlayer
BuildRequires: freetype2-devel >= 2.0.0
Requires: mplayer
%description tools
Various optional tools for use with MPlayer.
Currently included:
* mplayer_subfont a tool for creating OSD fonts
%package vidix
Group: Applications/Multimedia
Summary: VIDeo Interface for *nIX
Requires: mplayer
%description vidix
VIDIX is the abbreviation for VIDeo Interface for *niX.
VIDIX was designed and introduced as an interface for fast user-space
drivers providing DGA everywhere where it's possible (unlike X11).
I hope that these drivers will be as portable as X11 (not only on *nix).
* What is it: It's a portable successor of mga_vid technology, but it's
located in user-space.
* Unlike X11 it provides DGA everywhere it's possible
* Unlike v4l it provides interface for video playback
* Unlike linux's drivers it uses mathematics library
#%package vidix-genfb
#Group: Applications/Multimedia
#Summary: VIDIX driver for generic framebuffer
#Requires: mplayer-vidix
#Provides: mplayer-vidix-driver
#%description vidix-genfb
#VIDIX driver for generic framebuffer. Not working.
%package vidix-cyberblade
Group: Applications/Multimedia
Summary: VIDIX driver for Trident cyberblade
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-cyberblade
VIDIX driver for Trident cyberblade.
%package vidix-mach64
Group: Applications/Multimedia
Summary: VIDIX driver for ATI Mach64
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-mach64
VIDIX driver for ATI Mach64.
%package vidix-mga
Group: Applications/Multimedia
Summary: VIDIX driver for Matrox Gxxx series (BES)
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-mga
VIDIX driver for Matrox Gxxx series (uses BES). Buggy.
%package vidix-mga2
Group: Applications/Multimedia
Summary: VIDIX driver for Matrox Gxxx series (CRTC2)
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-mga2
VIDIX driver for Matrox Gxxx series (uses CRTC2). Buggy.
%package vidix-nvidia
Group: Applications/Multimedia
Summary: VIDIX driver for nVidia cards
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-nvidia
VIDIX driver for nVidia cards.
%package vidix-radeon
Group: Applications/Multimedia
Summary: VIDIX driver for ATI Radeon
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-radeon
VIDIX driver for ATI Radeon.
%package vidix-rage128
Group: Applications/Multimedia
Summary: VIDIX driver for ATI Rage128
Requires: mplayer-vidix
Provides: mplayer-vidix-driver
%description vidix-rage128
VIDIX driver for ATI Rage128.
%prep
%setup -q -n %{fname}-%{ver}
#%patch1 -p1 -b .r
%build
# this is equivalent to -O3
CFLAGS="$RPM_OPT_FLAGS -fomit-frame-pointer -ffast-math -finline-functions"
%ifnarch mips
CFLAGS="$CFLAGS -pipe"
%endif
export CFLAGS
LC_MESSAGES=C ; export LC_MESSAGES ; export CC=gcc-3.2
./configure \
--prefix=%{_prefix} \
--datadir=%{_datadir}/%{name} \
--confdir=%{_sysconfdir}/%{name} \
--language=%{mplang} \
--enable-runtime-cpudetection \
--enable-dga \
--enable-fbdev \
--enable-i18n \
--enable-png \
--enable-gl \
--enable-gui \
--enable-largefiles \
--enable-vm \
--enable-x11 \
--enable-xv \
--enable-vidix \
--with-codecsdir=%{_libdir}/mplayer/codecs \
--with-xanimlibdir=%{_libdir}/mplayer/codecs \
--disable-divx4linux \
--disable-xvid \
--disable-arts
# 1.0pre2 does not support dvdnav. Referer configure script
# --enable-dvdnav --with-libdvdnav=/usr/include/dvdnav \
CFLAGS="$RPM_OPT_FLAGS" |
make
pushd TOOLS/subfont-c
make
popd
%install
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
make \
DESTDIR=$RPM_BUILD_ROOT \
MANDIR=$RPM_BUILD_ROOT%{_mandir} \
install
# install configs
install -d $RPM_BUILD_ROOT{%{_datadir}/%{name},%{_sysconfdir}/%{name}}
sed -e 's/include =.*//' < etc/example.conf | sed -e 's/fs=yes/# fs=yes/' >$RPM_BUILD_ROOT%{_sysconfdir}/%{name}/mplayer.conf
install -m 644 etc/codecs.conf $RPM_BUILD_ROOT%{_sysconfdir}/mplayer/codecs.conf
install -m 644 etc/input.conf $RPM_BUILD_ROOT%{_sysconfdir}/mplayer/input.conf
pushd TOOLS/subfont-c
install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/fonts/{osd,encodings}
install osd/* $RPM_BUILD_ROOT%{_datadir}/%{name}/fonts/osd/
install encodings/* $RPM_BUILD_ROOT%{_datadir}/%{name}/fonts/encodings/
install -m 755 subfont $RPM_BUILD_ROOT%{_bindir}/mplayer_subfont
popd
touch $RPM_BUILD_ROOT%{_datadir}/%{name}/font/font.desc
# cleanup CVS stuff
rm -rf DOCS/*/CVS
# include skin and menu entry if building with GUI
# fix symlink
ln -sf mplayer $RPM_BUILD_ROOT%{_bindir}/gmplayer
# default skin
install -d $RPM_BUILD_ROOT%{_datadir}/mplayer/Skin/
( cd $RPM_BUILD_ROOT%{_datadir}/mplayer/Skin/
tar Ixf %{SOURCE10}
tar Ixf %{SOURCE11}
tar Ixf %{SOURCE12}
tar Ixf %{SOURCE13}
tar Ixf %{SOURCE14}
tar Ixf %{SOURCE15}
tar Ixf %{SOURCE16}
tar Ixf %{SOURCE17}
tar Ixf %{SOURCE18}
chmod -Rf a+rX,g-w,o-w .
rm -rf `find -type d -name CVS`
)
# Last, add a system menu entry!
install -d ${RPM_BUILD_ROOT}/usr/share/gnome/apps/Multimedia
install -d ${RPM_BUILD_ROOT}/usr/share/applnk/Multimedia
install -D -m 644 Gui/mplayer/pixmaps/MPlayer_mini.xpm \
%{buildroot}%{_datadir}/pixmaps/MPlayer_mini.xpm
#define desktop
cat > %{name}.desktop << EOF
[Desktop Entry]
Name=MPlayer
Comment=The Movie Player for Linux
Icon=MPlayer_mini.xpm
Exec=gmplayer
Terminal=0
MimeType=video/mpeg;video/x-msvideo;video/quicktime
Type=Application
EOF
install -D -m 0644 %{name}.desktop ${RPM_BUILD_ROOT}/usr/share/applnk/Multimedia/%{name}.desktop
install -D -m 0644 %{name}.desktop ${RPM_BUILD_ROOT}/usr/share/gnome/apps/Multimedia/gnome-%{name}.desktop
mkdir -p ${RPM_BUILD_ROOT}/%{_libdir}/mplayer
( cd ${RPM_BUILD_ROOT}/%{_libdir}/mplayer
tar Ixf %{SOURCE3}
mv extralite codecs
chmod -Rf a+rX,g-w,o-w .
rm -rf `find -type d -name CVS`
)
ln -sf codecs ${RPM_BUILD_ROOT}/%{_libdir}/mplayer/win32_codecs
%clean
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
%post vidix
ldconfig
%postun vidix
ldconfig
%files
%defattr(0644,root,root,0755)
%config %{_sysconfdir}/%{name}/codecs.conf
%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/mplayer.conf
%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/%{name}/input.conf
#%doc DOCS/bugreports.html DOCS/cd-dvd.html DOCS/codecs.html DOCS/codecs-in.html
#%doc DOCS/documentation.html DOCS/encoding.html DOCS/faq.html DOCS/formats.html
#%doc DOCS/skin-en.html DOCS/sound.html DOCS/video.html
#%doc DOCS/users_against_developers.html DOCS/DXR3 DOCS/DVB
#%doc DOCS/tech/codec-devel.txt DOCS/tech/codecs.conf.txt
#%doc DOCS/tech/cvs-howto.txt
#%doc DOCS/tech/formats.txt DOCS/tech/hwac3.txt
#%doc DOCS/tech/libvo.txt DOCS/tech/libvo2.txt
#%doc DOCS/tech/mpsub.sub DOCS/tech/osd.txt DOCS/tech/patches.txt
#%doc DOCS/tech/playtree DOCS/tech/porting-status.txt DOCS/tech/subcp.txt
#%doc DOCS/tech/tech-eng.txt DOCS/tech/vidix.txt
#%lang(pl) %doc %dir DOCS/Polish
#%lang(de) %doc %dir DOCS/German
#%lang(hu) %doc DOCS/tech/formats-hun.txt DOCS/tech/playtree-hun
#%lang(hu) %doc %dir DOCS/Hungarian
#%lang(ru) %doc %dir DOCS/Russian
#%lang(es) %doc %dir DOCS/Spanish
#%lang(fr) %doc %dir DOCS/French
#%lang(it) %doc %dir DOCS/Italian
%lang(zh) %doc %dir DOCS/zh_CN
%{_datadir}/gnome/apps/Multimedia/gnome-%{name}.desktop
%{_datadir}/applnk/Multimedia/%{name}.desktop
%{_datadir}/pixmaps/MPlayer_mini.xpm
%attr(755,root,root) %{_bindir}/mplayer
%attr(755,root,root) %{_bindir}/gmplayer
#%attr(4755,root,root) %{_bindir}/fibmap_mplayer
%{_mandir}/man1/mplayer.1*
%dir %{_prefix}/share/mplayer
%{_prefix}/share/mplayer/font
%{_prefix}/share/mplayer/fonts
%{_datadir}/mplayer/Skin/
%dir %{_libdir}/mplayer/codecs
%{_libdir}/mplayer/codecs/*
%{_libdir}/mplayer/win32_codecs
%files -n mencoder
%defattr(0644,root,root,0755)
%doc DOCS/encoding.html DOCS/tech/colorspaces.txt DOCS/tech/dr-methods.txt
%doc DOCS/tech/libavc-rate-control.txt DOCS/tech/vop.txt
%attr(755,root,root) %{_bindir}/mencoder
%{_mandir}/man1/mencoder.1*
%files tools
%defattr(0644,root,root,0755)
%attr(755,root,root) %{_bindir}/mplayer_subfont
%files vidix
%defattr(0644,root,root,0755)
%attr(755,root,root) %{_libdir}/libdha.so.*
%dir %{_libdir}/mplayer/vidix
#%files vidix-genfb
#%attr(755,root,root) %{_libdir}/%{name}/vidix/genfb_vid.so
%files vidix-cyberblade
%attr(755,root,root) %{_libdir}/%{name}/vidix/cyberblade_vid.so
%files vidix-mach64
%attr(755,root,root) %{_libdir}/%{name}/vidix/mach64_vid.so
%files vidix-mga2
%attr(755,root,root) %{_libdir}/%{name}/vidix/mga_crtc2_vid.so
%files vidix-mga
%attr(755,root,root) %{_libdir}/%{name}/vidix/mga_vid.so
%files vidix-nvidia
%attr(755,root,root) %{_libdir}/%{name}/vidix/nvidia_vid.so
%files vidix-radeon
%attr(755,root,root) %{_libdir}/%{name}/vidix/radeon_vid.so
%files vidix-rage128
%attr(755,root,root) %{_libdir}/%{name}/vidix/rage128_vid.so
%changelog
* Tue Dec 09 2003 dato <datocp@hotmail.com>
- 1.0pre3-1
- add a small icons
- add some skins
- add codecs
- add Trident cyberblade card vidix driver
- define lang=zh_CN
* Tue Oct 07 2003 Kiichiro NAKA <knaka@turbolinux.co.jp>
- 1.0pre2-1
* Sun Nov 3 2002 Go Taniguchi <go@turbolinux.co.jp>
- disabled arts
* Tue Oct 29 2002 Go Taniguchi <go@turbolinux.co.jp>
- update to 0.90pre9
- added some skins
- disable arts
* Wed Oct 16 2002 Fumio Nakayama <endymion@ca2.so-net.ne.jp>
- update to 0.90-pre8
* Wed Jun 26 2002 Fumio Nakayama <fumio@turbolinux.co.jp>
- New build for Turbolinux |
|