public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] dev/anarchy:master commit in: media-video/vlc/files/, media-video/vlc/
@ 2012-07-05  1:35 Jory Pratt
  0 siblings, 0 replies; 2+ messages in thread
From: Jory Pratt @ 2012-07-05  1:35 UTC (permalink / raw
  To: gentoo-commits

commit:     8633bcef0640af36da649f06df1c50a2d482948c
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  5 01:35:15 2012 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Thu Jul  5 01:35:15 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=dev/anarchy.git;a=commit;h=8633bcef

Fix possible null reference in vlc-2.0.2

---
 media-video/vlc/Manifest                           |    6 +
 .../vlc/files/fix_possible_null_dereference.patch  |   28 ++
 media-video/vlc/vlc-2.0.0.ebuild                   |  351 ++++++++++++++++++++
 media-video/vlc/vlc-2.0.2.ebuild                   |  351 ++++++++++++++++++++
 4 files changed, 736 insertions(+), 0 deletions(-)

diff --git a/media-video/vlc/Manifest b/media-video/vlc/Manifest
new file mode 100644
index 0000000..de0f4e3
--- /dev/null
+++ b/media-video/vlc/Manifest
@@ -0,0 +1,6 @@
+AUX fix_possible_null_dereference.patch 949 RMD160 04794eb03de94a831261f57382a26eb2b0576a7a SHA1 63f36cb4a07c414f612d4969b4072cfecba1b599 SHA256 559dc04cebd2ad9452ab8bceee55756576db6ebf5ecee8c938f64c02d977b95d
+DIST vlc-2.0.0.tar.xz 17144876 RMD160 6c4d1401a7cc5b1c66dde7eb896347a728961d2b SHA1 c28c4c8128110fd02a7bdf55c9dad5cc20eb91b8 SHA256 455fc04b5f7ce3d7294ed71a9dd172ff4eb97875cfc30b554ef4ce55ec6f5106
+DIST vlc-2.0.2.tar.xz 18023928 RMD160 a8fbc91dfc01c8b90c7d693b6cbe4fa16207e822 SHA1 da597e781f855dff4cd278c137c0faf43b504c26 SHA256 111a83b19d09989c1743ed708897586e20f6cd37f27cc2fcac09c75a7221c62f
+DIST vlc-patches-101.tar.bz2 3011 RMD160 785ba728c04f025ca8377061e82c6c865d50a736 SHA1 e9be6b192bb3d69e4bd2387a9854543e0f8b3132 SHA256 abd3af99b9c2fa76b67a2e9c72e2d81982f1bca93cb5e3b2f33d29de9e395dae
+EBUILD vlc-2.0.0.ebuild 10974 RMD160 cbdf266e47e8b90ae82aa0cbf215da2978ec614d SHA1 d9f84475381a0bb3d9d364878cb1a84b5ffa3b85 SHA256 84f2c56ad76d1587488aef7e243278d8a9f04fa620a1b822553bac4ea9e5cc6c
+EBUILD vlc-2.0.2.ebuild 11091 RMD160 e6356224e7eff19aedea307c473e7263c0125f78 SHA1 5aedd1a718bf89138eb1891d1f16bd5b1535b625 SHA256 1063261256d007f0c5dc135a9c185fb3723f6ac8869f012e1b0be9ce4c863881

diff --git a/media-video/vlc/files/fix_possible_null_dereference.patch b/media-video/vlc/files/fix_possible_null_dereference.patch
new file mode 100644
index 0000000..0c614ca
--- /dev/null
+++ b/media-video/vlc/files/fix_possible_null_dereference.patch
@@ -0,0 +1,28 @@
+commit 8dcf122757baafc6d84821772c0fecc3e72f71af
+Author: Laurent Aimar <fenrir@videolan.org>
+Date:   Fri Jun 1 22:27:36 2012 +0200
+
+    Fixed potential NULL dereference when using video filter when transcoding.
+    
+    It closes #4409.
+
+diff --git a/modules/stream_out/transcode/video.c b/modules/stream_out/transcode/video.c
+index 97f88ea..3ab053e 100644
+--- a/modules/stream_out/transcode/video.c
++++ b/modules/stream_out/transcode/video.c
+@@ -656,10 +656,14 @@ int transcode_video_process( sout_stream_t *p_stream, sout_stream_id_t *id,
+         /* Run filter chain */
+         if( id->p_f_chain )
+             p_pic = filter_chain_VideoFilter( id->p_f_chain, p_pic );
++        if( !p_pic )
++            continue;
+ 
+         /* Run user specified filter chain */
+         if( id->p_uf_chain )
+             p_pic = filter_chain_VideoFilter( id->p_uf_chain, p_pic );
++        if( !p_pic )
++            continue;
+ 
+         /*
+          * Encoding
+

diff --git a/media-video/vlc/vlc-2.0.0.ebuild b/media-video/vlc/vlc-2.0.0.ebuild
new file mode 100644
index 0000000..4984df3
--- /dev/null
+++ b/media-video/vlc/vlc-2.0.0.ebuild
@@ -0,0 +1,351 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/vlc/Attic/vlc-2.0.0.ebuild,v 1.7 2012/05/15 13:32:13 aballier dead $
+
+EAPI="4"
+WANT_AUTOMAKE="1.11"
+
+SCM=""
+if [ "${PV%9999}" != "${PV}" ] ; then
+	SCM=git-2
+	EGIT_BOOTSTRAP="bootstrap"
+	if [ "${PV%.9999}" != "${PV}" ] ; then
+		EGIT_REPO_URI="git://git.videolan.org/vlc/vlc-${PV%.9999}.git"
+	else
+		EGIT_REPO_URI="git://git.videolan.org/vlc.git"
+	fi
+fi
+
+inherit eutils multilib autotools toolchain-funcs flag-o-matic ${SCM}
+
+MY_PV="${PV/_/-}"
+MY_PV="${MY_PV/-beta/-test}"
+MY_P="${PN}-${MY_PV}"
+
+PATCHLEVEL="101"
+DESCRIPTION="VLC media player - Video player and streamer"
+HOMEPAGE="http://www.videolan.org/vlc/"
+if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild
+	SRC_URI=""
+elif [[ "${MY_P}" == "${P}" ]]; then
+	SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz"
+else
+	SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz"
+fi
+
+SRC_URI="${SRC_URI}
+	mirror://gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2"
+
+LICENSE="LGPL-2.1 GPL-2"
+SLOT="0"
+
+if [ "${PV%9999}" = "${PV}" ] ; then
+	KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+else
+	KEYWORDS=""
+fi
+IUSE="a52 aac aalib alsa altivec atmo +audioqueue avahi +avcodec
+	+avformat bidi bluray cdda cddb dbus dc1394 debug dirac direct2d
+	directfb directx dshow dts dvb +dvbpsi dvd dxva2 elibc_glibc egl +encode
+	fbosd fluidsynth +ffmpeg flac fontconfig +gcrypt gme gnome gnutls
+	growl httpd ieee1394 ios-vout jack kate kde libass libcaca libnotify
+	libproxy libsamplerate libtiger linsys libtar lirc live lua +macosx
+	+macosx-audio +macosx-dialog-provider +macosx-eyetv +macosx-quartztext
+	+macosx-qtkit +macosx-vout matroska media-library mmx modplug mp3 mpeg
+	mtp musepack ncurses neon ogg omxil opengl optimisememory oss png portaudio
+	+postproc projectm pulseaudio pvr +qt4 rtsp run-as-root samba schroedinger
+	sdl sdl-image shine shout sid skins speex sqlite sse svg +swscale switcher
+	taglib theora truetype twolame udev upnp vaapi v4l vcdx vlm vorbis waveout
+	win32codecs wingdi wma-fixed +X x264 +xcb xml xosd xv zvbi"
+
+RDEPEND="
+		>=sys-libs/zlib-1.2.5.1-r2[minizip]
+		a52? ( >=media-libs/a52dec-0.7.4-r3 )
+		aalib? ( media-libs/aalib )
+		aac? ( >=media-libs/faad2-2.6.1 )
+		alsa? ( >=media-libs/alsa-lib-1.0.23 )
+		avahi? ( >=net-dns/avahi-0.6[dbus] )
+		avcodec? ( virtual/ffmpeg )
+		avformat? ( virtual/ffmpeg )
+		bidi? ( >=dev-libs/fribidi-0.10.4 )
+		bluray? ( >=media-libs/libbluray-0.2.1 )
+		cddb? ( >=media-libs/libcddb-1.2.0 )
+		dbus? ( >=sys-apps/dbus-1.0.2 )
+		dc1394? ( >=sys-libs/libraw1394-2.0.1 >=media-libs/libdc1394-2.0.2 )
+		dirac? ( >=media-video/dirac-0.10.0 )
+		directfb? ( dev-libs/DirectFB sys-libs/zlib )
+		dts? ( media-libs/libdca )
+		dvbpsi? ( >=media-libs/libdvbpsi-0.1.6 )
+		dvd? (	media-libs/libdvdread >=media-libs/libdvdnav-0.1.9 )
+		egl? ( virtual/opengl )
+		elibc_glibc? ( >=sys-libs/glibc-2.8 )
+		flac? ( media-libs/libogg >=media-libs/flac-1.1.2 )
+		fluidsynth? ( media-sound/fluidsynth )
+		fontconfig? ( media-libs/fontconfig )
+		gcrypt? ( >=dev-libs/libgcrypt-1.2.0 )
+		gme? ( media-libs/game-music-emu )
+		gnome? ( gnome-base/gnome-vfs )
+		gnutls? ( >=net-libs/gnutls-2.0.0 )
+		ieee1394? ( >=sys-libs/libraw1394-2.0.1 >=sys-libs/libavc1394-0.5.3 )
+		ios-vout? ( virtual/opengl )
+		jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1 )
+		kate? ( >=media-libs/libkate-0.1.1 )
+		libass? ( >=media-libs/libass-0.9.8 media-libs/fontconfig )
+		libcaca? ( >=media-libs/libcaca-0.99_beta14 )
+		libnotify? ( x11-libs/libnotify x11-libs/gtk+:2 )
+		libproxy? ( net-libs/libproxy )
+		libsamplerate? ( media-libs/libsamplerate )
+		libtar? ( >=dev-libs/libtar-1.2.11-r3 )
+		libtiger? ( media-libs/libtiger )
+		linsys? ( >=media-libs/zvbi-0.2.28 )
+		lirc? ( app-misc/lirc )
+		live? ( >=media-plugins/live-2011.12.23 )
+		lua? ( >=dev-lang/lua-5.1 )
+		macosx-vout? ( virtual/opengl )
+		matroska? (	>=dev-libs/libebml-1.0.0 >=media-libs/libmatroska-1.0.0 )
+		modplug? ( >=media-libs/libmodplug-0.8.8.1 )
+		mp3? ( media-libs/libmad )
+		mpeg? ( >=media-libs/libmpeg2-0.3.2 )
+		mtp? ( >=media-libs/libmtp-1.0.0 )
+		musepack? ( >=media-sound/musepack-tools-444 )
+		ncurses? ( sys-libs/ncurses[unicode] )
+		ogg? ( media-libs/libogg )
+		opengl? ( virtual/opengl >=x11-libs/libX11-1.3.99.901 )
+		png? ( media-libs/libpng sys-libs/zlib )
+		portaudio? ( >=media-libs/portaudio-19_pre )
+		postproc? ( virtual/ffmpeg )
+		projectm? ( media-libs/libprojectm )
+		pulseaudio? ( >=media-sound/pulseaudio-0.9.22 )
+		qt4? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 )
+		samba? ( >=net-fs/samba-3.4.6[smbclient] )
+		schroedinger? ( >=media-libs/schroedinger-1.0.10 )
+		sdl? ( >=media-libs/libsdl-1.2.8
+			sdl-image? ( media-libs/sdl-image sys-libs/zlib	) )
+		shout? ( media-libs/libshout )
+		sid? ( media-libs/libsidplay:2 )
+		skins? ( x11-libs/libXext x11-libs/libXpm )
+		speex? ( media-libs/speex )
+		sqlite? ( >=dev-db/sqlite-3.6.0:3 )
+		svg? ( >=gnome-base/librsvg-2.9.0 )
+		swscale? ( virtual/ffmpeg )
+		taglib? ( >=media-libs/taglib-1.5 sys-libs/zlib )
+		theora? ( >=media-libs/libtheora-1.0_beta3 )
+		truetype? ( media-libs/freetype virtual/ttf-fonts
+			!fontconfig? ( media-fonts/dejavu ) )
+		twolame? ( media-sound/twolame )
+		udev? ( >=sys-fs/udev-142 )
+		upnp? ( net-libs/libupnp )
+		v4l? ( media-libs/libv4l )
+		vaapi? ( x11-libs/libva )
+		vcdx? ( >=dev-libs/libcdio-0.78.2 >=media-video/vcdimager-0.7.22 )
+		vorbis? ( media-libs/libvorbis )
+		win32codecs? ( media-libs/win32codecs )
+		X? ( x11-libs/libX11 )
+		x264? ( >=media-libs/x264-0.0.20090923 )
+		xcb? ( >=x11-libs/libxcb-1.6 >=x11-libs/xcb-util-0.3.4 )
+		xml? ( dev-libs/libxml2 )
+		xosd? ( x11-libs/xosd )
+		zvbi? ( >=media-libs/zvbi-0.2.25 )
+		"
+
+DEPEND="${RDEPEND}
+	alsa? ( >=media-sound/alsa-headers-1.0.23 )
+	fbosd? ( sys-kernel/linux-headers )
+	kde? ( >=kde-base/kdelibs-4 )
+	xcb? ( x11-proto/xproto )
+	app-arch/xz-utils
+	virtual/pkgconfig"
+
+REQUIRED_USE="
+	aalib? ( X )
+	bidi? ( truetype )
+	cddb? ( cdda )
+	dvb? ( dvbpsi )
+	dxva2? ( avcodec )
+	egl? ( X )
+	ffmpeg? ( avcodec avformat postproc swscale )
+	fontconfig? ( truetype )
+	gnutls? ( gcrypt )
+	libtar? ( skins )
+	libtiger? ( kate )
+	media-library? ( sqlite )
+	qt4? ( X )
+	sdl? ( X )
+	skins? ( truetype qt4 X )
+	switcher? ( avcodec )
+	vaapi? ( avcodec X )
+	vlm? ( encode )
+	xosd? ( X )
+	xv? ( xcb )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+	unpack ${A}
+	if [ "${PV%9999}" != "${PV}" ] ; then
+		git-2_src_unpack
+	fi
+}
+
+src_prepare() {
+	# Make it build with libtool 1.5
+	rm -f m4/lt* m4/libtool.m4
+
+	EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
+	eautoreconf
+}
+
+src_configure() {
+	# needs libresid-builder from libsidplay:2 which is in another directory...
+	# FIXME!
+	use sid && append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
+
+	econf \
+		--docdir=/usr/share/doc/${PF} \
+		$(use_enable a52) \
+		$(use_enable aalib aa) \
+		$(use_enable aac faad) \
+		$(use_enable alsa) \
+		$(use_enable altivec) \
+		$(use_enable atmo) \
+		$(use_enable audioqueue) \
+		$(use_enable avahi bonjour) \
+		$(use_enable avcodec) \
+		$(use_enable avformat) \
+		$(use_enable bidi fribidi) \
+		$(use_enable bluray) \
+		$(use_enable cdda vcd) \
+		$(use_enable cddb libcddb) \
+		$(use_enable dbus) $(use_enable dbus dbus-control) \
+		$(use_enable dirac) \
+		$(use_enable direct2d) \
+		$(use_enable directfb) \
+		$(use_enable directx) \
+		$(use_enable dc1394) \
+		$(use_enable debug) \
+		$(use_enable dshow) \
+		$(use_enable dts dca) \
+		$(use_enable dvbpsi) \
+		$(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
+		$(use_enable dxva2) \
+		$(use_enable egl) \
+		$(use_enable encode sout) \
+		$(use_enable fbosd) \
+		$(use_enable flac) \
+		$(use_enable fluidsynth) \
+		$(use_enable fontconfig) \
+		$(use_enable gcrypt libgcrypt) \
+		$(use_enable gme) \
+		$(use_enable gnome gnomevfs) \
+		$(use_enable gnutls) \
+		$(use_enable growl) \
+		$(use_enable httpd) \
+		$(use_enable ieee1394 dv) \
+		$(use_enable ios-vout) \
+		$(use_enable jack) \
+		$(use_enable kate) \
+		$(use_with kde kde-solid) \
+		$(use_enable libass) \
+		$(use_enable libcaca caca) \
+		$(use_enable libnotify notify) \
+		$(use_enable libproxy) \
+		$(use_enable libsamplerate samplerate) \
+		$(use_enable libtar) \
+		$(use_enable libtiger tiger) \
+		$(use_enable linsys) \
+		$(use_enable lirc) \
+		$(use_enable live live555) \
+		$(use_enable lua) \
+		$(use_enable macosx-audio) \
+		$(use_enable macosx-dialog-provider) \
+		$(use_enable macosx-eyetv) \
+		$(use_enable macosx-qtkit) \
+		$(use_enable macosx-quartztext) \
+		$(use_enable macosx-vout) \
+		$(use_enable matroska mkv) \
+		$(use_enable media-library) \
+		$(use_enable mmx) \
+		$(use_enable modplug mod) \
+		$(use_enable mp3 mad) \
+		$(use_enable mpeg libmpeg2) \
+		$(use_enable mtp) \
+		$(use_enable musepack mpc) \
+		$(use_enable ncurses) \
+		$(use_enable neon) \
+		$(use_enable ogg) \
+		$(use_enable omxil) \
+		$(use_enable opengl glx) \
+		$(use_enable optimisememory optimize-memory) \
+		$(use_enable oss) \
+		$(use_enable png) \
+		$(use_enable portaudio) \
+		$(use_enable postproc) \
+		$(use_enable projectm) \
+		$(use_enable pulseaudio pulse) \
+		$(use_enable pvr) \
+		$(use_enable qt4) \
+		$(use_enable rtsp realrtsp) \
+		$(use_enable run-as-root) \
+		$(use_enable samba smb) \
+		$(use_enable schroedinger) \
+		$(use_enable sdl) \
+		$(use_enable sdl-image) \
+		$(use_enable shine) \
+		$(use_enable sid) \
+		$(use_enable shout) \
+		$(use_enable skins skins2) \
+		$(use_enable speex) \
+		$(use_enable sqlite) \
+		$(use_enable sse) \
+		$(use_enable svg) \
+		$(use_enable switcher) \
+		$(use_enable swscale) \
+		$(use_enable taglib) \
+		$(use_enable theora) \
+		$(use_enable truetype freetype) \
+		$(use_enable twolame) \
+		$(use_enable udev) \
+		$(use_enable upnp) \
+		$(use_enable v4l v4l2) \
+		$(use_enable vaapi libva) \
+		$(use_enable vcdx) \
+		$(use_enable vlm) \
+		$(use_enable vorbis) \
+		$(use_enable waveout) \
+		$(use_enable win32codecs loader) \
+		$(use_enable wingdi) \
+		$(use_enable wma-fixed) \
+		$(use_with X x) \
+		$(use_enable x264) \
+		$(use_enable xcb) \
+		$(use_enable xml libxml2) \
+		$(use_enable xosd) \
+		$(use_enable xv xvideo) \
+		$(use_enable zvbi) $(use_enable !zvbi telx) \
+		--disable-optimizations \
+		--without-tuning \
+		--enable-fast-install
+}
+
+src_install() {
+	emake DESTDIR="${D}" install || die "make install failed"
+
+	dodoc AUTHORS THANKS NEWS README \
+		doc/fortunes.txt doc/intf-vcd.txt
+
+	# Punt useless libtool's .la files
+	find "${D}" -name '*.la' -delete
+}
+
+pkg_postinst() {
+	if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then
+		einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
+		"/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/"
+	else
+		ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
+		ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
+		ewarn "If you do not do it, vlc will take a long time to load."
+	fi
+}
+

diff --git a/media-video/vlc/vlc-2.0.2.ebuild b/media-video/vlc/vlc-2.0.2.ebuild
new file mode 100644
index 0000000..8e5994c
--- /dev/null
+++ b/media-video/vlc/vlc-2.0.2.ebuild
@@ -0,0 +1,351 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/vlc/vlc-2.0.2.ebuild,v 1.2 2012/06/30 20:12:06 aballier Exp $
+
+EAPI="4"
+
+SCM=""
+if [ "${PV%9999}" != "${PV}" ] ; then
+	SCM=git-2
+	EGIT_BOOTSTRAP="bootstrap"
+	if [ "${PV%.9999}" != "${PV}" ] ; then
+		EGIT_REPO_URI="git://git.videolan.org/vlc/vlc-${PV%.9999}.git"
+	else
+		EGIT_REPO_URI="git://git.videolan.org/vlc.git"
+	fi
+fi
+
+inherit eutils multilib autotools toolchain-funcs flag-o-matic ${SCM}
+
+MY_PV="${PV/_/-}"
+MY_PV="${MY_PV/-beta/-test}"
+MY_P="${PN}-${MY_PV}"
+
+PATCHLEVEL="101"
+DESCRIPTION="VLC media player - Video player and streamer"
+HOMEPAGE="http://www.videolan.org/vlc/"
+if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild
+	SRC_URI=""
+elif [[ "${MY_P}" == "${P}" ]]; then
+	SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz"
+else
+	SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz"
+fi
+
+SRC_URI="${SRC_URI}
+	mirror://gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2"
+
+LICENSE="LGPL-2.1 GPL-2"
+SLOT="0"
+
+if [ "${PV%9999}" = "${PV}" ] ; then
+	KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+else
+	KEYWORDS=""
+fi
+IUSE="a52 aac aalib alsa altivec atmo +audioqueue avahi +avcodec
+	+avformat bidi bluray cdda cddb dbus dc1394 debug dirac direct2d
+	directfb directx dshow dts dvb +dvbpsi dvd dxva2 elibc_glibc egl +encode
+	fbosd fluidsynth +ffmpeg flac fontconfig +gcrypt gme gnome gnutls
+	growl httpd ieee1394 ios-vout jack kate kde libass libcaca libnotify
+	libproxy libsamplerate libtiger linsys libtar lirc live lua +macosx
+	+macosx-audio +macosx-dialog-provider +macosx-eyetv +macosx-quartztext
+	+macosx-qtkit +macosx-vout matroska media-library mmx modplug mp3 mpeg
+	mtp musepack ncurses neon ogg omxil opengl optimisememory oss png portaudio
+	+postproc projectm pulseaudio pvr +qt4 rtsp run-as-root samba schroedinger
+	sdl sdl-image shine shout sid skins speex sqlite sse svg +swscale switcher
+	taglib theora truetype twolame udev upnp vaapi v4l vcdx vlm vorbis waveout
+	win32codecs wingdi wma-fixed +X x264 +xcb xml xosd xv zvbi"
+
+RDEPEND="
+		>=sys-libs/zlib-1.2.5.1-r2[minizip]
+		a52? ( >=media-libs/a52dec-0.7.4-r3 )
+		aalib? ( media-libs/aalib )
+		aac? ( >=media-libs/faad2-2.6.1 )
+		alsa? ( >=media-libs/alsa-lib-1.0.23 )
+		avahi? ( >=net-dns/avahi-0.6[dbus] )
+		avcodec? ( virtual/ffmpeg )
+		avformat? ( virtual/ffmpeg )
+		bidi? ( >=dev-libs/fribidi-0.10.4 )
+		bluray? ( >=media-libs/libbluray-0.2.1 )
+		cddb? ( >=media-libs/libcddb-1.2.0 )
+		dbus? ( >=sys-apps/dbus-1.0.2 )
+		dc1394? ( >=sys-libs/libraw1394-2.0.1 >=media-libs/libdc1394-2.0.2 )
+		dirac? ( >=media-video/dirac-0.10.0 )
+		directfb? ( dev-libs/DirectFB sys-libs/zlib )
+		dts? ( media-libs/libdca )
+		dvbpsi? ( >=media-libs/libdvbpsi-0.2.1 )
+		dvd? (	media-libs/libdvdread >=media-libs/libdvdnav-0.1.9 )
+		egl? ( virtual/opengl )
+		elibc_glibc? ( >=sys-libs/glibc-2.8 )
+		flac? ( media-libs/libogg >=media-libs/flac-1.1.2 )
+		fluidsynth? ( media-sound/fluidsynth )
+		fontconfig? ( media-libs/fontconfig )
+		gcrypt? ( >=dev-libs/libgcrypt-1.2.0 )
+		gme? ( media-libs/game-music-emu )
+		gnome? ( gnome-base/gnome-vfs )
+		gnutls? ( >=net-libs/gnutls-2.0.0 )
+		ieee1394? ( >=sys-libs/libraw1394-2.0.1 >=sys-libs/libavc1394-0.5.3 )
+		ios-vout? ( virtual/opengl )
+		jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1 )
+		kate? ( >=media-libs/libkate-0.1.1 )
+		libass? ( >=media-libs/libass-0.9.8 media-libs/fontconfig )
+		libcaca? ( >=media-libs/libcaca-0.99_beta14 )
+		libnotify? ( x11-libs/libnotify x11-libs/gtk+:2 )
+		libproxy? ( net-libs/libproxy )
+		libsamplerate? ( media-libs/libsamplerate )
+		libtar? ( >=dev-libs/libtar-1.2.11-r3 )
+		libtiger? ( media-libs/libtiger )
+		linsys? ( >=media-libs/zvbi-0.2.28 )
+		lirc? ( app-misc/lirc )
+		live? ( >=media-plugins/live-2011.12.23 )
+		lua? ( >=dev-lang/lua-5.1 )
+		macosx-vout? ( virtual/opengl )
+		matroska? (	>=dev-libs/libebml-1.0.0 >=media-libs/libmatroska-1.0.0 )
+		modplug? ( >=media-libs/libmodplug-0.8.8.1 )
+		mp3? ( media-libs/libmad )
+		mpeg? ( >=media-libs/libmpeg2-0.3.2 )
+		mtp? ( >=media-libs/libmtp-1.0.0 )
+		musepack? ( >=media-sound/musepack-tools-444 )
+		ncurses? ( sys-libs/ncurses[unicode] )
+		ogg? ( media-libs/libogg )
+		opengl? ( virtual/opengl >=x11-libs/libX11-1.3.99.901 )
+		png? ( media-libs/libpng sys-libs/zlib )
+		portaudio? ( >=media-libs/portaudio-19_pre )
+		postproc? ( || ( media-video/ffmpeg media-libs/libpostproc ) )
+		projectm? ( media-libs/libprojectm )
+		pulseaudio? ( >=media-sound/pulseaudio-0.9.22 )
+		qt4? ( x11-libs/qt-gui:4 x11-libs/qt-core:4 )
+		samba? ( >=net-fs/samba-3.4.6[smbclient] )
+		schroedinger? ( >=media-libs/schroedinger-1.0.10 )
+		sdl? ( >=media-libs/libsdl-1.2.8
+			sdl-image? ( media-libs/sdl-image sys-libs/zlib	) )
+		shout? ( media-libs/libshout )
+		sid? ( media-libs/libsidplay:2 )
+		skins? ( x11-libs/libXext x11-libs/libXpm x11-libs/libXinerama )
+		speex? ( media-libs/speex )
+		sqlite? ( >=dev-db/sqlite-3.6.0:3 )
+		svg? ( >=gnome-base/librsvg-2.9.0 )
+		swscale? ( virtual/ffmpeg )
+		taglib? ( >=media-libs/taglib-1.5 sys-libs/zlib )
+		theora? ( >=media-libs/libtheora-1.0_beta3 )
+		truetype? ( media-libs/freetype virtual/ttf-fonts
+			!fontconfig? ( media-fonts/dejavu ) )
+		twolame? ( media-sound/twolame )
+		udev? ( >=sys-fs/udev-142 )
+		upnp? ( net-libs/libupnp )
+		v4l? ( media-libs/libv4l )
+		vaapi? ( x11-libs/libva )
+		vcdx? ( >=dev-libs/libcdio-0.78.2 >=media-video/vcdimager-0.7.22 )
+		vorbis? ( media-libs/libvorbis )
+		win32codecs? ( media-libs/win32codecs )
+		X? ( x11-libs/libX11 )
+		x264? ( >=media-libs/x264-0.0.20090923 )
+		xcb? ( >=x11-libs/libxcb-1.6 >=x11-libs/xcb-util-0.3.4 )
+		xml? ( dev-libs/libxml2 )
+		xosd? ( x11-libs/xosd )
+		zvbi? ( >=media-libs/zvbi-0.2.25 )
+		"
+
+DEPEND="${RDEPEND}
+	alsa? ( >=media-sound/alsa-headers-1.0.23 )
+	fbosd? ( sys-kernel/linux-headers )
+	kde? ( >=kde-base/kdelibs-4 )
+	xcb? ( x11-proto/xproto )
+	app-arch/xz-utils
+	virtual/pkgconfig"
+
+REQUIRED_USE="
+	aalib? ( X )
+	bidi? ( truetype )
+	cddb? ( cdda )
+	dvb? ( dvbpsi )
+	dxva2? ( avcodec )
+	egl? ( X )
+	ffmpeg? ( avcodec avformat swscale postproc )
+	fontconfig? ( truetype )
+	gnutls? ( gcrypt )
+	libcaca? ( X )
+	libtar? ( skins )
+	libtiger? ( kate )
+	media-library? ( sqlite )
+	qt4? ( X )
+	sdl? ( X )
+	skins? ( truetype qt4 X )
+	switcher? ( avcodec )
+	vaapi? ( avcodec X )
+	vlm? ( encode )
+	xosd? ( X )
+	xv? ( xcb )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+	unpack ${A}
+	if [ "${PV%9999}" != "${PV}" ] ; then
+		git-2_src_unpack
+	fi
+}
+
+src_prepare() {
+	# Make it build with libtool 1.5
+	rm -f m4/lt* m4/libtool.m4
+
+	EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
+	epatch "${FILESDIR}/fix_possible_null_dereference.patch"
+	eautoreconf
+}
+
+src_configure() {
+	# needs libresid-builder from libsidplay:2 which is in another directory...
+	# FIXME!
+	use sid && append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
+
+	econf \
+		--docdir=/usr/share/doc/${PF} \
+		$(use_enable a52) \
+		$(use_enable aalib aa) \
+		$(use_enable aac faad) \
+		$(use_enable alsa) \
+		$(use_enable altivec) \
+		$(use_enable atmo) \
+		$(use_enable audioqueue) \
+		$(use_enable avahi bonjour) \
+		$(use_enable avcodec) \
+		$(use_enable avformat) \
+		$(use_enable bidi fribidi) \
+		$(use_enable bluray) \
+		$(use_enable cdda vcd) \
+		$(use_enable cddb libcddb) \
+		$(use_enable dbus) $(use_enable dbus dbus-control) \
+		$(use_enable dirac) \
+		$(use_enable direct2d) \
+		$(use_enable directfb) \
+		$(use_enable directx) \
+		$(use_enable dc1394) \
+		$(use_enable debug) \
+		$(use_enable dshow) \
+		$(use_enable dts dca) \
+		$(use_enable dvbpsi) \
+		$(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
+		$(use_enable dxva2) \
+		$(use_enable egl) \
+		$(use_enable encode sout) \
+		$(use_enable fbosd) \
+		$(use_enable flac) \
+		$(use_enable fluidsynth) \
+		$(use_enable fontconfig) \
+		$(use_enable gcrypt libgcrypt) \
+		$(use_enable gme) \
+		$(use_enable gnome gnomevfs) \
+		$(use_enable gnutls) \
+		$(use_enable growl) \
+		$(use_enable httpd) \
+		$(use_enable ieee1394 dv) \
+		$(use_enable ios-vout) \
+		$(use_enable jack) \
+		$(use_enable kate) \
+		$(use_with kde kde-solid) \
+		$(use_enable libass) \
+		$(use_enable libcaca caca) \
+		$(use_enable libnotify notify) \
+		$(use_enable libproxy) \
+		$(use_enable libsamplerate samplerate) \
+		$(use_enable libtar) \
+		$(use_enable libtiger tiger) \
+		$(use_enable linsys) \
+		$(use_enable lirc) \
+		$(use_enable live live555) \
+		$(use_enable lua) \
+		$(use_enable macosx-audio) \
+		$(use_enable macosx-dialog-provider) \
+		$(use_enable macosx-eyetv) \
+		$(use_enable macosx-qtkit) \
+		$(use_enable macosx-quartztext) \
+		$(use_enable macosx-vout) \
+		$(use_enable matroska mkv) \
+		$(use_enable media-library) \
+		$(use_enable mmx) \
+		$(use_enable modplug mod) \
+		$(use_enable mp3 mad) \
+		$(use_enable mpeg libmpeg2) \
+		$(use_enable mtp) \
+		$(use_enable musepack mpc) \
+		$(use_enable ncurses) \
+		$(use_enable neon) \
+		$(use_enable ogg) \
+		$(use_enable omxil) \
+		$(use_enable opengl glx) \
+		$(use_enable optimisememory optimize-memory) \
+		$(use_enable oss) \
+		$(use_enable png) \
+		$(use_enable portaudio) \
+		$(use_enable postproc) \
+		$(use_enable projectm) \
+		$(use_enable pulseaudio pulse) \
+		$(use_enable pvr) \
+		$(use_enable qt4) \
+		$(use_enable rtsp realrtsp) \
+		$(use_enable run-as-root) \
+		$(use_enable samba smb) \
+		$(use_enable schroedinger) \
+		$(use_enable sdl) \
+		$(use_enable sdl-image) \
+		$(use_enable shine) \
+		$(use_enable sid) \
+		$(use_enable shout) \
+		$(use_enable skins skins2) \
+		$(use_enable speex) \
+		$(use_enable sqlite) \
+		$(use_enable sse) \
+		$(use_enable svg) \
+		$(use_enable switcher) \
+		$(use_enable swscale) \
+		$(use_enable taglib) \
+		$(use_enable theora) \
+		$(use_enable truetype freetype) \
+		$(use_enable twolame) \
+		$(use_enable udev) \
+		$(use_enable upnp) \
+		$(use_enable v4l v4l2) \
+		$(use_enable vaapi libva) \
+		$(use_enable vcdx) \
+		$(use_enable vlm) \
+		$(use_enable vorbis) \
+		$(use_enable waveout) \
+		$(use_enable win32codecs loader) \
+		$(use_enable wingdi) \
+		$(use_enable wma-fixed) \
+		$(use_with X x) \
+		$(use_enable x264) \
+		$(use_enable xcb) \
+		$(use_enable xml libxml2) \
+		$(use_enable xosd) \
+		$(use_enable xv xvideo) \
+		$(use_enable zvbi) $(use_enable !zvbi telx) \
+		--disable-optimizations \
+		--without-tuning \
+		--enable-fast-install
+}
+
+src_install() {
+	emake DESTDIR="${D}" install || die "make install failed"
+
+	dodoc AUTHORS THANKS NEWS README \
+		doc/fortunes.txt doc/intf-vcd.txt
+
+	# Punt useless libtool's .la files
+	find "${D}" -name '*.la' -delete
+}
+
+pkg_postinst() {
+	if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then
+		einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
+		"/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/"
+	else
+		ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
+		ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
+		ewarn "If you do not do it, vlc will take a long time to load."
+	fi
+}



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] dev/anarchy:master commit in: media-video/vlc/files/, media-video/vlc/
@ 2016-10-11  3:16 Jory Pratt
  0 siblings, 0 replies; 2+ messages in thread
From: Jory Pratt @ 2016-10-11  3:16 UTC (permalink / raw
  To: gentoo-commits

commit:     e1246b8e8b5a7b8025ee424b3a2a5c3f4117567a
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 11 03:16:07 2016 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Tue Oct 11 03:16:07 2016 +0000
URL:        https://gitweb.gentoo.org/dev/anarchy.git/commit/?id=e1246b8e

media-video/vlc : Fix 2.2.4 to build wih gcc-6.2

 media-video/vlc/Manifest                           |  11 +
 media-video/vlc/files/qt4-select.patch             |  51 ++
 ...2.1.0-TomWij-bisected-PA-broken-underflow.patch |  23 +
 .../vlc/files/vlc-2.1.0-fix-libtremor-libs.patch   |  11 +
 .../vlc/files/vlc-2.1.0-libva-1.2.1-compat.patch   |  12 +
 media-video/vlc/files/vlc-2.2.2-qt5widgets.patch   |  13 +
 media-video/vlc/files/vlc-2.2.4-ffmpeg3.patch      | 160 +++++++
 media-video/vlc/files/vlc-2.2.4-gcc6-fixup.patch   | 293 ++++++++++++
 media-video/vlc/files/vlc-2.2.4-relax_ffmpeg.patch |  45 ++
 .../vlc/files/vlc-9999-libva-1.2.1-compat.patch    |  12 +
 media-video/vlc/vlc-2.2.4.ebuild                   | 512 +++++++++++++++++++++
 11 files changed, 1143 insertions(+)

diff --git a/media-video/vlc/Manifest b/media-video/vlc/Manifest
new file mode 100644
index 0000000..c401e20
--- /dev/null
+++ b/media-video/vlc/Manifest
@@ -0,0 +1,11 @@
+AUX qt4-select.patch 2171 SHA256 30c76f06553d0a341224009c3130e54624a266cd77a034340e39d2b922c60d69 SHA512 0c3fab4457f1b8c9f1c2c9b690c1a137e1544a09a710e24ba9c8e228f0490ec27030846974610b8976bfca77e03054c5254719836cabc695a527f095659a651d WHIRLPOOL a4d8a2689a0e034f26f0e2d52275004f21a20f0a553050ce7483b1ab5d42faa8f465ff4dfed08a5defc25917d8f225922d14eaea5adb53d3556b6e41c5704a37
+AUX vlc-2.1.0-TomWij-bisected-PA-broken-underflow.patch 700 SHA256 91752f1ed1fbe8a2fcc78336a0725e1450946bab8085a4efce85a076dff40b87 SHA512 c3aa82ba9252f87d8f87c0bbfed7e0cdbd93c4f454e0ca6a9d73346e2efa294864af7eea1ea76b504354fb1baf5378cf626b35dcbfba3d888dbf0168ddfbed13 WHIRLPOOL 87c5017c8cdc1ad8cb313b6342f89af7ca7e90b20f151dd226ad8863407dae4cefb5934040154020778d3eb5dc78c5be43ae1e8e33fd0e823628c69c8cac7e61
+AUX vlc-2.1.0-fix-libtremor-libs.patch 453 SHA256 5b2d4272b0258b30d1e34717ad83ebe2bcea78a5247798a74c0b86ace6d39463 SHA512 6c25995a518aeb1d501fa217d897962e1e81f66a4f28b6bb164dde3afe7f91772bb608f946d802857fa9a272cab1f88d3990d582be89ab8e37b1a8b6681798ae WHIRLPOOL 39d9d1670e244169087ecc81654b1d6407c9e5f0f0da1bb1b15d7c89a7dab232b9a174c2a5e9ed2586a57a370f3cd9d2c9434381387a1fbc70b7f7bd8de2ef85
+AUX vlc-2.1.0-libva-1.2.1-compat.patch 272 SHA256 fe9a4fdfe5447c869ec881f9e30236486a885b9f64b4c80004db7964b2b931c1 SHA512 74cba8136b2abb7a78b5ee8c8b5a9b3509a4a16ff9d4f136a3a7e2d6ff634ce20e34b8d140810ac63dd6cd3115d71cbb87a6e213fb172485494e55ade1b5230a WHIRLPOOL 1d2e747f4097c7903b798d7dfd17e11de41c01e903afda0b2c766ef5d7977da32362c52e5bc41c93a1f801a93c857c08d2cee3840f76a55afe0b2a768250073e
+AUX vlc-2.2.2-qt5widgets.patch 603 SHA256 b23c3bf441ac9bef25ca053a8bccec2652c9a251889d38624877ffc5562218ca SHA512 b5d8946406e84bce240376015ed994d6265d07fe9b777fd05c0f722142e99502bd129ec4acfe2cafa7a6dd98c9612913fa8644109489fa48dab6dc5522601050 WHIRLPOOL a00159f261e617f8e0e5c6b51b94428ba1080eb6107f13ce5b9506ae460437f9246ab79795a3443289cba2db36c7a6c2d5f585f6f888ca4881625856ce0ffaf3
+AUX vlc-2.2.4-ffmpeg3.patch 6377 SHA256 61c21d875d3ea5e0475194cfb199e2a95f20a5357bb2a0001d86dd1f4a5d3652 SHA512 efede86f7d4c8a475f14c88405d4f9810784b93b8dbee8a21ca2f59b4a62ba008996fbd72ad77300b76a6faa328720a7b99afdd753480f2a17dc25204e52d2ee WHIRLPOOL 49286dda70c1e510c8727f77bfec43786d0ae2b477f528032bf45e1fb9f34f9943e4a213c26f3c06e370c1e4856c16acb5d933cc91590d145a985fde81acbd09
+AUX vlc-2.2.4-gcc6-fixup.patch 8886 SHA256 480394a17f57c9bb1df1bc8f0ba3bf04afc7f09e8b8ac8b7099bc1f5dd55c57c SHA512 f0eb1fc5203c80ef5d1c243284cba62757051c288ca3013532c89f1a9febaa853827b564cf69edf31e8db48f7faab9f2ef71a9f0d110ac091d490676294a9c86 WHIRLPOOL d7246e1618b4e568c3befdb72eef078430d131f6ccc59f71993be3b0a1e120d93af674a2fbe41393d9ba4a73f8e9bfe8d2be8e65f0d9b7c86de9cc8d7d9246fa
+AUX vlc-2.2.4-relax_ffmpeg.patch 1686 SHA256 3b76abff4553f581457252b6b98d3c3a537c91cd7b981f2f5a6772eb6597fd18 SHA512 a15862d6ac60575c0c338faff6052e3c28c4bd75f86f37ff8fbe36a64bc1a82689c56b2dc19f05109fc0913b85aab7ba28a94bfdd5fdd0e3c87cb7e6e58d1caa WHIRLPOOL aefdcf024869e7b074f3bc64ca12d187967edcbe31f03bb72a9d9dbb82be8453ec4866fae655a77ce4f500f8cae80e583de6e33b012c1f5ff1cc549a298a0596
+AUX vlc-9999-libva-1.2.1-compat.patch 291 SHA256 54eb34b32afe6876fa40abac2cb97097030f1d372bb81b63ef88231a17e5f237 SHA512 47b9d3f7a5e7c90045acac3b3253feb927da26646b6a457655669c1ab18f6a0e027160285695dc06642e6117ed1fcd87db90ae1f409e8fee737a2a41e80e1968 WHIRLPOOL df5cfdb4ba36ccd92e79de7b913b14c5416aca0834025dc51f8178db6c88f5eecb332ae7096800607d6f7526a56c7fb94e2f593bc0c0e19f643428bcd3eb5868
+DIST vlc-2.2.4.tar.xz 22199316 SHA256 1632e91d2a0087e0ef4c3fb4c95c3c2890f7715a9d1d43ffd46329f428cf53be SHA512 2fc1fe957ba7903f2e0c9640884ed850cb10a60132d80658dee8da0b5abaf4a6ccdf95fa2b8c0a4a827be5e7e40341318bce44662a5248e04442f4779010f85c WHIRLPOOL 0d59d9c2a623f72a6c708f9face6f29b7c7e71a9b38faf3717b8f223641c6f599d1407a4976874226dbbd9e553ec528249dc4f301c5682bfb49f5745468934b2
+EBUILD vlc-2.2.4.ebuild 15720 SHA256 f3a7086654c6fdec8e22b5c5ae1fd911d15d83f79a51fd6c4686398e17d87c55 SHA512 a0a2b29f8b34003a1e956df380146f209eb49ce5368b150605239964520f86d5b70a42b87031b5e27fd490e7982e6c1aa02c3cfd43a290783439af9a78f853ee WHIRLPOOL 74a90f06208bbdc726a0e78405e77f316b78a4a8b705c06cafe883fcd7b0ef6267e32e254b016310a52f01097b0044482f2087bc3545013da1e7bcc18504fbf0

diff --git a/media-video/vlc/files/qt4-select.patch b/media-video/vlc/files/qt4-select.patch
new file mode 100644
index 0000000..fb1526a
--- /dev/null
+++ b/media-video/vlc/files/qt4-select.patch
@@ -0,0 +1,51 @@
+https://gist.github.com/karolherbst/fb9e3d8f6ba05f1f5d54
+For use until upstream ever accepts this patch or fixes it themsleves
+--- a/configure.ac
++++ b/configure.ac
+@@ -3709,7 +3709,8 @@
+   ])
+ ])
+ AS_IF([test "${enable_qt}" != "no"], [
+-  PKG_CHECK_MODULES([QT], [Qt5Core >= 5.1.0 Qt5Widgets Qt5Gui], [
++  AS_IF([test "${enable_qt}" != "4"], [
++    PKG_CHECK_MODULES([QT], [Qt5Core >= 5.1.0 Qt5Widgets Qt5Gui], [
+       PKG_CHECK_MODULES([QTX11], [Qt5X11Extras], [
+           VLC_ADD_LIBS([qt4],[${QTX11_LIBS}])
+           VLC_ADD_CXXFLAGS([qt4],[${QTX11_CFLAGS} -DQT5_HAS_X11])
+@@ -3721,20 +3722,23 @@
+       AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+       AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+       AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
++      enable_qt="5"
+-    ], [
+-      PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
+-        AS_IF([test -n "${enable_qt}"],[
+-          AC_MSG_ERROR([${QT_PKG_ERRORS}.])
+-        ],[
+-          AC_MSG_WARN([${QT_PKG_ERRORS}.])
+-        ])
+-        enable_qt="no"
++    ])
++  ])
++  AS_IF([test "${enable_qt}" != "5"], [
++    PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
++      AS_IF([test -n "${enable_qt}"],[
++        AC_MSG_ERROR([${QT_PKG_ERRORS}.])
++      ],[
++        AC_MSG_WARN([${QT_PKG_ERRORS}.])
+       ])
+-      QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)"
+-      AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+-      AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+-      AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
++      enable_qt="no"
+     ])
++    QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)"
++    AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
++    AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
++    AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
++  ])
+ ])
+ AS_IF([test "${enable_qt}" != "no"], [
+   VLC_ADD_PLUGIN([qt4])
+

diff --git a/media-video/vlc/files/vlc-2.1.0-TomWij-bisected-PA-broken-underflow.patch b/media-video/vlc/files/vlc-2.1.0-TomWij-bisected-PA-broken-underflow.patch
new file mode 100644
index 0000000..3163410
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.1.0-TomWij-bisected-PA-broken-underflow.patch
@@ -0,0 +1,23 @@
+index 2debbcd..72e7fcf 100644
+--- a/modules/audio_output/pulse.c
++++ b/modules/audio_output/pulse.c
+@@ -472,8 +472,17 @@ static void stream_underflow_cb(pa_stream *s, void *userdata)
+ {
++    uint32_t rate = pa_stream_get_sample_spec(s)->rate;
+     audio_output_t *aout = userdata;
+ 
+-    msg_Dbg(aout, "underflow");
+-    (void) s;
++    msg_Warn(aout, "underflow");
++    stream_stop(s, aout);
++
++    aout_sys_t *sys = aout->sys;
++    sys->first_pts = VLC_TS_INVALID;
++
++    pa_operation *op = pa_stream_update_sample_rate(s, rate, NULL, NULL);
++    if (unlikely(op == NULL))
++        return;
++    pa_operation_unref(op);
+ }
+ 
+ static int stream_wait(pa_stream *stream, pa_threaded_mainloop *mainloop)

diff --git a/media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch b/media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch
new file mode 100644
index 0000000..8a58969
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch
@@ -0,0 +1,11 @@
+--- a/modules/codec/Makefile.am
++++ b/modules/codec/Makefile.am
+@@ -215,7 +215,7 @@
+ libtremor_plugin_la_SOURCES = codec/vorbis.c
+ libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor
+ libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
+-libtremor_plugin_la_LIBADD = -lvorbisdec -logg
++libtremor_plugin_la_LIBADD = $(VORBIS_LIBS) $(OGG_LIBS)
+ EXTRA_LTLIBRARIES += libtremor_plugin.la
+ codec_LTLIBRARIES += $(LTLIBtremor)
+ 

diff --git a/media-video/vlc/files/vlc-2.1.0-libva-1.2.1-compat.patch b/media-video/vlc/files/vlc-2.1.0-libva-1.2.1-compat.patch
new file mode 100644
index 0000000..db73a4e
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.1.0-libva-1.2.1-compat.patch
@@ -0,0 +1,12 @@
+--- a/modules/codec/avcodec/vaapi.c
++++ b/modules/codec/avcodec/vaapi.c
+@@ -36,6 +36,9 @@
+ #include <libavcodec/vaapi.h>
+ #include <X11/Xlib.h>
+ #include <va/va_x11.h>
++#if VA_MINOR_VERSION >= 34
++# include <va/va_compat.h>
++#endif
+ 
+ #include "avcodec.h"
+ #include "va.h"
\ No newline at end of file

diff --git a/media-video/vlc/files/vlc-2.2.2-qt5widgets.patch b/media-video/vlc/files/vlc-2.2.2-qt5widgets.patch
new file mode 100644
index 0000000..a024d00
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.2.2-qt5widgets.patch
@@ -0,0 +1,13 @@
+--- vlc-2.2.2/configure.ac
++++ vlc-2.2.2/configure.ac
+@@ -3754,10 +3754,6 @@
+           AC_MSG_WARN([Not building Qt Interface with X11 helpers.])
+       ])
+ 
+-      PKG_CHECK_EXISTS([Qt5Core >= 5.5.0 Qt5Core < 5.6.0], [
+-        AC_MSG_ERROR(["You cannot build VLC with Qt-5.5.0. You need to backport I78ef29975181ee22429c9bd4b11d96d9e68b7a9c"])
+-      ])
+-
+       QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix Qt5Core)"
+       QT_HOST_PATH="$(eval $PKG_CONFIG --variable=host_bins Qt5Core)"
+       AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])

diff --git a/media-video/vlc/files/vlc-2.2.4-ffmpeg3.patch b/media-video/vlc/files/vlc-2.2.4-ffmpeg3.patch
new file mode 100644
index 0000000..3bc5954
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.2.4-ffmpeg3.patch
@@ -0,0 +1,160 @@
+Index: vlc-2.2.4/configure.ac
+===================================================================
+--- vlc-2.2.4.orig/configure.ac
++++ vlc-2.2.4/configure.ac
+@@ -2323,8 +2323,8 @@ AC_ARG_ENABLE(avcodec,
+ [  --enable-avcodec        libavcodec codec (default enabled)])
+ AS_IF([test "${enable_avcodec}" != "no"], [
+   PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [
+-    PKG_CHECK_EXISTS([libavutil < 55],, [
+-      AC_MSG_ERROR([libavutil versions 55 and later are not supported.])
++    PKG_CHECK_EXISTS([libavutil < 56],, [
++      AC_MSG_ERROR([libavutil versions 56 and later are not supported.])
+     ])
+     VLC_SAVE_FLAGS
+     CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
+Index: vlc-2.2.4/modules/codec/avcodec/audio.c
+===================================================================
+--- vlc-2.2.4.orig/modules/codec/avcodec/audio.c
++++ vlc-2.2.4/modules/codec/avcodec/audio.c
+@@ -39,8 +39,6 @@
+ #include <libavcodec/avcodec.h>
+ #include <libavutil/mem.h>
+ 
+-#include <libavutil/audioconvert.h>
+-
+ #include "avcodec.h"
+ 
+ /*****************************************************************************
+Index: vlc-2.2.4/modules/codec/avcodec/encoder.c
+===================================================================
+--- vlc-2.2.4.orig/modules/codec/avcodec/encoder.c
++++ vlc-2.2.4/modules/codec/avcodec/encoder.c
+@@ -41,7 +41,6 @@
+ #include <vlc_cpu.h>
+ 
+ #include <libavcodec/avcodec.h>
+-#include <libavutil/audioconvert.h>
+ 
+ #include "avcodec.h"
+ #include "avcommon.h"
+@@ -311,7 +310,7 @@ int OpenEncoder( vlc_object_t *p_this )
+     else if( !GetFfmpegCodec( p_enc->fmt_out.i_codec, &i_cat, &i_codec_id,
+                              &psz_namecodec ) )
+     {
+-        if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == PIX_FMT_NONE )
++        if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == AV_PIX_FMT_NONE )
+             return VLC_EGENERIC; /* handed chroma output */
+ 
+         i_cat      = VIDEO_ES;
+@@ -555,7 +554,7 @@ int OpenEncoder( vlc_object_t *p_this )
+ 
+         if( p_codec->pix_fmts )
+         {
+-            const enum PixelFormat *p = p_codec->pix_fmts;
++            const enum AVPixelFormat *p = p_codec->pix_fmts;
+             for( ; *p != -1; p++ )
+             {
+                 if( *p == p_context->pix_fmt ) break;
+@@ -1017,7 +1016,7 @@ errmsg:
+         }
+     }
+ 
+-    p_sys->frame = avcodec_alloc_frame();
++    p_sys->frame = av_frame_alloc();
+     if( !p_sys->frame )
+     {
+         goto error;
+@@ -1088,7 +1087,7 @@ static block_t *EncodeVideo( encoder_t *
+     AVFrame *frame = NULL;
+     if( likely(p_pict) ) {
+         frame = p_sys->frame;
+-        avcodec_get_frame_defaults( frame );
++        av_frame_unref( frame );
+         for( i_plane = 0; i_plane < p_pict->i_planes; i_plane++ )
+         {
+             p_sys->frame->data[i_plane] = p_pict->p[i_plane].p_pixels;
+@@ -1329,7 +1328,7 @@ static block_t *handle_delay_buffer( enc
+     //How much we need to copy from new packet
+     const int leftover = leftover_samples * p_sys->p_context->channels * p_sys->i_sample_bytes;
+ 
+-    avcodec_get_frame_defaults( p_sys->frame );
++    av_frame_unref( p_sys->frame );
+     p_sys->frame->format     = p_sys->p_context->sample_fmt;
+     p_sys->frame->nb_samples = leftover_samples + p_sys->i_samples_delay;
+ 
+@@ -1451,7 +1450,7 @@ static block_t *EncodeAudio( encoder_t *
+     while( ( p_aout_buf->i_nb_samples >= p_sys->i_frame_size ) ||
+            ( p_sys->b_variable && p_aout_buf->i_nb_samples ) )
+     {
+-        avcodec_get_frame_defaults( p_sys->frame );
++        av_frame_unref( p_sys->frame );
+         if( p_sys->b_variable )
+             p_sys->frame->nb_samples = p_aout_buf->i_nb_samples;
+         else
+Index: vlc-2.2.4/modules/codec/avcodec/vaapi.c
+===================================================================
+--- vlc-2.2.4.orig/modules/codec/avcodec/vaapi.c
++++ vlc-2.2.4/modules/codec/avcodec/vaapi.c
+@@ -598,7 +598,7 @@ static int Create( vlc_va_t *p_va, AVCod
+         return err;
+ 
+     /* Only VLD supported */
+-    p_va->pix_fmt = PIX_FMT_VAAPI_VLD;
++    p_va->pix_fmt = AV_PIX_FMT_VAAPI_VLD;
+     p_va->setup = Setup;
+     p_va->get = Get;
+     p_va->release = Release;
+Index: vlc-2.2.4/modules/codec/avcodec/video.c
+===================================================================
+--- vlc-2.2.4.orig/modules/codec/avcodec/video.c
++++ vlc-2.2.4/modules/codec/avcodec/video.c
+@@ -108,8 +108,8 @@ static int lavc_GetFrame(struct AVCodecC
+ static int  ffmpeg_GetFrameBuf    ( struct AVCodecContext *, AVFrame * );
+ static void ffmpeg_ReleaseFrameBuf( struct AVCodecContext *, AVFrame * );
+ #endif
+-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *,
+-                                          const enum PixelFormat * );
++static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *,
++                                          const enum AVPixelFormat * );
+ 
+ static uint32_t ffmpeg_CodecTag( vlc_fourcc_t fcc )
+ {
+@@ -234,7 +234,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo
+     p_sys->p_codec = p_codec;
+     p_sys->i_codec_id = i_codec_id;
+     p_sys->psz_namecodec = psz_namecodec;
+-    p_sys->p_ff_pic = avcodec_alloc_frame();
++    p_sys->p_ff_pic = av_frame_alloc();
+     p_sys->b_delayed_open = true;
+     p_sys->p_va = NULL;
+     vlc_sem_init( &p_sys->sem_mt, 0 );
+@@ -446,7 +446,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo
+     if( ffmpeg_OpenCodec( p_dec ) < 0 )
+     {
+         msg_Err( p_dec, "cannot open codec (%s)", p_sys->psz_namecodec );
+-        avcodec_free_frame( &p_sys->p_ff_pic );
++        av_frame_free( &p_sys->p_ff_pic );
+         vlc_sem_destroy( &p_sys->sem_mt );
+         free( p_sys );
+         return VLC_EGENERIC;
+@@ -826,7 +826,7 @@ void EndVideoDec( decoder_t *p_dec )
+     wait_mt( p_sys );
+ 
+     if( p_sys->p_ff_pic )
+-        avcodec_free_frame( &p_sys->p_ff_pic );
++        av_frame_free( &p_sys->p_ff_pic );
+ 
+     if( p_sys->p_va )
+         vlc_va_Delete( p_sys->p_va );
+@@ -1313,8 +1313,8 @@ static void ffmpeg_ReleaseFrameBuf( stru
+ }
+ #endif
+ 
+-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *p_context,
+-                                          const enum PixelFormat *pi_fmt )
++static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *p_context,
++                                          const enum AVPixelFormat *pi_fmt )
+ {
+     decoder_t *p_dec = p_context->opaque;
+     decoder_sys_t *p_sys = p_dec->p_sys;

diff --git a/media-video/vlc/files/vlc-2.2.4-gcc6-fixup.patch b/media-video/vlc/files/vlc-2.2.4-gcc6-fixup.patch
new file mode 100644
index 0000000..73be43c
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.2.4-gcc6-fixup.patch
@@ -0,0 +1,293 @@
+From 8b0a359be21c8b66c7f7f5d34b85df3cf6689035 Mon Sep 17 00:00:00 2001
+From: Francois Cartegnie <fcvlcdev@free.fr>
+Date: Sun, 24 Jul 2016 12:59:20 +0200
+Subject: [PATCH] Fix build using old GCC intrinsics
+
+As the 2.2 headers are still using vlc_atomics (picture)
+we cannot have a way to avoid collisions with early
+or late <atomic> inclusion when using GCC >= 4.7
+
+Conditionals in vlc_atomic won't work.
+
+Happens in ProjectM and Qt5.
+
+Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+---
+ modules/gui/qt4/actions_manager.cpp                |  2 ++
+ modules/gui/qt4/adapters/seekpoints.cpp            |  4 +--
+ modules/gui/qt4/adapters/seekpoints.hpp            |  4 +--
+ modules/gui/qt4/components/controller.cpp          |  2 ++
+ .../gui/qt4/components/playlist/playlist_model.hpp |  4 +--
+ modules/gui/qt4/components/playlist/views.cpp      |  6 ++++
+ modules/gui/qt4/dialogs/messages.cpp               |  2 ++
+ modules/gui/qt4/dialogs/vlm.cpp                    |  4 ---
+ modules/gui/qt4/dialogs/vlm.hpp                    |  4 ++-
+ modules/gui/qt4/input_manager.cpp                  |  2 ++
+ modules/gui/qt4/input_manager.hpp                  |  3 +-
+ modules/gui/qt4/menus.cpp                          |  2 ++
+ modules/gui/qt4/qt4.hpp                            | 32 ++++++++++++++++++----
+ modules/gui/qt4/util/pictureflow.cpp               |  2 ++
+ modules/visualization/projectm.cpp                 |  4 +++
+ 15 files changed, 56 insertions(+), 21 deletions(-)
+
+diff --git a/modules/gui/qt4/actions_manager.cpp b/modules/gui/qt4/actions_manager.cpp
+index eff40d9..b7ca967 100644
+--- a/modules/gui/qt4/actions_manager.cpp
++++ b/modules/gui/qt4/actions_manager.cpp
+@@ -25,6 +25,8 @@
+ # include "config.h"
+ #endif
+ 
++#include "qt4.hpp"
++
+ #include <vlc_vout.h>
+ #include <vlc_keys.h>
+ 
+diff --git a/modules/gui/qt4/adapters/seekpoints.cpp b/modules/gui/qt4/adapters/seekpoints.cpp
+index fbf2957..a3564bb 100644
+--- a/modules/gui/qt4/adapters/seekpoints.cpp
++++ b/modules/gui/qt4/adapters/seekpoints.cpp
+@@ -19,14 +19,12 @@
+  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+  *****************************************************************************/
+ 
++#include "seekpoints.hpp"
+ 
+ #include "recents.hpp"
+ #include "dialogs_provider.hpp"
+ #include "menus.hpp"
+ 
+-#include "seekpoints.hpp"
+-
+-#include "qt4.hpp"
+ #include "input_manager.hpp"
+ 
+ SeekPoints::SeekPoints( QObject *parent, intf_thread_t *p_intf_ ) :
+diff --git a/modules/gui/qt4/adapters/seekpoints.hpp b/modules/gui/qt4/adapters/seekpoints.hpp
+index 0083989..bbb9214 100644
+--- a/modules/gui/qt4/adapters/seekpoints.hpp
++++ b/modules/gui/qt4/adapters/seekpoints.hpp
+@@ -22,9 +22,7 @@
+ #ifndef SEEKPOINTS_HPP
+ #define SEEKPOINTS_HPP
+ 
+-#ifdef HAVE_CONFIG_H
+-#include "config.h"
+-#endif
++#include "qt4.hpp"
+ 
+ #include <vlc_common.h>
+ #include <vlc_interface.h>
+diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp
+index d93e0db..c43d929 100644
+--- a/modules/gui/qt4/components/controller.cpp
++++ b/modules/gui/qt4/components/controller.cpp
+@@ -26,6 +26,8 @@
+ # include "config.h"
+ #endif
+ 
++#include "qt4.hpp"
++
+ #include <vlc_vout.h>                       /* vout_thread_t for FSC */
+ 
+ /* Widgets */
+diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp
+index f9d1d0c..1f71ac9 100644
+--- a/modules/gui/qt4/components/playlist/playlist_model.hpp
++++ b/modules/gui/qt4/components/playlist/playlist_model.hpp
+@@ -25,9 +25,7 @@
+ #ifndef _PLAYLIST_MODEL_H_
+ #define _PLAYLIST_MODEL_H_
+ 
+-#ifdef HAVE_CONFIG_H
+-# include "config.h"
+-#endif
++#include "qt4.hpp"
+ 
+ #include <vlc_input.h>
+ #include <vlc_playlist.h>
+diff --git a/modules/gui/qt4/components/playlist/views.cpp b/modules/gui/qt4/components/playlist/views.cpp
+index 59f6535..0066205 100644
+--- a/modules/gui/qt4/components/playlist/views.cpp
++++ b/modules/gui/qt4/components/playlist/views.cpp
+@@ -21,6 +21,12 @@
+  * 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+  *****************************************************************************/
+ 
++#ifdef HAVE_CONFIG_H
++#include "config.h"
++#endif
++
++#include "qt4.hpp"
++
+ #include "components/playlist/views.hpp"
+ #include "components/playlist/vlc_model.hpp"      /* VLCModel */
+ #include "components/playlist/sorting.h"          /* Columns List */
+diff --git a/modules/gui/qt4/dialogs/messages.cpp b/modules/gui/qt4/dialogs/messages.cpp
+index 30793a2..9c79c99 100644
+--- a/modules/gui/qt4/dialogs/messages.cpp
++++ b/modules/gui/qt4/dialogs/messages.cpp
+@@ -24,6 +24,8 @@
+ # include "config.h"
+ #endif
+ 
++#include "qt4.hpp"
++
+ #include "dialogs/messages.hpp"
+ 
+ #include <QPlainTextEdit>
+diff --git a/modules/gui/qt4/dialogs/vlm.cpp b/modules/gui/qt4/dialogs/vlm.cpp
+index 0da88cc..595f015 100644
+--- a/modules/gui/qt4/dialogs/vlm.cpp
++++ b/modules/gui/qt4/dialogs/vlm.cpp
+@@ -23,10 +23,6 @@
+  * Foundation, Inc., 51 Franklin street, Fifth Floor, Boston MA 02110-1301, USA.
+  *****************************************************************************/
+ 
+-#ifdef HAVE_CONFIG_H
+-# include "config.h"
+-#endif
+-
+ #include "dialogs/vlm.hpp"
+ 
+ #ifdef ENABLE_VLM
+diff --git a/modules/gui/qt4/dialogs/vlm.hpp b/modules/gui/qt4/dialogs/vlm.hpp
+index a3c6e5d..dcf7110 100644
+--- a/modules/gui/qt4/dialogs/vlm.hpp
++++ b/modules/gui/qt4/dialogs/vlm.hpp
+@@ -25,8 +25,10 @@
+ #ifndef QVLC_VLM_DIALOG_H_
+ #define QVLC_VLM_DIALOG_H_ 1
+ 
++#include "qt4.hpp"
++
+ #ifdef HAVE_CONFIG_H
+-# include "config.h"
++#include "config.h"
+ #endif
+ 
+ #ifdef ENABLE_VLM
+diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp
+index fd45f4a..c50cb6c 100644
+--- a/modules/gui/qt4/input_manager.cpp
++++ b/modules/gui/qt4/input_manager.cpp
+@@ -30,6 +30,8 @@
+ # include "config.h"
+ #endif
+ 
++#include "qt4.hpp"
++
+ #include "input_manager.hpp"
+ #include "recents.hpp"
+ 
+diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp
+index 7d3b76a..4fbecbb 100644
+--- a/modules/gui/qt4/input_manager.hpp
++++ b/modules/gui/qt4/input_manager.hpp
+@@ -29,9 +29,10 @@
+ # include "config.h"
+ #endif
+ 
++#include "qt4.hpp"
++
+ #include <vlc_input.h>
+ 
+-#include "qt4.hpp"
+ #include "util/singleton.hpp"
+ #include "adapters/variables.hpp"
+ 
+diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp
+index 116e98c..46240b0 100644
+--- a/modules/gui/qt4/menus.cpp
++++ b/modules/gui/qt4/menus.cpp
+@@ -34,6 +34,8 @@
+ # include "config.h"
+ #endif
+ 
++#include "qt4.hpp"
++
+ #include <vlc_common.h>
+ #include <vlc_intf_strings.h>
+ #include <vlc_vout.h>                             /* vout_thread_t */
+diff --git a/modules/gui/qt4/qt4.hpp b/modules/gui/qt4/qt4.hpp
+index 44d7db6..5aec957 100644
+--- a/modules/gui/qt4/qt4.hpp
++++ b/modules/gui/qt4/qt4.hpp
+@@ -29,12 +29,7 @@
+ # include "config.h"
+ #endif
+ 
+-#include <vlc_common.h>    /* VLC_COMMON_MEMBERS for vlc_interface.h */
+-#include <vlc_interface.h> /* intf_thread_t */
+-#include <vlc_playlist.h>  /* playlist_t */
+-
+-#define QT_NO_CAST_TO_ASCII
+-#include <QString>
++#include <QtGlobal>
+ 
+ #if ( QT_VERSION < 0x040600 )
+ # error Update your Qt version to at least 4.6.0
+@@ -43,6 +38,31 @@
+ #define HAS_QT47 ( QT_VERSION >= 0x040700 )
+ #define HAS_QT5  ( QT_VERSION >= 0x050000 )
+ 
++#if HAS_QT5
++  #include <QtCore/qcompilerdetection.h>
++  #if defined(Q_COMPILER_ATOMICS) && \
++             ( __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7 ) )
++   #define VLC_ATOMIC_H
++   #include <atomic>
++   using namespace std;
++   #  define atomic_store(object,desired) \
++      do { \
++          *(object) = (desired); \
++          __sync_synchronize(); \
++      } while (0)
++
++   #  define atomic_load(object) \
++       (__sync_synchronize(), *(object))
++  #endif
++#endif
++
++#include <vlc_common.h>    /* VLC_COMMON_MEMBERS for vlc_interface.h */
++#include <vlc_interface.h> /* intf_thread_t */
++#include <vlc_playlist.h>  /* playlist_t */
++
++#define QT_NO_CAST_TO_ASCII
++#include <QString>
++
+ enum {
+     DialogEventTypeOffset = 0,
+     IMEventTypeOffset     = 100,
+diff --git a/modules/gui/qt4/util/pictureflow.cpp b/modules/gui/qt4/util/pictureflow.cpp
+index 9318953..a7e6a01 100644
+--- a/modules/gui/qt4/util/pictureflow.cpp
++++ b/modules/gui/qt4/util/pictureflow.cpp
+@@ -29,6 +29,8 @@
+   THE SOFTWARE.
+ */
+ 
++#include "qt4.hpp"
++
+ #include "pictureflow.hpp"
+ 
+ #include <QApplication>
+diff --git a/modules/visualization/projectm.cpp b/modules/visualization/projectm.cpp
+index e80fbf4..96d532d 100644
+--- a/modules/visualization/projectm.cpp
++++ b/modules/visualization/projectm.cpp
+@@ -30,6 +30,10 @@
+ #endif
+ 
+ #include <assert.h>
++#if defined(__GNUC__) && \
++           ( __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7 ) )
++  #define VLC_ATOMIC_H /* Ensure C atomics wont collide with old intrinsics */
++#endif
+ 
+ #include <vlc_common.h>
+ #include <vlc_plugin.h>
+-- 
+2.8.1
+
+

diff --git a/media-video/vlc/files/vlc-2.2.4-relax_ffmpeg.patch b/media-video/vlc/files/vlc-2.2.4-relax_ffmpeg.patch
new file mode 100644
index 0000000..218af58
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.2.4-relax_ffmpeg.patch
@@ -0,0 +1,45 @@
+commit b8869f97ea66ac7ec9912a74c2e8b5e15daf7752
+Author: Rafaël Carré <funman@videolan.org>
+Date:   Fri Feb 26 00:36:26 2016 +0000
+
+    Relax requirements for FFmpeg hwaccel
+    
+    It doesn't error out anymore since 5edd1f62ca1
+
+Index: vlc-2.2.4/configure.ac
+===================================================================
+--- vlc-2.2.4.orig/configure.ac
++++ vlc-2.2.4/configure.ac
+@@ -2383,7 +2383,9 @@ AS_IF([test "${have_vaapi}" = "yes" -a "
+   case "${avfork}" in
+     ffmpeg)
+       PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [
+-        AC_MSG_ERROR([VA API requires FFmpeg libavcodec < 57.10 or libav.])
++        PKG_CHECK_EXISTS([libavcodec <= 57.12.100], [
++          AC_MSG_ERROR([VA API requires FFmpeg libavcodec < 57.10 or > 57.12 or libav.])
++        ])
+       ])
+       ;;
+   esac
+@@ -2417,7 +2419,9 @@ AS_IF([test "${enable_dxva2}" != "no"],
+     case "${avfork}" in
+       ffmpeg)
+         PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [
+-          AC_MSG_ERROR([DXVA2 requires FFmpeg libavcodec < 57.10 or libav.])
++          PKG_CHECK_EXISTS([libavcodec <= 57.12.100], [
++            AC_MSG_ERROR([DXVA2 requires FFmpeg libavcodec < 57.10 or > 57.12 or libav.])
++          ])
+         ])
+         ;;
+     esac
+@@ -3181,7 +3185,9 @@ AS_IF([test "${have_vdpau}" = "yes" -a "
+     libav) av_vdpau_ver="55.26.0" ;;
+     ffmpeg) av_vdpau_ver="55.42.100"
+       PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [
+-        AC_MSG_ERROR([VDPAU requires FFmpeg libavcodec < 57.10 or libav.])
++        PKG_CHECK_EXISTS([libavcodec <= 57.12.100], [
++          AC_MSG_ERROR([VDPAU requires FFmpeg libavcodec < 57.10 or > 57.12 or libav.])
++        ])
+       ])
+       ;;
+   esac

diff --git a/media-video/vlc/files/vlc-9999-libva-1.2.1-compat.patch b/media-video/vlc/files/vlc-9999-libva-1.2.1-compat.patch
new file mode 100644
index 0000000..adfdefe
--- /dev/null
+++ b/media-video/vlc/files/vlc-9999-libva-1.2.1-compat.patch
@@ -0,0 +1,12 @@
+--- a/modules/codec/avcodec/vaapi.c
++++ b/modules/codec/avcodec/vaapi.c
+@@ -34,6 +34,9 @@
+ #ifdef VLC_VA_BACKEND_XLIB
+ # include <vlc_xlib.h>
+ # include <va/va_x11.h>
++#if VA_MINOR_VERSION >= 34
++# include <va/va_compat.h>
++#endif
+ #endif
+ #ifdef VLC_VA_BACKEND_DRM
+ # include <sys/types.h>

diff --git a/media-video/vlc/vlc-2.2.4.ebuild b/media-video/vlc/vlc-2.2.4.ebuild
new file mode 100644
index 0000000..6d5a4c8
--- /dev/null
+++ b/media-video/vlc/vlc-2.2.4.ebuild
@@ -0,0 +1,512 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+SCM=""
+if [ "${PV%9999}" != "${PV}" ] ; then
+	SCM="git-r3"
+
+	if [ "${PV%.9999}" != "${PV}" ] ; then
+		EGIT_REPO_URI="git://git.videolan.org/vlc/vlc-${PV%.9999}.git"
+	else
+		EGIT_REPO_URI="git://git.videolan.org/vlc.git"
+	fi
+fi
+
+inherit eutils multilib autotools toolchain-funcs flag-o-matic versionator virtualx ${SCM}
+
+MY_PV="${PV/_/-}"
+MY_PV="${MY_PV/-beta/-test}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="VLC media player - Video player and streamer"
+HOMEPAGE="http://www.videolan.org/vlc/"
+if [ "${PV%9999}" != "${PV}" ] ; then # Live ebuild
+	SRC_URI=""
+elif [[ "${MY_P}" == "${P}" ]]; then
+	SRC_URI="http://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz"
+else
+	SRC_URI="http://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz"
+fi
+
+LICENSE="LGPL-2.1 GPL-2"
+SLOT="0/5-8" # vlc - vlccore
+
+if [[ ${PV} != *9999 ]] ; then
+	KEYWORDS="amd64 ~arm ~ppc ppc64 -sparc x86 ~x86-fbsd"
+fi
+
+IUSE="a52 aalib alsa altivec atmo +audioqueue +avcodec
+	+avformat bidi bluray cdda cddb chromaprint dbus dc1394 debug
+	directfb directx dts dvb +dvbpsi dvd dxva2 elibc_glibc +encode faad fdk
+	fluidsynth +ffmpeg flac fontconfig +gcrypt gme gnome gnutls
+	growl httpd ieee1394 jack jpeg kate kde libass libav libcaca libnotify
+	+libsamplerate libtiger linsys libtar lirc live lua
+	macosx-dialog-provider macosx-eyetv macosx-quartztext macosx-qtkit
+	matroska media-library cpu_flags_x86_mmx modplug mp3 mpeg
+	mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus
+	png postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba
+	schroedinger sdl sdl-image sftp shout sid skins speex cpu_flags_x86_sse svg +swscale
+	taglib theora tremor truetype twolame udev upnp vaapi v4l vcdx vdpau
+	vlm vnc vorbis vpx wma-fixed +X x264 x265 +xcb xml xv zeroconf zvbi"
+
+RDEPEND="
+	!<media-video/ffmpeg-1.2:0
+	dev-libs/libgpg-error:0
+	net-dns/libidn:0
+	>=sys-libs/zlib-1.2.5.1-r2:0[minizip]
+	virtual/libintl:0
+	a52? ( >=media-libs/a52dec-0.7.4-r3:0 )
+	aalib? ( media-libs/aalib:0 )
+	alsa? ( >=media-libs/alsa-lib-1.0.24:0 )
+	avcodec? (
+		!libav? (
+			>=media-video/ffmpeg-2.8:0=
+		)
+		libav? ( >=media-video/libav-11:0= )
+	)
+	avformat? (
+		!libav? (
+			>=media-video/ffmpeg-2.8:0=
+		)
+		libav? ( media-video/libav:0= )
+	)
+	bidi? ( >=dev-libs/fribidi-0.10.4:0 )
+	bluray? ( >=media-libs/libbluray-0.3:0 )
+	cddb? ( >=media-libs/libcddb-1.2:0 )
+	chromaprint? ( >=media-libs/chromaprint-0.6:0 )
+	dbus? ( >=sys-apps/dbus-1.6:0 )
+	dc1394? ( >=sys-libs/libraw1394-2.0.1:0 >=media-libs/libdc1394-2.1:2 )
+	directfb? ( dev-libs/DirectFB:0 sys-libs/zlib:0 )
+	dts? ( >=media-libs/libdca-0.0.5:0 )
+	dvbpsi? ( >=media-libs/libdvbpsi-0.2.1:0= )
+	dvd? ( >=media-libs/libdvdread-4.9:0 >=media-libs/libdvdnav-4.9:0 )
+	elibc_glibc? ( >=sys-libs/glibc-2.8:2.2 )
+	faad? ( >=media-libs/faad2-2.6.1:0 )
+	fdk? ( media-libs/fdk-aac:0 )
+	flac? ( >=media-libs/libogg-1:0 >=media-libs/flac-1.1.2:0 )
+	fluidsynth? ( >=media-sound/fluidsynth-1.1.2:0 )
+	fontconfig? ( media-libs/fontconfig:1.0 )
+	gcrypt? ( >=dev-libs/libgcrypt-1.2.0:0= )
+	gme? ( media-libs/game-music-emu:0 )
+	gnome? ( gnome-base/gnome-vfs:2 dev-libs/glib:2 )
+	gnutls? ( >=net-libs/gnutls-3.0.20:0 )
+	ieee1394? ( >=sys-libs/libraw1394-2.0.1:0 >=sys-libs/libavc1394-0.5.3:0 )
+	jack? ( >=media-sound/jack-audio-connection-kit-0.99.0-r1:0 )
+	jpeg? ( virtual/jpeg:0 )
+	kate? ( >=media-libs/libkate-0.3:0 )
+	libass? ( >=media-libs/libass-0.9.8:0 media-libs/fontconfig:1.0 )
+	libcaca? ( >=media-libs/libcaca-0.99_beta14:0 )
+	libnotify? ( x11-libs/libnotify:0 x11-libs/gtk+:2 x11-libs/gdk-pixbuf:2 dev-libs/glib:2 )
+	libsamplerate? ( media-libs/libsamplerate:0 )
+	libtar? ( >=dev-libs/libtar-1.2.11-r3:0 )
+	libtiger? ( >=media-libs/libtiger-0.3.1:0 )
+	linsys? ( >=media-libs/zvbi-0.2.28:0 )
+	lirc? ( app-misc/lirc:0 )
+	live? ( >=media-plugins/live-2011.12.23:0 )
+	lua? ( >=dev-lang/lua-5.1:0 )
+	matroska? (	>=dev-libs/libebml-1:0= >=media-libs/libmatroska-1:0= )
+	modplug? ( >=media-libs/libmodplug-0.8.4:0 !~media-libs/libmodplug-0.8.8 )
+	mp3? ( media-libs/libmad:0 )
+	mpeg? ( >=media-libs/libmpeg2-0.3.2:0 )
+	mtp? ( >=media-libs/libmtp-1:0 )
+	musepack? ( >=media-sound/musepack-tools-444:0 )
+	ncurses? ( sys-libs/ncurses:0=[unicode] )
+	ogg? ( >=media-libs/libogg-1:0 )
+	opencv? ( >media-libs/opencv-2:0 )
+	opengl? ( virtual/opengl:0 >=x11-libs/libX11-1.3.99.901:0 )
+	opus? ( >=media-libs/opus-1.0.3:0 )
+	png? ( media-libs/libpng:0= sys-libs/zlib:0 )
+	postproc? (
+		!libav? ( >=media-video/ffmpeg-2.2:0= )
+		libav? ( media-libs/libpostproc:0= )
+	)
+	projectm? ( media-libs/libprojectm:0 media-fonts/dejavu:0 )
+	pulseaudio? ( >=media-sound/pulseaudio-1:0 )
+	qt4? ( >=dev-qt/qtgui-4.6:4 >=dev-qt/qtcore-4.6:4 )
+	qt5? ( >=dev-qt/qtgui-5.1:5 >=dev-qt/qtcore-5.1:5 >=dev-qt/qtwidgets-5.5.1-r1:5
+	>=dev-qt/qtx11extras-5.1:5 )
+	rdp? ( >=net-misc/freerdp-1.0.1:0=[client] <net-misc/freerdp-2 )
+	samba? ( || ( ( >=net-fs/samba-3.4.6:0[smbclient] <net-fs/samba-4.0.0_alpha1:0[smbclient] )
+		>=net-fs/samba-4.0.0_alpha1:0[client] ) )
+	schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
+	sdl? ( >=media-libs/libsdl-1.2.10:0
+		sdl-image? ( >=media-libs/sdl-image-1.2.10:0 sys-libs/zlib:0 ) )
+	sftp? ( net-libs/libssh2:0 )
+	shout? ( >=media-libs/libshout-2.1:0 )
+	sid? ( media-libs/libsidplay:2 )
+	skins? ( x11-libs/libXext:0 x11-libs/libXpm:0 x11-libs/libXinerama:0 )
+	speex? ( media-libs/speex:0 )
+	svg? ( >=gnome-base/librsvg-2.9:2 >=x11-libs/cairo-1.13.1:0 )
+	swscale? (
+		!libav? ( media-video/ffmpeg:0= )
+		libav? ( media-video/libav:0= )
+	)
+	taglib? ( >=media-libs/taglib-1.9:0 sys-libs/zlib:0 )
+	theora? ( >=media-libs/libtheora-1.0_beta3:0 )
+	tremor? ( media-libs/tremor:0 )
+	truetype? ( media-libs/freetype:2 virtual/ttf-fonts:0
+		!fontconfig? ( media-fonts/dejavu:0 ) )
+	twolame? ( media-sound/twolame:0 )
+	udev? ( >=virtual/udev-142:0 )
+	upnp? ( net-libs/libupnp:0 )
+	v4l? ( media-libs/libv4l:0 )
+	vaapi? (
+		x11-libs/libva:0[X,drm]
+		!libav? ( >=media-video/ffmpeg-2.8:0=[vaapi] )
+		libav? ( media-video/libav:0=[vaapi] )
+	)
+	vcdx? ( >=dev-libs/libcdio-0.78.2:0 >=media-video/vcdimager-0.7.22:0 )
+	zeroconf? ( >=net-dns/avahi-0.6:0[dbus] )
+"
+
+# Temporarily block non-live FFMPEG versions as they break vdpau, 9999 works;
+# thus we'll have to wait for a new release there.
+RDEPEND="${RDEPEND}
+	vdpau? (
+		>=x11-libs/libvdpau-0.6:0
+		!libav? (
+					>=media-video/ffmpeg-2.8:0=
+		)
+		libav? ( >=media-video/libav-10:0= )
+	)
+	vnc? ( >=net-libs/libvncserver-0.9.9:0 )
+	vorbis? ( >=media-libs/libvorbis-1.1:0 )
+	vpx? ( media-libs/libvpx:0= )
+	X? ( x11-libs/libX11:0 )
+	x264? ( >=media-libs/x264-0.0.20090923:0= )
+	x265? ( media-libs/x265:0= )
+	xcb? ( >=x11-libs/libxcb-1.6:0 >=x11-libs/xcb-util-0.3.4:0 >=x11-libs/xcb-util-keysyms-0.3.4:0 )
+	xml? ( >=dev-libs/libxml2-2.5:2 )
+	zvbi? ( >=media-libs/zvbi-0.2.25:0 )
+"
+
+DEPEND="${RDEPEND}
+	kde? ( >=kde-base/kdelibs-4:4 )
+	xcb? ( x11-proto/xproto:0 )
+	app-arch/xz-utils:0
+	x86?   ( dev-lang/yasm:* )
+	amd64? ( dev-lang/yasm:* )
+	>=sys-devel/gettext-0.18.3:*
+	virtual/pkgconfig:*
+"
+
+REQUIRED_USE="
+	aalib? ( X )
+	bidi? ( truetype )
+	cddb? ( cdda )
+	dvb? ( dvbpsi )
+	dxva2? ( avcodec )
+	ffmpeg? ( avcodec avformat swscale )
+	fontconfig? ( truetype )
+	gnutls? ( gcrypt )
+	httpd? ( lua )
+	libcaca? ( X )
+	libtar? ( skins )
+	libtiger? ( kate )
+	qt4? ( X !qt5 )
+	qt5? ( X !qt4 )
+	sdl? ( X )
+	skins? ( truetype X xml ^^ ( qt4 qt5 ) )
+	vaapi? ( avcodec X )
+	vdpau? ( xcb )
+	vlm? ( encode )
+	xv? ( xcb )
+"
+
+PATCHES=(
+	# Fix build system mistake.
+	"${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch
+
+	# Patch up incompatibilities and reconfigure autotools.
+	"${FILESDIR}"/${PN}-9999-libva-1.2.1-compat.patch
+
+	# Fix up broken audio when skipping using a fixed reversed bisected commit.
+	"${FILESDIR}"/${PN}-2.1.0-TomWij-bisected-PA-broken-underflow.patch
+
+	# Bug #541678
+	"${FILESDIR}"/qt4-select.patch
+
+	# Allow QT5.5 since Gentoo has a patched QTwidgets
+	"${FILESDIR}"/${PN}-2.2.2-qt5widgets.patch
+
+	# Bug #575072
+	"${FILESDIR}"/${PN}-2.2.4-relax_ffmpeg.patch
+	"${FILESDIR}"/${PN}-2.2.4-ffmpeg3.patch
+
+	# BUg #587954
+	"${FILESDIR}"/${PN}-2.2.4-gcc6-fixup.patch
+)
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+	if [[ "${MERGE_TYPE}" != "binary" ]] && tc-is-gcc ; then
+		if ! version_is_at_least 4.5 $(gcc-version) ; then
+			die "You need to have at least >=sys-devel/gcc-4.5 to build and/or have a working vlc, see bug #426754."
+		fi
+	fi
+}
+
+src_unpack() {
+	if [ "${PV%9999}" != "${PV}" ] ; then
+		git-r3_src_unpack
+	else
+		unpack ${A}
+	fi
+}
+
+src_prepare() {
+	# Remove unnecessary warnings about unimplemented pragmas on gcc for now.
+	# Need to recheck this with gcc 4.9 and every subsequent minor bump of gcc.
+	#
+	# config.h:792: warning: ignoring #pragma STDC FENV_ACCESS [-Wunknown-pragmas]
+	# config.h:793: warning: ignoring #pragma STDC FP_CONTRACT [-Wunknown-pragmas]
+	#
+	# https://gcc.gnu.org/c99status.html
+	if tc-is-gcc ; then
+		sed -i 's/ifndef __FAST_MATH__/if 0/g' configure.ac || die
+	fi
+
+	# Bootstrap when we are on a git checkout.
+	if [[ "${PV%9999}" != "${PV}" ]] ; then
+		./bootstrap
+	fi
+
+	# Make it build with libtool 1.5
+	rm -f m4/lt* m4/libtool.m4 || die
+
+	# We are not in a real git checkout due to the absence of a .git directory.
+	touch src/revision.txt || die
+
+	default
+
+	# Don't use --started-from-file when not using dbus.
+	if ! use dbus ; then
+		sed -i 's/ --started-from-file//' share/vlc.desktop.in || die
+	fi
+
+	eautoreconf
+
+	# Disable automatic running of tests.
+	find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die
+
+	# If qtchooser is installed, it may break the build, because moc,rcc and uic binaries for wrong qt version may be used.
+	# Setting QT_SELECT environment variable will enforce correct binaries.
+	if use qt4; then
+		export QT_SELECT=qt4
+	elif use qt5; then
+		export QT_SELECT=qt5
+	fi
+}
+
+src_configure() {
+	# Compatibility fix for Samba 4.
+	use samba && append-cppflags "-I/usr/include/samba-4.0"
+
+	# We need to disable -fstack-check if use >=gcc 4.8.0.
+	# See bug #499996
+	use x86 && append-cflags $(test-flags-CC -fno-stack-check)
+
+	# Needs libresid-builder from libsidplay:2 which is in another directory...
+	# FIXME!
+	append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/"
+
+	if use truetype || use projectm ; then
+		local dejavu="/usr/share/fonts/dejavu/"
+		myconf="--with-default-font=${dejavu}/DejaVuSans.ttf \
+				--with-default-font-family=Sans \
+				--with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf
+				--with-default-monospace-font-family=Monospace"
+	fi
+
+	local qt_flag=""
+	if use qt4 ; then
+		qt_flag="--enable-qt=4"
+	elif use qt5 ; then
+		qt_flag="--enable-qt=5"
+	else
+		qt_flag="--disable-qt"
+	fi
+
+	econf \
+		${myconf} \
+		--enable-vlc \
+		--docdir=/usr/share/doc/${PF} \
+		--disable-dependency-tracking \
+		--disable-optimizations \
+		--disable-update-check \
+		--enable-fast-install \
+		--enable-screen \
+		$(use_enable a52) \
+		$(use_enable aalib aa) \
+		$(use_enable alsa) \
+		$(use_enable altivec) \
+		$(use_enable atmo) \
+		$(use_enable audioqueue) \
+		$(use_enable avcodec) \
+		$(use_enable avformat) \
+		$(use_enable bidi fribidi) \
+		$(use_enable bluray) \
+		$(use_enable cdda vcd) \
+		$(use_enable cddb libcddb) \
+		$(use_enable chromaprint) \
+		$(use_enable dbus) \
+		$(use_enable directfb) \
+		$(use_enable directx) \
+		$(use_enable dc1394) \
+		$(use_enable debug) \
+		$(use_enable dts dca) \
+		$(use_enable dvbpsi) \
+		$(use_enable dvd dvdread) $(use_enable dvd dvdnav) \
+		$(use_enable dxva2) \
+		$(use_enable encode sout) \
+		$(use_enable faad) \
+		$(use_enable fdk fdkaac) \
+		$(use_enable flac) \
+		$(use_enable fluidsynth) \
+		$(use_enable fontconfig) \
+		$(use_enable gcrypt libgcrypt) \
+		$(use_enable gme) \
+		$(use_enable gnome gnomevfs) \
+		$(use_enable gnutls) \
+		$(use_enable growl) \
+		$(use_enable httpd) \
+		$(use_enable ieee1394 dv1394) \
+		$(use_enable jack) \
+		$(use_enable jpeg) \
+		$(use_enable kate) \
+		$(use_with kde kde-solid) \
+		$(use_enable libass) \
+		$(use_enable libcaca caca) \
+		$(use_enable libnotify notify) \
+		$(use_enable libsamplerate samplerate) \
+		$(use_enable libtar) \
+		$(use_enable libtiger tiger) \
+		$(use_enable linsys) \
+		$(use_enable lirc) \
+		$(use_enable live live555) \
+		$(use_enable lua) \
+		$(use_enable macosx-dialog-provider) \
+		$(use_enable macosx-eyetv) \
+		$(use_enable macosx-qtkit) \
+		$(use_enable macosx-quartztext) \
+		$(use_enable matroska mkv) \
+		$(use_enable cpu_flags_x86_mmx mmx) \
+		$(use_enable modplug mod) \
+		$(use_enable mp3 mad) \
+		$(use_enable mpeg libmpeg2) \
+		$(use_enable mtp) \
+		$(use_enable musepack mpc) \
+		$(use_enable ncurses) \
+		$(use_enable neon) \
+		$(use_enable ogg) $(use_enable ogg mux_ogg) \
+		$(use_enable omxil) \
+		$(use_enable omxil omxil-vout) \
+		$(use_enable opencv) \
+		$(use_enable opengl glspectrum) \
+		$(use_enable opus) \
+		$(use_enable optimisememory optimize-memory) \
+		$(use_enable png) \
+		$(use_enable postproc) \
+		$(use_enable projectm) \
+		$(use_enable pulseaudio pulse) \
+		${qt_flag} \
+		$(use_enable rdp freerdp) \
+		$(use_enable rtsp realrtsp) \
+		$(use_enable run-as-root) \
+		$(use_enable samba smbclient) \
+		$(use_enable schroedinger) \
+		$(use_enable sdl) \
+		$(use_enable sdl-image) \
+		$(use_enable sid) \
+		$(use_enable sftp) \
+		$(use_enable shout) \
+		$(use_enable skins skins2) \
+		$(use_enable speex) \
+		$(use_enable cpu_flags_x86_sse sse) \
+		$(use_enable svg) \
+		$(use_enable svg svgdec) \
+		$(use_enable swscale) \
+		$(use_enable taglib) \
+		$(use_enable theora) \
+		$(use_enable tremor) \
+		$(use_enable truetype freetype) \
+		$(use_enable twolame) \
+		$(use_enable udev) \
+		$(use_enable upnp) \
+		$(use_enable v4l v4l2) \
+		$(use_enable vaapi libva) \
+		$(use_enable vcdx) \
+		$(use_enable vdpau) \
+		$(use_enable vlm) \
+		$(use_enable vnc) \
+		$(use_enable vorbis) \
+		$(use_enable vpx) \
+		$(use_enable wma-fixed) \
+		$(use_with X x) \
+		$(use_enable x264) \
+		$(use_enable x265) \
+		$(use_enable xcb) \
+		$(use_enable xml libxml2) \
+		$(use_enable xv xvideo) \
+		$(use_enable zeroconf bonjour) \
+		$(use_enable zvbi) $(use_enable !zvbi telx) \
+		--disable-asdcp \
+		--disable-coverage \
+		--disable-cprof \
+		--disable-crystalhd \
+		--disable-decklink \
+		--disable-gles1 \
+		--disable-gles2 \
+		--disable-goom \
+		--disable-kai \
+		--disable-kva \
+		--disable-maintainer-mode \
+		--disable-merge-ffmpeg \
+		--disable-mfx \
+		--disable-mmal-codec \
+		--disable-mmal-vout \
+		--disable-opensles \
+		--disable-oss \
+		--disable-quicktime \
+		--disable-rpi-omxil \
+		--disable-shine \
+		--disable-sndio \
+		--disable-vda \
+		--disable-vsxu \
+		--disable-wasapi
+
+		# ^ We don't have these disabled libraries in the Portage tree yet.
+
+	# _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo.
+	# Other values of _FORTIFY_SOURCE may break the build (bug 523144), so definition should not be removed from config.h.
+	# To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the very start of config.h file
+	sed -i '1i#undef _FORTIFY_SOURCE' "${S}"/config.h || die
+}
+
+src_test() {
+	virtx emake check-TESTS
+}
+
+DOCS="AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt"
+
+src_install() {
+	default
+
+	# Punt useless libtool's .la files
+	find "${D}" -name '*.la' -delete
+}
+
+pkg_postinst() {
+	if [ "$ROOT" = "/" ] && [ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ] ; then
+		einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/"
+		"/usr/$(get_libdir)/vlc/vlc-cache-gen" -f "/usr/$(get_libdir)/vlc/plugins/"
+	else
+		ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)"
+		ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually"
+		ewarn "If you do not do it, vlc will take a long time to load."
+	fi
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-10-11  3:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-05  1:35 [gentoo-commits] dev/anarchy:master commit in: media-video/vlc/files/, media-video/vlc/ Jory Pratt
  -- strict thread matches above, loose matches on Subject: below --
2016-10-11  3:16 Jory Pratt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox