X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=vlc.ebuild;h=bebc5a242872b2fdf94d01426fc4c8a8a6bf76c9;hb=c2251f25cb8fd59a3969aab2a0a8bd00ae67c820;hp=df9f66f0f654b0c4642d2d5bfbdb92358e52d3a2;hpb=abd56a2783022ec0624d8e820b31d48ad37b318d;p=vlc diff --git a/vlc.ebuild b/vlc.ebuild index df9f66f0f6..bebc5a2428 100644 --- a/vlc.ebuild +++ b/vlc.ebuild @@ -2,7 +2,7 @@ # vlc.ebuild: A Gentoo ebuild for vlc ############################################################################### # Copyright (C) 2003 VideoLAN -# $Id: vlc.ebuild,v 1.9 2003/06/23 00:18:50 hartman Exp $ +# $Id: vlc.ebuild,v 1.19 2003/08/24 08:12:01 hartman Exp $ # # Authors: Derk-Jan Hartman # @@ -20,103 +20,93 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. ############################################################################### -IUSE="arts qt ncurses dvd gtk nls 3dfx matrox svga fbcon esd kde X alsa ggi oggvorbis gnome xv oss sdl fbcon aalib slp truetype v4l xvid lirc wxwindows imlib" +# Instructions: http://wiki.videolan.org/index.php/Linux%20Gentoo +# Some of the ideas in this ebuild are derived from the official Gentoo ebuild +# Thanks to the Gentoo Team for supporting us. +############################################################################### + +# Missing support for... +# tarkin - package not in portage yet - experimental +# theora - package not in portage yet - experimental +# tremor - package not in portage yet - experimental + +IUSE="arts ncurses dvd gtk nls 3dfx svga fbcon esd X alsa ggi + oggvorbis gnome xv oss sdl aalib slp truetype v4l xvid lirc + wxwindows imlib matroska dvb mozilla debug faad xosd altivec" # Change these to correspond with the # unpacked dirnames of the CVS snapshots. -PFFMPEG=ffmpeg-20030622 +PFFMPEG=ffmpeg-20030813 PLIBMPEG2=mpeg2dec-20030612 S=${WORKDIR}/${P} SFFMPEG=${WORKDIR}/${PFFMPEG} SLIBMPEG2=${WORKDIR}/${PLIBMPEG2} -DESCRIPTION="VLC media player - A videoplayer that plays DVD, - VCD, files and networkstreams o.a." - +DESCRIPTION="VLC media player - Video player and streamer" SRC_URI="http://www.videolan.org/pub/${PN}/${PV}/${P}.tar.bz2 http://www.videolan.org/pub/${PN}/${PV}/contrib/mpeg2dec-20030612.tar.bz2 - http://www.videolan.org/pub/${PN}/${PV}/contrib/ffmpeg-20030622.tar.bz2" + http://www.videolan.org/pub/${PN}/${PV}/contrib/ffmpeg-20030813.tar.bz2" HOMEPAGE="http://www.videolan.org/vlc" SLOT="0" LICENSE="GPL-2" -KEYWORDS="~x86 ~ppc" +KEYWORDS="~x86 ~ppc ~sparc ~alpha ~mips ~hppa ~amd64" DEPEND="X? ( virtual/x11 ) - nls? ( sys-devel/gettext ) - qt? ( x11-libs/qt ) + aalib? ( >=media-libs/aalib-1.4_rc4-r2 ) + alsa? ( >=media-libs/alsa-lib-0.9_rc2 ) + dvb? ( media-libs/libdvb + media-tv/linuxtv-dvb ) dvd? ( >=media-libs/libdvdread-0.9.3 - >=media-libs/libdvdcss-1.2.6 + >=media-libs/libdvdcss-1.2.8 >=media-libs/libdvdplay-1.0.1 ) - sdl? ( >=media-libs/libsdl-1.2.5 ) esd? ( >=media-sound/esound-0.2.22 ) + faad? ( >=media-libs/faad2-1.1 ) ggi? ( >=media-libs/libggi-2.0_beta3 ) - gtk? ( =x11-libs/gtk+-1.2* ) - kde? ( kde-base/kdelibs ) - arts? ( kde-base/kdelibs ) gnome? ( >=gnome-base/gnome-libs-1.4.1.2-r1 ) + gtk? ( =x11-libs/gtk+-1.2* ) + imlib? ( >=media-libs/imlib2-1.0.6 ) + lirc? ( app-misc/lirc ) + mad? ( media-libs/libmad + media-libs/libid3tag ) + matroska? ( >=media-libs/libmatroska-0.4.4 ) + mozilla? ( >=net-www/mozilla-1.4 ) ncurses? ( sys-libs/ncurses ) - oggvorbis? ( >=media-libs/libvorbis-1.0 - >=media-libs/libogg-1.0 ) - alsa? ( >=media-libs/alsa-lib-0.9_rc2 ) - aalib? ( >=media-libs/aalib-1.4_rc4-r2 ) - xvid? ( >=media-libs/xvid-0.9.1 ) + nls? ( sys-devel/gettext ) + oggvorbis? ( >=media-libs/libvorbis-1.0 + >=media-libs/libogg-1.0 ) + sdl? ( >=media-libs/libsdl-1.2.5 ) slp? ( >=net-libs/openslp-1.0.10 ) truetype? ( >=media-libs/freetype-2.1.4 ) - lirc? ( app-misc/lirc ) - imlib? ( >=media-libs/imlib2-1.0.6 ) - wxwindows? ( >=x11-libs/wxGTK-2.4.0 ) - >=media-libs/libdvbpsi-0.1.2 - >=media-sound/mad-0.14.2b - >=media-libs/faad2-1.1 - >=media-libs/a52dec-0.7.4" -# other optional libraries -# >=media-libs/flac-1.1.0 -# >=media-libs/libdv-0.98 - -# not in gentoo -# tarkin -# theora -# tremor - -# get kde and arts paths -if [ -n "`use kde`" -o -n "`use arts`" ]; then - inherit kde-functions - set-kdedir 3 - # $KDEDIR is now set to arts/kdelibs location -fi + wxwindows? ( >=x11-libs/wxGTK-2.4.1 ) + xosd? ( >=x11-libs/xosd-2.0 ) + xvid? ( >=media-libs/xvid-0.9.1 ) + 3dfx? ( media-libs/glide-v3 ) + >=media-sound/lame-3.93.1 + >=media-libs/libdvbpsi-0.1.3 + >=media-libs/a52dec-0.7.4 + >=media-libs/flac-1.1.0" + +inherit gcc src_unpack() { unpack ${A} cd ${S} - # if qt3 is installed, patch vlc to work with it instead of qt2 - ( use qt || use kde ) && ( \ - if [ ${QTDIR} = "/usr/qt/3" ] - then - cp configure.ac configure.ac.orig - sed "s:-lkfile::" \ - configure.ac.orig > configure.ac - - cd ${S}/modules/gui/kde - cp interface.h interface.h.orig - sed "s:\(#include \):\1\n#include :" \ - interface.h.orig > interface.h - - cp preferences.cpp preferences.cpp.orig - sed 's:\("vlc preferences", true, false, \)\("Save\):\1(KGuiItem)\2:' \ - preferences.cpp.orig > preferences.cpp - fi - ) + # Change the location of the glide headers + cd ${S} + sed -i -e "s:/usr/include/glide:/usr/include/glide3:" configure + sed -i -e "s:glide2x:glide3:" configure + cd ${S}/modules/video_output + epatch ${FILESDIR}/glide.patch + cd ${S} # patch libmpeg2 cd ${SLIBMPEG2} - cp configure configure.orig - sed -e 's:OPT_CFLAGS=\"$CFLAGS -mcpu=.*\":OPT_CFLAGS=\"$CFLAGS\":g' \ - configure.orig > configure + sed -i -e 's:OPT_CFLAGS=\"$CFLAGS -mcpu=.*\":OPT_CFLAGS=\"$CFLAGS\":g' configure } @@ -130,86 +120,115 @@ src_compile(){ # configure and building of ffmpeg cd ${SFFMPEG} - myconf="" + local myconf use mmx || myconf="--disable-mmx" ./configure ${myconf} \ - --disable-mp3lame \ + --enable-mp3lame \ --disable-vorbis || die "./configure of ffmpeg failed" - cd libavcodec - make || die "make of ffmpeg failed" cd libpostproc make || die "make of libpostproc failed" + cd libavcodec + make || die "make of libavcodec failed" # Configure and build VLC cd ${S} - myconf="" + + # Avoid timestamp skews with autotools + touch configure.ac + touch aclocal.m4 + touch configure + touch config.h.in + touch `find . -name Makefile.in` + + local myconf + myconf="--disable-mga --enable-flac --with-gnu-ld" + + #--enable-pth GNU Pth support (default disabled) + #--enable-st State Threads (default disabled) + #--enable-gprof gprof profiling (default disabled) + #--enable-cprof cprof profiling (default disabled) + #--enable-mostly-builtin most modules will be built-in (default enabled) + #--disable-optimizations disable compiler optimizations (default disabled) + #--enable-testsuite build test modules (default disabled) + #--disable-plugins make all plugins built-in (default disabled) - use X || myconf="${myconf} --disable-x11" + use nls || myconf="${myconf} --disable-nls" + + use debug && myconf="${myconf} --enable-debug" \ + || myconf="${myconf} --enable-release" + + use dvd \ + && myconf="${myconf} --enable-dvdread" \ + || myconf="${myconf} \ + --disable-dvd \ + --disable-dvdread \ + --disable-dvdplay \ + --disable-vcd" - use xv || myconf="${myconf} --disable-xvideo" + use v4l && myconf="${myconf} --enable-v4l" - use ggi && myconf="${myconf} --enable-ggi" + use dvb && myconf="${myconf} --enable-satellite --enable-pvr --enable-dvb" + + use oggvorbis || myconf="${myconf} --disable-vorbis --disable-ogg" + + use matroska || myconf="${myconf} --disable-mkv" - use 3dfx && myconf="${myconf} --enable-glide" + use mad || myconf="${myconf} --disable-mad" - use matrox && myconf="${myconf} --enable-mga" + use faad && myconf="${myconf} --enable-faad" - use svga && myconf="${myconf} --enable-svgalib" + use xvid && myconf="${myconf} --enable-xvid" + + use X || myconf="${myconf} --disable-x11" + + use xv || myconf="${myconf} --disable-xvideo" use sdl || myconf="${myconf} --disable-sdl" - use fbcon || myconf="${myconf} --disable-fb" + use truetype || myconf="${myconf} --disable-freetype" - use aalib && myconf="${myconf} --enable-aa" + use fbcon || myconf="${myconf} --disable-fb" - use dvd \ - && myconf="${myconf} --enable-dvdread" \ - || myconf="${myconf} \ - --disable-dvd \ - --disable-dvdread \ - --disable-dvdplay \ - --disable-vcd" + use svga && myconf="${myconf} --enable-svgalib" - use alsa && myconf="${myconf} --enable-alsa" + use ggi && myconf="${myconf} --enable-ggi" + + use 3dfx && myconf="${myconf} --enable-glide" - use oss || myconf="${myconf} --disable-oss" + use aalib && myconf="${myconf} --enable-aa" + + use oss || myconf="${myconf} --disable-oss" use esd && myconf="${myconf} --enable-esd" use arts && myconf="${myconf} --enable-arts" - use nls || myconf="${myconf} --disable-nls" - - # the current gtk2 and gnome2 are prelimenary frameworks - use gtk \ - && myconf="${myconf} --disable-gtk2" \ - || myconf="${myconf} --disable-gtk --disable-gtk2" + use alsa && myconf="${myconf} --enable-alsa" - use gnome && myconf="${myconf} --enable-gnome --disable-gnome2" + (use imlib && use wxwindows) && myconf="${myconf} --enable-skins" - use kde && myconf="${myconf} --enable-kde" + use gtk || myconf="${myconf} --disable-gtk" - use qt && myconf="${myconf} --enable-qt" + use gnome && myconf="${myconf} --enable-gnome" use ncurses && myconf="${myconf} --enable-ncurses" - use oggvorbis || myconf="${myconf} --disable-vorbis --disable-ogg" - - use lirc && myconf="${myconf} --enable-lirc" + use xosd && myconf="${myconf} --enable-xosd" use slp || myconf="${myconf} --disable-slp" - # xvid is a local USE var, see /usr/portage/profiles/use.local.desc for more details - use xvid && myconf="${myconf} --enable-xvid" + use lirc && myconf="${myconf} --enable-lirc" - # v4l is a local USE var, see /usr/portage/profiles/use.local.desc for more details - use v4l && myconf="${myconf} --enable-v4l" + use joystick && myconf="${myconf} --enable-joystick" - # wxwindows is a local USE var. already enabled by default, but depends on wxGTK - # but if we use wxwindows and imlib, then we can also use skins - (use imlib && use wxwindows) && myconf="${myconf} --enable-skins" + use mozilla && \ + myconf="${myconf} --enable-mozilla \ + MOZILLA_CONFIG=/usr/lib/mozilla/mozilla-config \ + XPIDL=/usr/bin/xpidl" + + use altivec || myconf="${myconf} --disable-altivec" # vlc uses its own ultraoptimizaed CXXFLAGS # and forcing custom ones generally fails building @@ -219,20 +238,23 @@ src_compile(){ export WANT_AUTOMAKE_1_6=1 myconf="${myconf} --enable-ffmpeg --with-ffmpeg-tree=${SFFMPEG} \ + --with-ffmpeg-mp3lame \ --enable-libmpeg2 --with-libmpeg2-tree=${SLIBMPEG2} \ - --enable-dvbpsi \ - --enable-release \ - --enable-mad \ - --enable-faad \ - --enable-a52" + --enable-flac \ + --disable-kde \ + --disable-qt" - ewarn ${myconf} econf ${myconf} || die "configure of VLC failed" + if [ `gcc-major-version` -eq 2 ]; then + sed -i s:"-fomit-frame-pointer":: vlc-config + fi + # parallel make doesn't work with our complicated makefile # this is also the reason as why you shouldn't run autoconf # or automake yourself. (or bootstrap for that matter) - make || die "make of VLC failed" + MAKEOPTS="${MAKEOPTS} -j1" + emake || die "make of VLC failed" } src_install() { @@ -240,6 +262,6 @@ src_install() { einstall || die "make install failed" dodoc ABOUT-NLS AUTHORS COPYING ChangeLog HACKING INSTALL* \ - MAINTAINERS NEWS README* MODULES THANKS + MAINTAINERS NEWS README* THANKS doc/ChangeLog-* }