media-tv/kodi: Add "system-ffmpeg" use flag
authorCraig Andrews <candrews@integralblue.com>
Wed, 8 Feb 2017 18:05:57 +0000 (13:05 -0500)
committerDavid Seifert <soap@gentoo.org>
Tue, 7 Mar 2017 09:06:53 +0000 (10:06 +0100)
Gentoo-bug: 608472

Package-Manager: Portage-2.3.3, Repoman-2.3.1
Closes: https://github.com/gentoo/gentoo/pull/3885

media-tv/kodi/Manifest
media-tv/kodi/kodi-17.0-r1.ebuild
media-tv/kodi/kodi-9999.ebuild
media-tv/kodi/metadata.xml
profiles/base/package.use.force

index 34c1b9189c401ccfefc831bf42d5ae6d6852c34a..051e5967045f85e229b9fa32e650485559edd459 100644 (file)
@@ -1,3 +1,4 @@
+DIST ffmpeg-kodi-3.1.6-Krypton.tar.gz 11170735 SHA256 01f914742f6af8afd1d2eb076425975e24c4eed75f5d57f1c816086dc4625192 SHA512 060d06946ee71106196587b36eccf7fb7d0710d6ee72dae2e08f23e5bf7e223a3bac77f1730121f494ecf5f860a40635978023317a06f27a3b28752fa537f1a1 WHIRLPOOL ae6f0b3b798e92cd72aed8eb3e6dc82708c86052590b30ae93e1b8275dca89c5a4470dbc8ff51bfefd72bd40036b7bd1b7695ee77e90bab35b5e80bcb8b79826
 DIST kodi-16.1-gcc-6.patch 63436 SHA256 cc4d730f163fcc3a99cb67480953cb043c17097d815bf41da441c7e66caaa0dc SHA512 9236608e26685feccd4492c58e7b5c4262e0ac100aabda46a565685eaa19af5b9bbe11f59cecc91de33474ac024ff74d670fe137fa2490f4ec1207817fb7fd23 WHIRLPOOL 336ba43387c154e67a5a3592675f802a50771e3bac14af79f9413773185f6b35e85a1af10988b96238a00e6a9c300caf856435f356572b7fb441e652164c8917
 DIST kodi-16.1-generated-addons-r1.tar.xz 54528 SHA256 ffa06845ed95597b46a178575e361f0641f78778be553d7a9f51b4cc190d2629 SHA512 32c9a5bb6ed5f5d8e73a37c35268c1a7176c6a4c52c5b5e8f6c5c76a3c51445ff0a5b8802be94ada5d63ecbea4d7e69b61d579c931900f6ba6abb583bbe542d9 WHIRLPOOL 3cd62abee6854efbee0070d811d0ef03f7b2d1d629c91d43fb2a2883c83733267affef60339459ce1ca7e30b1b856e20b929883cd12958348803c428d69e142e
 DIST kodi-16.1.tar.gz 52091107 SHA256 7d82c8aff2715c83deecdf10c566e26105bec0473af530a1356d4c747ebdfd10 SHA512 fe7012ea899906d418faa19af5066e5976d092745e91030106ea4f75399ad67a4bb4e4f384605ab7b2d9e24174aab2e243531f31d79ff5ae33564361b25eb073 WHIRLPOOL eabe28e2d0bf35dc1272551e9179b2450607c97295daffcfa5ce90a56c5db42467fe0f9ba43cc542a0843cb867554682e9cd223a326c37bee7dfd086cb40ec4d
index ba60df09df9bf5191d42ee364d2ce7cb0c215d66..fc30ffd998553910c3e0cc7190eec2636bd2aa9f 100644 (file)
@@ -12,10 +12,12 @@ inherit eutils linux-info python-single-r1 cmake-utils autotools
 LIBDVDCSS_COMMIT="2f12236bc1c92f73c21e973363f79eb300de603f"
 LIBDVDREAD_COMMIT="17d99db97e7b8f23077b342369d3c22a6250affd"
 LIBDVDNAV_COMMIT="43b5f81f5fe30bceae3b7cecf2b0ca57fc930dac"
+FFMPEG_VERSION="3.1.6"
 CODENAME="Krypton"
 SRC_URI="https://github.com/xbmc/libdvdcss/archive/${LIBDVDCSS_COMMIT}.tar.gz -> libdvdcss-${LIBDVDCSS_COMMIT}.tar.gz
        https://github.com/xbmc/libdvdread/archive/${LIBDVDREAD_COMMIT}.tar.gz -> libdvdread-${LIBDVDREAD_COMMIT}.tar.gz
-       https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_COMMIT}.tar.gz -> libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz"
+       https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_COMMIT}.tar.gz -> libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz
+       !system-ffmpeg? ( https://github.com/xbmc/FFmpeg/archive/${FFMPEG_VERSION}-${CODENAME}.tar.gz -> ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}.tar.gz )"
 
 DESCRIPTION="Kodi is a free and open source media-player and entertainment hub"
 HOMEPAGE="https://kodi.tv/ http://kodi.wiki/"
@@ -25,7 +27,7 @@ SLOT="0"
 # use flag is called libusb so that it doesn't fool people in thinking that
 # it is _required_ for USB support. Otherwise they'll disable udev and
 # that's going to be worse.
-IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gles libressl libusb lirc mysql nfs nonfree +opengl +ssl pulseaudio samba sftp systemd test +udev udisks upnp upower vaapi vdpau webserver +X +xslt zeroconf"
+IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gles libressl libusb lirc mysql nfs nonfree +opengl +ssl pulseaudio samba sftp systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau webserver +X +xslt zeroconf"
 REQUIRED_USE="
        ${PYTHON_REQUIRED_USE}
        || ( gles opengl )
@@ -65,7 +67,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
        >=media-libs/libass-0.13.4
        media-libs/mesa[egl]
        >=media-libs/taglib-1.11.1
-       >=media-video/ffmpeg-3.1.6:=[encode,postproc]
+       system-ffmpeg? ( >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,postproc] )
        mysql? ( virtual/mysql )
        >=net-misc/curl-7.51.0
        nfs? ( net-fs/libnfs:= )
@@ -213,7 +215,7 @@ src_configure() {
                -DENABLE_DBUS=$(usex dbus)
                -DENABLE_DVDCSS=$(usex css)
                -DENABLE_INTERNAL_CROSSGUID=OFF
-               -DENABLE_INTERNAL_FFMPEG=OFF
+               -DENABLE_INTERNAL_FFMPEG="$(usex !system-ffmpeg)"
                -DENABLE_CAP=$(usex caps)
                -DENABLE_LIRC=$(usex lirc)
                -DENABLE_MICROHTTPD=$(usex webserver)
@@ -241,6 +243,8 @@ src_configure() {
 
        use libusb && mycmakeargs+=( -DENABLE_LIBUSB=$(usex libusb) )
 
+       use !system-ffmpeg && mycmakeargs+=( -DFFMPEG_URL="${DISTDIR}/ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}.tar.gz" )
+
        cmake-utils_src_configure
 }
 
index 3cd6095189f4ddf578390371c46dd768e89c79ff..f2f30453d4cd047ecde371ae996af8ba98467ef9 100644 (file)
@@ -12,10 +12,12 @@ inherit eutils linux-info python-single-r1 cmake-utils autotools
 LIBDVDCSS_COMMIT="2f12236bc1c92f73c21e973363f79eb300de603f"
 LIBDVDREAD_COMMIT="17d99db97e7b8f23077b342369d3c22a6250affd"
 LIBDVDNAV_COMMIT="43b5f81f5fe30bceae3b7cecf2b0ca57fc930dac"
+FFMPEG_VERSION="3.1.6"
 CODENAME="Krypton"
 SRC_URI="https://github.com/xbmc/libdvdcss/archive/${LIBDVDCSS_COMMIT}.tar.gz -> libdvdcss-${LIBDVDCSS_COMMIT}.tar.gz
        https://github.com/xbmc/libdvdread/archive/${LIBDVDREAD_COMMIT}.tar.gz -> libdvdread-${LIBDVDREAD_COMMIT}.tar.gz
-       https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_COMMIT}.tar.gz -> libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz"
+       https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_COMMIT}.tar.gz -> libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz
+       !system-ffmpeg? ( https://github.com/xbmc/FFmpeg/archive/${FFMPEG_VERSION}-${CODENAME}.tar.gz -> ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}.tar.gz )"
 
 DESCRIPTION="Kodi is a free and open source media-player and entertainment hub"
 HOMEPAGE="https://kodi.tv/ http://kodi.wiki/"
@@ -25,7 +27,7 @@ SLOT="0"
 # use flag is called libusb so that it doesn't fool people in thinking that
 # it is _required_ for USB support. Otherwise they'll disable udev and
 # that's going to be worse.
-IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gles libressl libusb lirc mysql nfs nonfree +opengl +ssl pulseaudio samba sftp systemd test +udev udisks upnp upower vaapi vdpau webserver +X +xslt zeroconf"
+IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gles libressl libusb lirc mysql nfs nonfree +opengl +ssl pulseaudio samba sftp systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau webserver +X +xslt zeroconf"
 REQUIRED_USE="
        ${PYTHON_REQUIRED_USE}
        || ( gles opengl )
@@ -65,7 +67,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
        >=media-libs/libass-0.13.4
        media-libs/mesa[egl]
        >=media-libs/taglib-1.11.1
-       >=media-video/ffmpeg-3.1.6:=[encode,postproc]
+       system-ffmpeg? ( >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,postproc] )
        mysql? ( virtual/mysql )
        >=net-misc/curl-7.51.0
        nfs? ( net-fs/libnfs:= )
@@ -211,7 +213,7 @@ src_configure() {
                -DENABLE_DBUS=$(usex dbus)
                -DENABLE_DVDCSS=$(usex css)
                -DENABLE_INTERNAL_CROSSGUID=OFF
-               -DENABLE_INTERNAL_FFMPEG=OFF
+               -DENABLE_INTERNAL_FFMPEG="$(usex !system-ffmpeg)"
                -DENABLE_CAP=$(usex caps)
                -DENABLE_LIRC=$(usex lirc)
                -DENABLE_MICROHTTPD=$(usex webserver)
@@ -239,6 +241,8 @@ src_configure() {
 
        use libusb && mycmakeargs+=( -DENABLE_LIBUSB=$(usex libusb) )
 
+       use !system-ffmpeg && mycmakeargs+=( -DFFMPEG_URL="${DISTDIR}/ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}.tar.gz" )
+
        cmake-utils_src_configure
 }
 
index b6237a3dd8fd8c38ca611c5c8d27eb367154358e..89e4d8a7d650c41a2b6a074f00880bb8a8163775 100644 (file)
@@ -21,6 +21,7 @@
                <flag name="dvd">Enable optical (CD/DVD drive) support</flag>
                <flag name="rtmp">Enable Real Time Messaging Protocol using librtmp</flag>
                <flag name="sftp">Support browsing files over SFTP</flag>
+               <flag name="system-ffmpeg">Use system ffmpeg instead of the bundled one</flag>
                <flag name="texturepacker">Support packing skin textures</flag>
                <flag name="libusb">Use <pkg>virtual/libusb</pkg> for usb device hotplug support. This flag should only be enabled if you're running a non-Linux kernel or you don't want to use <pkg>sys-fs/udev</pkg>.</flag>
                <flag name="udev">Use <pkg>sys-fs/udev</pkg> rules to handle devices' permissions and hotplug support. Unless you know what you're doing do not disable this flag on Linux kernels. This is provided as an option for completeness.</flag>
index e599bcceb47bc524cb1866485cde113d6257da7d..0c7fcd712be12e38f5f27b2f0d2778c9174fbf4f 100644 (file)
@@ -1,6 +1,11 @@
 # Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
+# David Seifert <soap@gentoo.org> (07 Mar 2017)
+# Only ever use system ffmpeg, allow kodi bundled ffmpeg
+# only for debug pruposes.
+media-tv/kodi system-ffmpeg
+
 # Sam Jorna <wraeth@gentoo.org> (15 Dec 2016)
 # Known to build unbootable EFI binaries on some systems when built with
 # UDK. Forcing use of gnu-efi until it's more stable.