/[gentoo-x86]/media-video/vlc/vlc-9999.ebuild
Gentoo

Diff of /media-video/vlc/vlc-9999.ebuild

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.73 Revision 1.229
1# Copyright 1999-2010 Gentoo Foundation 1# Copyright 1999-2015 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/media-video/vlc/vlc-9999.ebuild,v 1.73 2010/05/19 07:36:42 aballier Exp $ 3# $Header: /var/cvsroot/gentoo-x86/media-video/vlc/vlc-9999.ebuild,v 1.229 2015/01/26 13:45:35 dlan Exp $
4 4
5EAPI="2" 5EAPI="5"
6 6
7SCM="" 7SCM=""
8if [ "${PV%9999}" != "${PV}" ] ; then 8if [ "${PV%9999}" != "${PV}" ] ; then
9 SCM=git 9 SCM="git-r3"
10 EGIT_BOOTSTRAP="bootstrap" 10
11 EGIT_BRANCH=master
12 EGIT_PROJECT=${P}
13 if [ "${PV%.9999}" != "${PV}" ] ; then 11 if [ "${PV%.9999}" != "${PV}" ] ; then
14 EGIT_REPO_URI="git://git.videolan.org/vlc/vlc-${PV%.9999}.git" 12 EGIT_REPO_URI="git://git.videolan.org/vlc/vlc-${PV%.9999}.git"
15 else 13 else
16 EGIT_REPO_URI="git://git.videolan.org/vlc.git" 14 EGIT_REPO_URI="git://git.videolan.org/vlc.git"
17 fi 15 fi
18fi 16fi
19 17
20inherit eutils multilib autotools toolchain-funcs gnome2 nsplugins qt4 flag-o-matic ${SCM} 18inherit eutils multilib autotools toolchain-funcs flag-o-matic virtualx ${SCM}
21 19
22MY_PV="${PV/_/-}" 20MY_PV="${PV/_/-}"
23MY_PV="${MY_PV/-beta/-test}" 21MY_PV="${MY_PV/-beta/-test}"
24MY_P="${PN}-${MY_PV}" 22MY_P="${PN}-${MY_PV}"
25VLC_SNAPSHOT_TIME="0013"
26 23
27PATCHLEVEL="85"
28DESCRIPTION="VLC media player - Video player and streamer" 24DESCRIPTION="VLC media player - Video player and streamer"
29HOMEPAGE="http://www.videolan.org/vlc/" 25HOMEPAGE="http://www.videolan.org/vlc/"
30if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild 26if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild
31 SRC_URI="" 27 SRC_URI=""
32elif [[ "${P}" == *_alpha* ]]; then # Snapshots taken from nightlies.videolan.org
33 SRC_URI="http://nightlies.videolan.org/build/source/trunk-${PV/*_alpha/}-${VLC_SNAPSHOT_TIME}/${PN}-snapshot-${PV/*_alpha/}.tar.bz2"
34 MY_P="${P/_alpha*/}-git"
35elif [[ "${MY_P}" == "${P}" ]]; then 28elif [[ "${MY_P}" == "${P}" ]]; then
36 SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.bz2" 29 SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz"
37else 30else
38 SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.bz2" 31 SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz"
39fi 32fi
40 33
41SRC_URI="${SRC_URI}
42 mirror://gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2"
43
44LICENSE="GPL-2" 34LICENSE="LGPL-2.1 GPL-2"
45SLOT="0" 35SLOT="0/5-7" # vlc - vlccore
46 36
37if [ "${PV%9999}" = "${PV}" ] ; then
38 KEYWORDS="~amd64 ~arm ~ppc -sparc ~x86 ~x86-fbsd"
39else
47KEYWORDS="" 40 KEYWORDS=""
48IUSE="a52 aac aalib alsa altivec atmo avahi bidi cdda cddb dbus dc1394 41fi
49 debug dirac directfb dts dvb dvd elibc_glibc fbcon fluidsynth +ffmpeg flac fontconfig 42
50 +gcrypt ggi gnome gnutls httpd id3tag ieee1394 jack kate kde libass libcaca 43IUSE="a52 aalib alsa altivec atmo +audioqueue avahi +avcodec
51 libnotify libproxy libtiger libv4l libv4l2 lirc live lua matroska mmx 44 +avformat bidi bluray cdda cddb chromaprint dbus dc1394 debug
52 modplug mp3 mpeg mtp musepack ncurses nsplugin ogg opengl optimisememory oss 45 directfb directx dts dvb +dvbpsi dvd dxva2 elibc_glibc +encode faad fdk
46 fluidsynth +ffmpeg flac fontconfig +gcrypt gme gnome gnutls
47 growl httpd ieee1394 jack jpeg kate kde libass libcaca libnotify
48 libsamplerate libtiger linsys libtar lirc live lua
49 macosx-dialog-provider macosx-eyetv macosx-quartztext macosx-qtkit
50 matroska media-library mmx modplug mp3 mpeg
51 mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus
53 png projectm pulseaudio pvr +qt4 remoteosd rtsp run-as-root samba 52 png +postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba
54 schroedinger sdl sdl-image shine shout skins speex sqlite sse stream 53 schroedinger sdl sdl-image sftp shout sid skins speex sse svg +swscale
55 svg svga taglib theora truetype twolame udev upnp v4l v4l2 vaapi vcdx vlm 54 taglib theora tremor truetype twolame udev upnp vaapi v4l vcdx vdpau
56 vorbis win32codecs wma-fixed x264 +xcb xml xosd xv zvbi" 55 vlm vnc vorbis vpx wma-fixed +X x264 x265 +xcb xml xv zvbi"
57 56
58RDEPEND=" 57RDEPEND="
59 !!<=media-video/vlc-1.0.99999 58 !<media-video/ffmpeg-1.2:0
60 sys-libs/zlib 59 dev-libs/libgpg-error:0
61 >=media-libs/libdvbpsi-0.1.6 60 net-dns/libidn:0
61 >=sys-libs/zlib-1.2.5.1-r2:0[minizip]
62 virtual/libintl:0
62 a52? ( >=media-libs/a52dec-0.7.4-r3 ) 63 a52? ( >=media-libs/a52dec-0.7.4-r3:0 )
63 aalib? ( media-libs/aalib ) 64 aalib? ( media-libs/aalib:0 )
64 aac? ( >=media-libs/faad2-2.6.1 )
65 alsa? ( media-libs/alsa-lib ) 65 alsa? ( >=media-libs/alsa-lib-1.0.24:0 )
66 avahi? ( >=net-dns/avahi-0.6[dbus] ) 66 avahi? ( >=net-dns/avahi-0.6:0[dbus] )
67 avcodec? ( virtual/ffmpeg:0 )
68 avformat? ( virtual/ffmpeg:0 )
67 bidi? ( >=dev-libs/fribidi-0.10.4 ) 69 bidi? ( >=dev-libs/fribidi-0.10.4:0 )
70 bluray? ( >=media-libs/libbluray-0.3:0 )
68 cdda? ( cddb? ( >=media-libs/libcddb-1.2.0 ) ) 71 cddb? ( >=media-libs/libcddb-1.2:0 )
72 chromaprint? ( >=media-libs/chromaprint-0.6:0 )
69 dbus? ( >=sys-apps/dbus-1.0.2 ) 73 dbus? ( >=sys-apps/dbus-1.6:0 )
70 dc1394? ( >=sys-libs/libraw1394-2.0.1 74 dc1394? ( >=sys-libs/libraw1394-2.0.1:0 >=media-libs/libdc1394-2.1:2 )
71 >=media-libs/libdc1394-2.0.2 )
72 dirac? ( >=media-video/dirac-0.10.0 )
73 directfb? ( dev-libs/DirectFB sys-libs/zlib ) 75 directfb? ( dev-libs/DirectFB:0 sys-libs/zlib:0 )
74 dts? ( media-libs/libdca ) 76 dts? ( >=media-libs/libdca-0.0.5:0 )
77 dvbpsi? ( >=media-libs/libdvbpsi-0.2.1:0 )
75 dvd? ( media-libs/libdvdread >=media-libs/libdvdnav-0.1.9 ) 78 dvd? ( >=media-libs/libdvdread-4.9:0 >=media-libs/libdvdnav-4.9.0:0 )
76 elibc_glibc? ( >=sys-libs/glibc-2.8 ) 79 elibc_glibc? ( >=sys-libs/glibc-2.8:2.2 )
77 ffmpeg? ( >=media-video/ffmpeg-0.4.9_p20090201 ) 80 faad? ( >=media-libs/faad2-2.6.1:0 )
78 flac? ( media-libs/libogg 81 fdk? ( media-libs/fdk-aac:0 )
79 >=media-libs/flac-1.1.2 ) 82 flac? ( >=media-libs/libogg-1:0 >=media-libs/flac-1.1.2:0 )
80 fluidsynth? ( media-sound/fluidsynth ) 83 fluidsynth? ( >=media-sound/fluidsynth-1.1.2:0 )
81 fontconfig? ( media-libs/fontconfig ) 84 fontconfig? ( media-libs/fontconfig:1.0 )
82 gcrypt? ( >=dev-libs/libgcrypt-1.2.0 ) 85 gcrypt? ( >=dev-libs/libgcrypt-1.2.0:0= )
83 ggi? ( media-libs/libggi ) 86 gme? ( media-libs/game-music-emu:0 )
84 gnome? ( gnome-base/gnome-vfs ) 87 gnome? ( gnome-base/gnome-vfs:2 dev-libs/glib:2 )
85 gnutls? ( >=net-libs/gnutls-1.7.4 ) 88 gnutls? ( >=net-libs/gnutls-3.0.20:0 )
86 id3tag? ( media-libs/libid3tag sys-libs/zlib )
87 ieee1394? ( >=sys-libs/libraw1394-2.0.1 >=sys-libs/libavc1394-0.5.3 ) 89 ieee1394? ( >=sys-libs/libraw1394-2.0.1:0 >=sys-libs/libavc1394-0.5.3:0 )
88 jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1 ) 90 jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1:0 )
91 jpeg? ( virtual/jpeg:0 )
89 kate? ( >=media-libs/libkate-0.1.1 ) 92 kate? ( >=media-libs/libkate-0.3:0 )
90 libass? ( >=media-libs/libass-0.9.6 media-libs/fontconfig ) 93 libass? ( >=media-libs/libass-0.9.8:0 media-libs/fontconfig:1.0 )
91 libcaca? ( >=media-libs/libcaca-0.99_beta14 ) 94 libcaca? ( >=media-libs/libcaca-0.99_beta14:0 )
92 libnotify? ( x11-libs/libnotify ) 95 libnotify? ( x11-libs/libnotify:0 x11-libs/gtk+:2 x11-libs/gdk-pixbuf:2 dev-libs/glib:2 )
93 libproxy? ( net-libs/libproxy ) 96 libsamplerate? ( media-libs/libsamplerate:0 )
97 libtar? ( >=dev-libs/libtar-1.2.11-r3:0 )
94 libtiger? ( media-libs/libtiger ) 98 libtiger? ( >=media-libs/libtiger-0.3.1:0 )
99 linsys? ( >=media-libs/zvbi-0.2.28:0 )
95 lirc? ( app-misc/lirc ) 100 lirc? ( app-misc/lirc:0 )
96 live? ( >=media-plugins/live-2008.07.06 ) 101 live? ( >=media-plugins/live-2011.12.23:0 )
97 lua? ( >=dev-lang/lua-5.1 ) 102 lua? ( >=dev-lang/lua-5.1:0 )
98 matroska? ( 103 matroska? ( >=dev-libs/libebml-1:0= >=media-libs/libmatroska-1:0= )
99 >=dev-libs/libebml-0.7.6 104 modplug? ( >=media-libs/libmodplug-0.8.4:0 !~media-libs/libmodplug-0.8.8 )
100 >=media-libs/libmatroska-0.8.0 )
101 modplug? ( >=media-libs/libmodplug-0.8 )
102 mp3? ( media-libs/libmad ) 105 mp3? ( media-libs/libmad:0 )
103 mpeg? ( >=media-libs/libmpeg2-0.3.2 ) 106 mpeg? ( >=media-libs/libmpeg2-0.3.2:0 )
104 mtp? ( >=media-libs/libmtp-1.0.0 ) 107 mtp? ( >=media-libs/libmtp-1:0 )
105 musepack? ( >=media-sound/musepack-tools-444 ) 108 musepack? ( >=media-sound/musepack-tools-444:0 )
106 ncurses? ( sys-libs/ncurses ) 109 ncurses? ( sys-libs/ncurses:5[unicode] )
107 nsplugin? ( >=net-libs/xulrunner-1.9.2 x11-libs/libXpm x11-libs/libXt )
108 ogg? ( media-libs/libogg ) 110 ogg? ( >=media-libs/libogg-1:0 )
109 opengl? ( virtual/opengl ) 111 opencv? ( >media-libs/opencv-2:0 )
112 opengl? ( virtual/opengl:0 >=x11-libs/libX11-1.3.99.901:0 )
113 opus? ( >=media-libs/opus-1.0.3:0 )
110 png? ( media-libs/libpng sys-libs/zlib ) 114 png? ( media-libs/libpng:0= sys-libs/zlib:0 )
115 postproc? ( || ( >=media-video/ffmpeg-1.2:0 media-libs/libpostproc:0 ) )
111 projectm? ( media-libs/libprojectm ) 116 projectm? ( media-libs/libprojectm:0 media-fonts/dejavu:0 )
112 pulseaudio? ( >=media-sound/pulseaudio-0.9.11 x11-libs/libX11 ) 117 pulseaudio? ( >=media-sound/pulseaudio-1:0 )
113 qt4? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 x11-libs/libX11 ) 118 qt4? ( >=dev-qt/qtgui-4.6:4 >=dev-qt/qtcore-4.6:4 )
114 remoteosd? ( >=dev-libs/libgcrypt-1.2.0 ) 119 qt5? ( >=dev-qt/qtgui-5.1:5 >=dev-qt/qtcore-5.1:5 >=dev-qt/qtwidgets-5.1:5 >=dev-qt/qtx11extras-5.1:5 )
115 samba? ( || ( >=net-fs/samba-3.4.6[smbclient] 120 rdp? ( >=net-misc/freerdp-1.0.1:0= )
116 <net-fs/samba-3.4 ) ) 121 samba? ( || ( >=net-fs/samba-3.4.6:0[smbclient] >=net-fs/samba-4:0[client] ) )
117 schroedinger? ( >=media-libs/schroedinger-1.0.6 ) 122 schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
118 sdl? ( >=media-libs/libsdl-1.2.8 123 sdl? ( >=media-libs/libsdl-1.2.10:0
119 sdl-image? ( media-libs/sdl-image sys-libs/zlib ) ) 124 sdl-image? ( >=media-libs/sdl-image-1.2.10:0 sys-libs/zlib:0 ) )
125 sftp? ( net-libs/libssh2:0 )
120 shout? ( media-libs/libshout ) 126 shout? ( >=media-libs/libshout-2.1:0 )
121 skins? ( 127 sid? ( media-libs/libsidplay:2 )
122 x11-libs/qt-gui:4 x11-libs/qt-core:4 128 skins? ( x11-libs/libXext:0 x11-libs/libXpm:0 x11-libs/libXinerama:0 )
123 x11-libs/libXext x11-libs/libX11
124 media-libs/freetype media-fonts/dejavu
125 )
126 speex? ( media-libs/speex ) 129 speex? ( media-libs/speex:0 )
127 sqlite? ( >=dev-db/sqlite-3.6.0:3 ) 130 svg? ( >=gnome-base/librsvg-2.9:2 >=x11-libs/cairo-1.13.1:0 )
128 svg? ( >=gnome-base/librsvg-2.9.0 ) 131 swscale? ( virtual/ffmpeg:0 )
129 svga? ( media-libs/svgalib )
130 taglib? ( >=media-libs/taglib-1.5 sys-libs/zlib ) 132 taglib? ( >=media-libs/taglib-1.9:0 sys-libs/zlib:0 )
131 theora? ( >=media-libs/libtheora-1.0_beta3 ) 133 theora? ( >=media-libs/libtheora-1.0_beta3:0 )
134 tremor? ( media-libs/tremor:0 )
132 truetype? ( media-libs/freetype 135 truetype? ( media-libs/freetype:2 virtual/ttf-fonts:0
133 media-fonts/dejavu ) 136 !fontconfig? ( media-fonts/dejavu:0 ) )
134 twolame? ( media-sound/twolame ) 137 twolame? ( media-sound/twolame:0 )
135 udev? ( >=sys-fs/udev-142 ) 138 udev? ( >=virtual/udev-142:0 )
136 upnp? ( net-libs/libupnp ) 139 upnp? ( net-libs/libupnp:0 )
137 v4l2? ( libv4l2? ( media-libs/libv4l ) )
138 v4l? ( libv4l? ( media-libs/libv4l ) ) 140 v4l? ( media-libs/libv4l:0 )
139 vaapi? ( x11-libs/libva >=media-video/ffmpeg-0.5_p22846 ) 141 vaapi? ( x11-libs/libva:0[X,drm] virtual/ffmpeg[vaapi] )
140 vcdx? ( >=dev-libs/libcdio-0.78.2 >=media-video/vcdimager-0.7.22 ) 142 vcdx? ( >=dev-libs/libcdio-0.78.2:0 >=media-video/vcdimager-0.7.22:0 )"
143
144# Temporarily block non-live FFMPEG versions as they break vdpau, 9999 works;
145# thus we'll have to wait for a new release there.
146RDEPEND="${RDEPEND}
147 vdpau? (
148 >=x11-libs/libvdpau-0.6:0
149 || (
150 >=media-video/ffmpeg-1.2:0=
151 >=media-video/libav-10:0=
152 )
153 )
154 vnc? ( >=net-libs/libvncserver-0.9.9:0 )
141 vorbis? ( media-libs/libvorbis ) 155 vorbis? ( >=media-libs/libvorbis-1.1:0 )
142 win32codecs? ( media-libs/win32codecs ) 156 vpx? ( media-libs/libvpx:0 )
157 X? ( x11-libs/libX11:0 )
143 x264? ( >=media-libs/x264-0.0.20090923 ) 158 x264? ( >=media-libs/x264-0.0.20090923:0= )
144 xcb? ( x11-libs/libxcb x11-libs/xcb-util ) 159 x265? ( media-libs/x265:0= )
160 xcb? ( >=x11-libs/libxcb-1.6:0 >=x11-libs/xcb-util-0.3.4:0 >=x11-libs/xcb-util-keysyms-0.3.4:0 )
145 xml? ( dev-libs/libxml2 ) 161 xml? ( >=dev-libs/libxml2-2.5:2 )
146 xosd? ( x11-libs/xosd )
147 zvbi? ( >=media-libs/zvbi-0.2.25 ) 162 zvbi? ( >=media-libs/zvbi-0.2.25:0 )
148 " 163"
149 164
150DEPEND="${RDEPEND} 165DEPEND="${RDEPEND}
151 dvb? ( sys-kernel/linux-headers )
152 kde? ( >=kde-base/kdelibs-4 ) 166 kde? ( >=kde-base/kdelibs-4:4 )
153 v4l? ( sys-kernel/linux-headers )
154 v4l2? ( >=sys-kernel/linux-headers-2.6.25 )
155 xcb? ( x11-proto/xproto ) 167 xcb? ( x11-proto/xproto:0 )
156 dev-util/pkgconfig" 168 app-arch/xz-utils:0
169 dev-lang/yasm:*
170 >=sys-devel/gettext-0.19.2:*
171 virtual/pkgconfig:*
172"
173
174REQUIRED_USE="
175 aalib? ( X )
176 bidi? ( truetype )
177 cddb? ( cdda )
178 dvb? ( dvbpsi )
179 dxva2? ( avcodec )
180 ffmpeg? ( avcodec avformat swscale postproc )
181 fontconfig? ( truetype )
182 gnutls? ( gcrypt )
183 httpd? ( lua )
184 libcaca? ( X )
185 libtar? ( skins )
186 libtiger? ( kate )
187 qt4? ( X !qt5 )
188 qt5? ( X !qt4 )
189 sdl? ( X )
190 skins? ( truetype X ^^ ( qt4 qt5 ) )
191 vaapi? ( avcodec X )
192 vlm? ( encode )
193 xv? ( xcb )
194"
157 195
158S="${WORKDIR}/${MY_P}" 196S="${WORKDIR}/${MY_P}"
159 197
160# Displays a warning if the first use flag is set but the second is not
161vlc_use_needs() {
162 use $1 && use !$2 && ewarn "USE=$1 requires $2, $1 will be disabled."
163}
164
165# Notify the user that some useflag have been forced on
166vlc_use_force() {
167 use $1 && use !$2 && ewarn "USE=$1 requires $2, $2 will be enabled."
168}
169
170# Use when $1 depends strictly on $2
171# if use $1 then enable $2
172vlc_use_enable_force() {
173 use $1 && echo "--enable-$2"
174}
175
176pkg_setup() { 198pkg_setup() {
177 if has_version '<=media-video/vlc-1.0.99999'; then 199 if [[ "${MERGE_TYPE}" != "binary" && "$(tc-getCC)" == *"gcc"* ]] ; then
178 eerror "Please unmerge vlc-1.0.x first before installing ${P}" 200 if [[ $(gcc-major-version) < 4 || ( $(gcc-major-version) == 4 && $(gcc-minor-version) < 5 ) ]] ; then
179 eerror "If you don't do that, some plugins will get linked against" 201 die "You need to have at least >=sys-devel/gcc-4.5 to build and/or have a working vlc, see bug #426754."
180 eerror "the old ${PN} version and will not work."
181 die "Unmerge vlc 1.0.x first"
182 fi 202 fi
203 fi
204}
183 205
184 # Useflags we need to forcefuly enable 206src_unpack() {
185 vlc_use_force remoteosd gcrypt 207 if [ "${PV%9999}" != "${PV}" ] ; then
186 vlc_use_force skins truetype 208 git-r3_src_unpack
187 vlc_use_force skins qt4
188 vlc_use_force vlm stream
189 vlc_use_force vaapi ffmpeg
190
191 # Useflags that will be automagically discarded if deps are not met
192 vlc_use_needs bidi truetype
193 vlc_use_needs cddb cdda
194 vlc_use_needs fontconfig truetype
195 vlc_use_needs libv4l2 v4l2
196 vlc_use_needs libv4l v4l
197 vlc_use_needs libtiger kate
198 vlc_use_needs xv xcb
199
200 if use qt4 || use skins ; then
201 qt4_pkg_setup
202 else 209 else
203 ewarn "You have disabled the qt4 useflag, ${PN} will not have any"
204 ewarn "graphical interface. Maybe that is not what you want..."
205 fi
206}
207
208src_unpack() {
209 unpack ${A} 210 unpack ${A}
210 if [ "${PV%9999}" != "${PV}" ] ; then
211 git_src_unpack
212 fi 211 fi
213} 212}
214 213
215src_prepare() { 214src_prepare() {
215 # Remove unnecessary warnings about unimplemented pragmas on gcc for now.
216 # Need to recheck this with gcc 4.9 and every subsequent minor bump of gcc.
217 #
218 # config.h:792: warning: ignoring #pragma STDC FENV_ACCESS [-Wunknown-pragmas]
219 # config.h:793: warning: ignoring #pragma STDC FP_CONTRACT [-Wunknown-pragmas]
220 #
221 # http://gcc.gnu.org/c99status.html
222 if [[ "$(tc-getCC)" == *"gcc"* ]] ; then
223 sed -i 's/ifndef __FAST_MATH__/if 0/g' configure.ac || die
224 fi
225
226 # Bootstrap when we are on a git checkout.
216 if [ "${PV%9999}" != "${PV}" ] ; then 227 if [[ "${PV%9999}" != "${PV}" ]] ; then
217 git_src_prepare 228 ./bootstrap
218 fi 229 fi
230
219 # Make it build with libtool 1.5 231 # Make it build with libtool 1.5
220 rm -f m4/lt* m4/libtool.m4 232 rm -f m4/lt* m4/libtool.m4 || die
221 233
222 EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches" 234 # We are not in a real git checkout due to the absence of a .git directory.
235 touch src/revision.txt || die
236
237 # Fix build system mistake.
238 epatch "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch
239
240 # Patch up incompatibilities and reconfigure autotools.
241 epatch "${FILESDIR}"/${P}-libva-1.2.1-compat.patch
242
243 # Fix up broken audio when skipping using a fixed reversed bisected commit.
244 epatch "${FILESDIR}"/${PN}-2.1.0-TomWij-bisected-PA-broken-underflow.patch
245
246 # Don't use --started-from-file when not using dbus.
247 if ! use dbus ; then
248 sed -i 's/ --started-from-file//' share/vlc.desktop.in || die
249 fi
250
223 eautoreconf 251 eautoreconf
252
253 # Disable automatic running of tests.
254 find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die
255
256 # If qtchooser is installed, it may break the build, because moc,rcc and uic binaries for wrong qt version may be used.
257 # Setting QT_SELECT environment variable will enforce correct binaries.
258 if use qt4; then
259 export QT_SELECT=qt4
260 elif use qt5; then
261 export QT_SELECT=qt5
262 fi
224} 263}
225 264
226src_configure() { 265src_configure() {
266 # Compatibility fix for Samba 4.
267 use samba && append-cppflags "-I/usr/include/samba-4.0"
227 268
228 # It would fail if -fforce-addr is used due to too few registers... 269 # We need to disable -fstack-check if use >=gcc 4.8.0.
229 use x86 && filter-flags -fforce-addr 270 # See bug #499996
271 use x86 && append-cflags $(test-flags-CC -fno-stack-check)
272
273 # Needs libresid-builder from libsidplay:2 which is in another directory...
274 # FIXME!
275 append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
276
277 if use truetype || use projectm ; then
278 local dejavu="/usr/share/fonts/dejavu/"
279 myconf="--with-default-font=${dejavu}/DejaVuSans.ttf \
280 --with-default-font-family=Sans \
281 --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf
282 --with-default-monospace-font-family=Monospace"
283 fi
284
285 local qt_flag=""
286 if use qt4 || use qt5 ; then
287 qt_flag="--enable-qt"
288 fi
230 289
231 econf \ 290 econf \
291 ${myconf} \
292 --enable-vlc \
293 --docdir=/usr/share/doc/${PF} \
294 --disable-dependency-tracking \
295 --disable-optimizations \
296 --disable-update-check \
297 --enable-fast-install \
298 --enable-screen \
232 $(use_enable a52) \ 299 $(use_enable a52) \
233 $(use_enable aalib aa) \ 300 $(use_enable aalib aa) \
234 $(use_enable aac faad) \
235 $(use_enable alsa) \ 301 $(use_enable alsa) \
236 $(use_enable altivec) \ 302 $(use_enable altivec) \
237 --disable-asademux \
238 $(use_enable atmo) \ 303 $(use_enable atmo) \
304 $(use_enable audioqueue) \
239 $(use_enable avahi bonjour) \ 305 $(use_enable avahi bonjour) \
306 $(use_enable avcodec) \
307 $(use_enable avformat) \
240 $(use_enable bidi fribidi) \ 308 $(use_enable bidi fribidi) \
309 $(use_enable bluray) \
241 $(use_enable cdda vcd) \ 310 $(use_enable cdda vcd) \
242 $(use_enable cddb libcddb) \ 311 $(use_enable cddb libcddb) \
243 $(use_enable dbus) $(use_enable dbus dbus-control) \ 312 $(use_enable chromaprint) \
244 $(use_enable dirac) \ 313 $(use_enable dbus) \
245 $(use_enable directfb) \ 314 $(use_enable directfb) \
315 $(use_enable directx) \
246 $(use_enable dc1394) \ 316 $(use_enable dc1394) \
247 $(use_enable debug) \ 317 $(use_enable debug) \
248 $(use_enable dts dca) \ 318 $(use_enable dts dca) \
249 $(use_enable dvb) \ 319 $(use_enable dvbpsi) \
250 $(use_enable dvd dvdread) $(use_enable dvd dvdnav) \ 320 $(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
321 $(use_enable dxva2) \
322 $(use_enable encode sout) \
251 $(use_enable fbcon fb) \ 323 $(use_enable faad) \
252 $(use_enable ffmpeg avcodec) $(use_enable ffmpeg avformat) $(use_enable ffmpeg swscale) $(use_enable ffmpeg postproc) \ 324 $(use_enable fdk fdkaac) \
253 $(use_enable flac) \ 325 $(use_enable flac) \
254 $(use_enable fluidsynth) \ 326 $(use_enable fluidsynth) \
255 $(use_enable fontconfig) \ 327 $(use_enable fontconfig) \
328 $(use_enable gcrypt libgcrypt) \
256 $(use_enable ggi) \ 329 $(use_enable gme) \
257 $(use_enable gnome gnomevfs) \ 330 $(use_enable gnome gnomevfs) \
258 $(use_enable gnutls) \ 331 $(use_enable gnutls) \
332 $(use_enable growl) \
259 $(use_enable httpd) \ 333 $(use_enable httpd) \
260 $(use_enable id3tag) \
261 $(use_enable ieee1394 dv) \ 334 $(use_enable ieee1394 dv1394) \
262 $(use_enable jack) \ 335 $(use_enable jack) \
336 $(use_enable jpeg) \
263 $(use_enable kate) \ 337 $(use_enable kate) \
264 $(use_with kde kde-solid) \ 338 $(use_with kde kde-solid) \
265 $(use_enable libass) \ 339 $(use_enable libass) \
266 $(use_enable libcaca caca) \ 340 $(use_enable libcaca caca) \
267 $(use_enable gcrypt libgcrypt) \
268 $(use_enable libnotify notify) \ 341 $(use_enable libnotify notify) \
342 $(use_enable libsamplerate samplerate) \
269 $(use_enable libproxy) \ 343 $(use_enable libtar) \
270 --disable-libtar \
271 $(use_enable libtiger tiger) \ 344 $(use_enable libtiger tiger) \
272 $(use_enable libv4l) \ 345 $(use_enable linsys) \
273 $(use_enable libv4l2) \
274 $(use_enable lirc) \ 346 $(use_enable lirc) \
275 $(use_enable live live555) \ 347 $(use_enable live live555) \
276 $(use_enable lua) \ 348 $(use_enable lua) \
349 $(use_enable macosx-dialog-provider) \
350 $(use_enable macosx-eyetv) \
351 $(use_enable macosx-qtkit) \
352 $(use_enable macosx-quartztext) \
277 $(use_enable matroska mkv) \ 353 $(use_enable matroska mkv) \
278 $(use_enable mmx) \ 354 $(use_enable mmx) \
279 $(use_enable modplug mod) \ 355 $(use_enable modplug mod) \
280 $(use_enable mp3 mad) \ 356 $(use_enable mp3 mad) \
281 $(use_enable mpeg libmpeg2) \ 357 $(use_enable mpeg libmpeg2) \
282 $(use_enable mtp) \ 358 $(use_enable mtp) \
283 $(use_enable musepack mpc) \ 359 $(use_enable musepack mpc) \
284 $(use_enable ncurses) \ 360 $(use_enable ncurses) \
285 $(use_enable nsplugin mozilla) --with-mozilla-pkg=libxul \
286 $(use_enable ogg) \ 361 $(use_enable neon) \
362 $(use_enable ogg) $(use_enable ogg mux_ogg) \
363 $(use_enable omxil) \
364 $(use_enable omxil omxil-vout) \
365 $(use_enable opencv) \
287 $(use_enable opengl glx) $(use_enable opengl) \ 366 $(use_enable opengl glx) $(use_enable opengl glspectrum) \
367 $(use_enable opus) \
288 $(use_enable optimisememory optimize-memory) \ 368 $(use_enable optimisememory optimize-memory) \
289 $(use_enable oss) \
290 $(use_enable png) \ 369 $(use_enable png) \
291 --disable-portaudio \ 370 $(use_enable postproc) \
292 $(use_enable projectm) \ 371 $(use_enable projectm) \
293 $(use_enable pulseaudio pulse) \ 372 $(use_enable pulseaudio pulse) \
373 ${qt_flag} \
294 $(use_enable pvr) \ 374 $(use_enable rdp freerdp) \
295 $(use_enable qt4) \
296 $(use_enable remoteosd) \
297 $(use_enable rtsp realrtsp) \ 375 $(use_enable rtsp realrtsp) \
298 $(use_enable run-as-root) \ 376 $(use_enable run-as-root) \
299 $(use_enable samba smb) \ 377 $(use_enable samba smbclient) \
300 $(use_enable schroedinger) \ 378 $(use_enable schroedinger) \
301 $(use_enable sdl) \ 379 $(use_enable sdl) \
302 $(use_enable sdl-image) \ 380 $(use_enable sdl-image) \
303 $(use_enable shine) \ 381 $(use_enable sid) \
382 $(use_enable sftp) \
304 $(use_enable shout) \ 383 $(use_enable shout) \
305 $(use_enable skins skins2) \ 384 $(use_enable skins skins2) \
306 $(use_enable speex) \ 385 $(use_enable speex) \
307 $(use_enable sqlite) \
308 $(use_enable sse) \ 386 $(use_enable sse) \
309 $(use_enable stream sout) \
310 $(use_enable svg) \ 387 $(use_enable svg) \
311 $(use_enable svga svgalib) \ 388 $(use_enable svg svgdec) \
389 $(use_enable swscale) \
312 $(use_enable taglib) \ 390 $(use_enable taglib) \
313 $(use_enable theora) \ 391 $(use_enable theora) \
392 $(use_enable tremor) \
314 $(use_enable truetype freetype) \ 393 $(use_enable truetype freetype) \
315 $(use_enable twolame) \ 394 $(use_enable twolame) \
316 $(use_enable udev) \ 395 $(use_enable udev) \
317 $(use_enable upnp) \ 396 $(use_enable upnp) \
318 $(use_enable v4l) \
319 $(use_enable v4l2) \ 397 $(use_enable v4l v4l2) \
398 $(use_enable vaapi libva) \
320 $(use_enable vcdx) \ 399 $(use_enable vcdx) \
321 $(use_enable vaapi libva) \ 400 $(use_enable vdpau) \
322 $(use_enable vlm) \ 401 $(use_enable vlm) \
402 $(use_enable vnc) \
323 $(use_enable vorbis) \ 403 $(use_enable vorbis) \
324 $(use_enable win32codecs loader) \ 404 $(use_enable vpx) \
325 $(use_enable wma-fixed) \ 405 $(use_enable wma-fixed) \
406 $(use_with X x) \
326 $(use_enable x264) \ 407 $(use_enable x264) \
327 $(use_enable xcb) \ 408 $(use_enable xcb) \
328 $(use_enable xml libxml2) \ 409 $(use_enable xml libxml2) \
329 $(use_enable xosd) \
330 $(use_enable xv xvideo) \ 410 $(use_enable xv xvideo) \
411 $(use_enable x265) \
331 $(use_enable zvbi) $(use_enable !zvbi telx) \ 412 $(use_enable zvbi) $(use_enable !zvbi telx) \
332 --disable-snapshot \ 413 --disable-asdcp \
414 --disable-coverage \
415 --disable-cprof \
416 --disable-crystalhd \
417 --disable-decklink \
418 --disable-gles1 \
419 --disable-gles2 \
333 --disable-growl \ 420 --disable-goom \
334 --disable-optimizations \ 421 --disable-kai \
335 --enable-fast-install \ 422 --disable-kva \
336 $(vlc_use_enable_force vlm sout) \ 423 --disable-maintainer-mode \
337 $(vlc_use_enable_force skins qt4) \ 424 --disable-merge-ffmpeg \
338 $(vlc_use_enable_force skins freetype) \ 425 --disable-mfx \
339 $(vlc_use_enable_force remoteosd libgcrypt) \ 426 --disable-mmal-codec \
340 $(vlc_use_enable_force vaapi avcodec) 427 --disable-mmal-vout \
428 --disable-opensles \
429 --disable-oss \
430 --disable-quicktime \
431 --disable-rpi-omxil \
432 --disable-shine \
433 --disable-sndio \
434 --disable-vda \
435 --disable-vsxu \
436 --disable-wasapi
437
438 # ^ We don't have these disabled libraries in the Portage tree yet.
439
440 # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo.
441 # Other values of _FORTIFY_SOURCE may break the build (bug 523144), so definition should not be removed from config.h.
442 # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the very start of config.h file
443 sed -i '1i#undef _FORTIFY_SOURCE' ${S}/config.h || die
341} 444}
445
446src_test() {
447 Xemake check-TESTS
448}
449
450DOCS="AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt"
342 451
343src_install() { 452src_install() {
344 emake DESTDIR="${D}" install || die "make install failed" 453 default
345 454
346 dodoc AUTHORS HACKING THANKS NEWS README \ 455 # Punt useless libtool's .la files
347 doc/fortunes.txt doc/intf-vcd.txt 456 find "${D}" -name '*.la' -delete
348
349 rm -rf "${D}/usr/share/doc/vlc" \
350 "${D}"/usr/share/vlc/vlc{16x16,32x32,48x48,128x128}.{png,xpm,ico}
351
352 if use nsplugin; then
353 dodir "/usr/$(get_libdir)/${PLUGINS_DIR}"
354 mv "${D}"/usr/$(get_libdir)/mozilla/plugins/* \
355 "${D}/usr/$(get_libdir)/${PLUGINS_DIR}/"
356 fi
357
358 use skins || rm -rf "${D}/usr/share/vlc/skins2"
359
360 for res in 16 32 48; do
361 insinto /usr/share/icons/hicolor/${res}x${res}/apps/
362 newins "${S}"/share/vlc${res}x${res}.png vlc.png
363 done
364} 457}
365 458
366pkg_postinst() { 459pkg_postinst() {
367 gnome2_pkg_postinst
368
369 if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then 460 if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then
370 einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/" 461 einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
371 "/usr/$(get_libdir)/vlc/vlc-cache-gen" "/usr/$(get_libdir)/vlc/plugins/" 462 "/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/"
372 else 463 else
373 ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)" 464 ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
374 ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually" 465 ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
375 ewarn "If you do not do it, vlc will take a long time to load." 466 ewarn "If you do not do it, vlc will take a long time to load."
376 fi 467 fi

Legend:
Removed from v.1.73  
changed lines
  Added in v.1.229

  ViewVC Help
Powered by ViewVC 1.1.20