diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2017-12-07 00:52:13 +0100 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2017-12-07 01:01:55 +0100 |
commit | 21bc796a942992a9237a08c3e173cb5ddd750a5a (patch) | |
tree | 00016491782c8d2fa6c9866fb7b3f757ba8612b4 /media-video | |
parent | media-video/vlc: Cleanup src_prepare (diff) | |
download | gentoo-21bc796a942992a9237a08c3e173cb5ddd750a5a.tar.gz gentoo-21bc796a942992a9237a08c3e173cb5ddd750a5a.tar.bz2 gentoo-21bc796a942992a9237a08c3e173cb5ddd750a5a.zip |
media-video/vlc: Add 3.0 stable branch
Package-Manager: Portage-2.3.16, Repoman-2.3.6
Diffstat (limited to 'media-video')
-rw-r--r-- | media-video/vlc/vlc-3.0.9999.ebuild | 465 |
1 files changed, 465 insertions, 0 deletions
diff --git a/media-video/vlc/vlc-3.0.9999.ebuild b/media-video/vlc/vlc-3.0.9999.ebuild new file mode 100644 index 000000000000..e22e7fce9716 --- /dev/null +++ b/media-video/vlc/vlc-3.0.9999.ebuild @@ -0,0 +1,465 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + SCM="git-r3" +else + if [[ ${MY_P} = ${P} ]] ; then + SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + else + SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + fi + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86 ~x86-fbsd" +fi +inherit autotools flag-o-matic toolchain-funcs versionator virtualx ${SCM} + +DESCRIPTION="VLC media player - Video player and streamer" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-8" # vlc - vlccore + +IUSE="a52 aalib alsa altivec aom archive +avcodec +avformat bidi bluray cddb + chromaprint chromecast dbus dc1394 debug directx dts dvb +dvbpsi dvd + dxva2 elibc_glibc +encode faad fdk fluidsynth +ffmpeg flac fontconfig +gcrypt + gme gnutls gstreamer ieee1394 jack jpeg kate libass libav libcaca + libnotify +libsamplerate libtiger linsys libtar lirc live lua + macosx-notifications macosx-qtkit matroska cpu_flags_x86_mmx modplug mp3 + mpeg mtp musepack ncurses neon nfs ogg omxil opencv opengl optimisememory opus + png postproc projectm pulseaudio +qt5 rdp rtsp run-as-root samba + schroedinger sdl-image sftp shout sid skins speex cpu_flags_x86_sse svg + +swscale taglib theora tremor truetype twolame udev upnp vaapi v4l vcd vdpau + vlm vnc vorbis vpx wma-fixed +X x264 x265 +xcb xml xv zeroconf zvbi +" +REQUIRED_USE=" + aalib? ( X ) + bidi? ( truetype ) + dvb? ( dvbpsi ) + dxva2? ( avcodec ) + ffmpeg? ( avcodec avformat swscale ) + fontconfig? ( truetype ) + gnutls? ( gcrypt ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + skins? ( qt5 truetype X xml ) + vaapi? ( avcodec X ) + vdpau? ( X ) + vlm? ( encode ) + xv? ( xcb ) +" +RDEPEND=" + dev-libs/libgpg-error:0 + net-dns/libidn:0 + sys-libs/zlib: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 ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + avcodec? ( + !libav? ( media-video/ffmpeg:0= ) + libav? ( media-video/libav:0= ) + ) + avformat? ( + !libav? ( media-video/ffmpeg:0= ) + libav? ( media-video/libav:0= ) + ) + bidi? ( dev-libs/fribidi:0 ) + bluray? ( >=media-libs/libbluray-0.6.2:0= ) + cddb? ( >=media-libs/libcddb-1.2:0 ) + chromaprint? ( >=media-libs/chromaprint-0.6:0 ) + chromecast? ( >=dev-libs/protobuf-2.5.0 ) + dbus? ( >=sys-apps/dbus-1.6:0 ) + dc1394? ( + >=media-libs/libdc1394-2.1:2 + >=sys-libs/libraw1394-2.0.1:0 + ) + dts? ( >=media-libs/libdca-0.0.5:0 ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:0= ) + dvd? ( + >=media-libs/libdvdnav-4.9:0 + >=media-libs/libdvdread-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/flac-1.1.2:0 + >=media-libs/libogg-1:0 + ) + fluidsynth? ( >=media-sound/fluidsynth-1.1.2:0 ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( >=dev-libs/libgcrypt-1.6.0:0= ) + gme? ( media-libs/game-music-emu:0 ) + gnutls? ( net-libs/gnutls:0 ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + >=sys-libs/libavc1394-0.5.3:0 + >=sys-libs/libraw1394-2.0.1:0 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( >=media-libs/libkate-0.3:0 ) + libass? ( + media-libs/fontconfig:1.0 + >=media-libs/libass-0.9.8:0= + ) + libcaca? ( >=media-libs/libcaca-0.99_beta14:0 ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:2 + x11-libs/libnotify:0 + ) + 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 ) + 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] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + 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= ) + postproc? ( + !libav? ( >=media-video/ffmpeg-3.1.3:0= ) + libav? ( media-libs/libpostproc:0= ) + ) + projectm? ( + media-fonts/dejavu:0 + media-libs/libprojectm:0 + ) + pulseaudio? ( >=media-sound/pulseaudio-1:0 ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( dev-qt/qtx11extras:5 ) + ) + rdp? ( =net-misc/freerdp-1*:0=[client] ) + samba? ( >=net-fs/samba-4.0.0:0[client] ) + schroedinger? ( >=media-libs/schroedinger-1.0.10:0 ) + sdl-image? ( >=media-libs/sdl-image-1.2.10: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/libXinerama:0 + x11-libs/libXpm:0 + ) + speex? ( + >=media-libs/speex-1.2.0:0 + media-libs/speexdsp: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 ) + theora? ( media-libs/libtheora: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:0 ) + upnp? ( net-libs/libupnp:0 ) + v4l? ( media-libs/libv4l:0 ) + vaapi? ( + x11-libs/libva:0[X,drm] + !libav? ( >=media-video/ffmpeg-3.1.3:0=[vaapi] ) + libav? ( media-video/libav:0=[vaapi] ) + ) + vcd? ( >=dev-libs/libcdio-0.78.2:0 ) + vdpau? ( + x11-libs/libvdpau:0 + !libav? ( media-video/ffmpeg:0= ) + libav? ( >=media-video/libav-10:0= ) + ) + vnc? ( >=net-libs/libvncserver-0.9.9:0 ) + vorbis? ( media-libs/libvorbis:0 ) + vpx? ( media-libs/libvpx:0= ) + X? ( x11-libs/libX11:0 ) + x264? ( media-libs/x264:0= ) + x265? ( media-libs/x265:0= ) + xcb? ( + x11-libs/libxcb:0 + x11-libs/xcb-util:0 + x11-libs/xcb-util-keysyms:0 + ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( >=net-dns/avahi-0.6:0[dbus] ) + zvbi? ( media-libs/zvbi:0 ) +" +DEPEND="${RDEPEND} + app-arch/xz-utils:0 + >=sys-devel/gettext-0.19.8:* + virtual/pkgconfig:* + amd64? ( dev-lang/yasm:* ) + x86? ( dev-lang/yasm:* ) + xcb? ( x11-proto/xproto:0 ) +" + +PATCHES=( + # Fix build system mistake. + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.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 #593460 + "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + default + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + rm 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 + + # 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 +} + +src_configure() { + local myconf + + # 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. bug #499996 + use x86 && append-cflags $(test-flags-CC -fno-stack-check) + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + 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 + + 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 aom) \ + $(use_enable archive) \ + $(use_enable avcodec) \ + $(use_enable avformat) \ + $(use_enable bidi fribidi) \ + $(use_enable bluray) \ + $(use_enable cddb libcddb) \ + $(use_enable chromaprint) \ + $(use_enable chromecast) \ + $(use_enable dbus) \ + $(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 gnutls) \ + $(use_enable gstreamer gst-decode) \ + $(use_enable ieee1394 dv1394) \ + $(use_enable jack) \ + $(use_enable jpeg) \ + $(use_enable kate) \ + $(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-notifications osx-notifications) \ + $(use_enable macosx-qtkit) \ + $(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) \ + $(use_enable omxil) \ + $(use_enable omxil omxil-vout) \ + $(use_enable opencv) \ + $(use_enable opus) \ + $(use_enable optimisememory optimize-memory) \ + $(use_enable png) \ + $(use_enable postproc) \ + $(use_enable projectm) \ + $(use_enable pulseaudio pulse) \ + $(use_enable qt5 qt) \ + $(use_enable rdp freerdp) \ + $(use_enable rtsp realrtsp) \ + $(use_enable run-as-root) \ + $(use_enable samba smbclient) \ + $(use_enable schroedinger) \ + $(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 vcd) \ + $(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 xcb) \ + $(use_enable xml libxml2) \ + $(use_enable xv xvideo) \ + $(use_enable x265) \ + $(use_enable zeroconf avahi) \ + $(use_enable zvbi) $(use_enable !zvbi telx) \ + --disable-asdcp \ + --disable-coverage \ + --disable-cprof \ + --disable-crystalhd \ + --disable-decklink \ + --disable-gles2 \ + --disable-goom \ + --disable-kai \ + --disable-kva \ + --disable-libplacebo \ + --disable-maintainer-mode \ + --disable-merge-ffmpeg \ + --disable-mfx \ + --disable-mmal \ + --disable-opensles \ + --disable-oss \ + --disable-rpi-omxil \ + --disable-shine \ + --disable-sndio \ + --disable-spatialaudio \ + --disable-srt \ + --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 +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +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 +} |