commit:     adf039430d7b86abb11944fae8510630b86f07ba
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Sun Aug 18 08:13:25 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Aug 25 16:08:23 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adf03943

media-tv/kodi: update live

* Update dependencies for new unreleased kodi major version.

See-Also: cda5ce3c9ba239a0ec7a2bc476b12483fa58f309
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/38235
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-tv/kodi/kodi-21.9999.ebuild | 60 ++++++++++++++++++++++++++-------
 media-tv/kodi/kodi-9999.ebuild    | 71 +++++++++++++++++++++++++++++----------
 2 files changed, 101 insertions(+), 30 deletions(-)

diff --git a/media-tv/kodi/kodi-21.9999.ebuild 
b/media-tv/kodi/kodi-21.9999.ebuild
index 7ca90c8d20dd..3e9e0d60425b 100644
--- a/media-tv/kodi/kodi-21.9999.ebuild
+++ b/media-tv/kodi/kodi-21.9999.ebuild
@@ -19,16 +19,16 @@ GROOVY_VERSION="4.0.16"
 APACHE_COMMON_LANG_VERSION="3.14.0"
 APACHE_COMMON_TEXT_VERSION="1.11.0"
 
-# Doesn't build with jdk-21
-_JAVA_PKG_WANT_BUILD_VM=( {openjdk{,-jre},icedtea}{,-bin}-{8,11,17} )
+_JAVA_PKG_WANT_BUILD_VM=( {openjdk{,-jre},icedtea}{,-bin}-{8,11,17,21} )
 JAVA_PKG_WANT_BUILD_VM=${_JAVA_PKG_WANT_BUILD_VM[@]}
 # Required to be set, but not used.
-JAVA_PKG_WANT_SOURCE="17"
-JAVA_PKG_WANT_TARGET="17"
+JAVA_PKG_WANT_SOURCE="21"
+JAVA_PKG_WANT_TARGET="21"
 
 PYTHON_REQ_USE="sqlite,ssl"
 PYTHON_COMPAT=( python3_{10..12} )
 
+# See cmake/scripts/common/ArchSetup.cmake for available options
 CPU_FLAGS="cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 
cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 
cpu_flags_arm_neon"
 
 inherit autotools cmake desktop flag-o-matic java-pkg-2 libtool linux-info 
optfeature pax-utils python-single-r1 \
@@ -67,11 +67,19 @@ else
        MY_PV="${MY_PV}-${CODENAME}"
        MY_P="${PN}-${MY_PV}"
        SRC_URI+=" https://github.com/xbmc/xbmc/archive/${MY_PV}.tar.gz -> 
${MY_P}.tar.gz"
-       KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+       KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
        S=${WORKDIR}/xbmc-${MY_PV}
 fi
 
 LICENSE="GPL-2+"
+# vendored dependencies
+# apache-groovy, common-lang3 and commons-text
+LICENSE+=" Apache-2.0"
+# libdvdnav, libdvdread and libdvdcss.
+LICENSE+=" GPL-2+"
+# ffmpeg built as USE="gpl"
+LICENSE+=" !system-ffmpeg? ( GPL-2 )"
+
 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
@@ -79,7 +87,7 @@ SLOT="0"
 IUSE="airplay alsa bluetooth bluray caps cec +css dbus doc eventclients gbm 
gles lcms libusb lirc mariadb mysql nfs +optical pipewire pulseaudio samba soc 
+system-ffmpeg test udf udev upnp vaapi vdpau wayland webserver X +xslt 
zeroconf ${CPU_FLAGS}"
 REQUIRED_USE="
        ${PYTHON_REQUIRED_USE}
-       ^^ ( gbm wayland X )
+       || ( gbm wayland X )
        ?? ( mariadb mysql )
        bluray? ( udf )
        gbm? ( udev )
@@ -122,7 +130,6 @@ COMMON_TARGET_DEPEND="${PYTHON_DEPS}
        >=media-libs/libass-0.15.0:=
        media-libs/mesa[egl(+),gbm(+)?,wayland?,X?]
        >=media-libs/taglib-1.9.0
-       =media-video/ffmpeg-6*:=[encode,soc(-)?,postproc,vaapi?,vdpau?,X?]
        sci-libs/kissfft
        virtual/libiconv
        virtual/ttf-fonts
@@ -194,6 +201,15 @@ COMMON_TARGET_DEPEND="${PYTHON_DEPS}
        samba? (
                >=net-fs/samba-3.4.6[smbclient(+)]
        )
+       system-ffmpeg? (
+               
=media-video/ffmpeg-6*:=[encode,soc(-)?,postproc,vaapi?,vdpau?,X?]
+       )
+       !system-ffmpeg? (
+               app-arch/bzip2
+               app-arch/xz-utils
+               media-libs/dav1d:=
+               net-libs/gnutls:=
+       )
        udf? (
                >=dev-libs/libudfread-1.0.0
        )
@@ -253,12 +269,17 @@ BDEPEND="
        dev-build/cmake
        dev-lang/swig
        virtual/pkgconfig
-       <=virtual/jre-17:*
+       <=virtual/jre-21:*
        doc? (
                app-text/doxygen
        )
 "
 
+PATCHES=(
+       "${FILESDIR}"/kodi-21-optional-ffmpeg-libx11.patch
+       "${FILESDIR}"/kodi-21.1-silence-libdvdread-git.patch
+)
+
 # bug #544020
 CONFIG_CHECK="~IP_MULTICAST"
 ERROR_IP_MULTICAST="
@@ -318,11 +339,17 @@ src_prepare() {
 }
 
 src_configure() {
+       local core_platform=(
+               $(usev gbm)
+               $(usev wayland)
+               $(usev X x11)
+       )
+
        local mycmakeargs=(
                -Wno-dev # less noise
 
                -DAPP_RENDER_SYSTEM=$(usex gles gles gl)
-               -DCORE_PLATFORM_NAME=$(usev gbm)$(usev wayland)$(usev X x11)
+               -DCORE_PLATFORM_NAME="${core_platform[*]}"
                -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
                -DENABLE_TESTING=$(usex test)
                -DVERBOSE=ON
@@ -353,7 +380,7 @@ src_configure() {
                -DENABLE_CEC=$(usex cec)
                -DENABLE_DBUS=$(usex dbus)
                -DENABLE_DVDCSS=$(usex css)
-               -DENABLE_EVENTCLIENTS=ON # alway enable to have 'kodi-send' and 
filter extra staff in 'src_install()'
+               -DENABLE_EVENTCLIENTS=ON # alway enable to have 'kodi-send' and 
filter extra stuff in 'src_install()'
                -DENABLE_ISO9660PP=$(usex optical)
                -DENABLE_LCMS2=$(usex lcms)
                -DENABLE_LIRCCLIENT=$(usex lirc)
@@ -461,13 +488,20 @@ src_test() {
                # The difference between output[2i] and (i==freq1?1.0:0.0) is 
inf, which exceeds 1e-7, where output[2i]
                # evaluates to inf,(i==freq1?1.0:0.0) evaluates to 0, and 1e-7 
evaluates to 9.9999999999999995e-08.
                TestRFFT.SimpleSignal
-               # bug #779184
-               # https://github.com/xbmc/xbmc/issues/18594
-               $(usev x86 TestDateTime.SetFromDBTime)
                # Tries to ping localhost, naturally breaking network-sandbox
                TestNetwork.PingHost
        )
 
+       if use arm || use x86; then
+               # bug #779184
+               # https://github.com/xbmc/xbmc/issues/18594
+               CMAKE_SKIP_TESTS+=(
+                       TestDateTime.Reset
+                       TestDateTime.SetDateTime
+                       TestDateTime.SetFromDBTime
+               )
+       fi
+
        # see https://github.com/xbmc/xbmc/issues/17860#issuecomment-630120213
        local -x KODI_HOME="${BUILD_DIR}"
 

diff --git a/media-tv/kodi/kodi-9999.ebuild b/media-tv/kodi/kodi-9999.ebuild
index e4efd7f63cd8..1b42bd7ce45e 100644
--- a/media-tv/kodi/kodi-9999.ebuild
+++ b/media-tv/kodi/kodi-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-CODENAME=""
+CODENAME="Piers"
 
 # libdvd{css,read,nav} are not unbundlable without patching the buildsystem.
 
@@ -19,16 +19,16 @@ GROOVY_VERSION="4.0.16"
 APACHE_COMMON_LANG_VERSION="3.14.0"
 APACHE_COMMON_TEXT_VERSION="1.11.0"
 
-# Doesn't build with jdk-21
-_JAVA_PKG_WANT_BUILD_VM=( {openjdk{,-jre},icedtea}{,-bin}-{8,11,17} )
+_JAVA_PKG_WANT_BUILD_VM=( {openjdk{,-jre},icedtea}{,-bin}-{8,11,17,21} )
 JAVA_PKG_WANT_BUILD_VM=${_JAVA_PKG_WANT_BUILD_VM[@]}
 # Required to be set, but not used.
-JAVA_PKG_WANT_SOURCE="17"
-JAVA_PKG_WANT_TARGET="17"
+JAVA_PKG_WANT_SOURCE="21"
+JAVA_PKG_WANT_TARGET="21"
 
 PYTHON_REQ_USE="sqlite,ssl"
 PYTHON_COMPAT=( python3_{10..12} )
 
+# See cmake/scripts/common/ArchSetup.cmake for available options
 CPU_FLAGS="cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 
cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 
cpu_flags_arm_neon"
 
 inherit autotools cmake desktop flag-o-matic java-pkg-2 libtool linux-info 
optfeature pax-utils python-single-r1 \
@@ -67,11 +67,19 @@ else
        MY_PV="${MY_PV}-${CODENAME}"
        MY_P="${PN}-${MY_PV}"
        SRC_URI+=" https://github.com/xbmc/xbmc/archive/${MY_PV}.tar.gz -> 
${MY_P}.tar.gz"
-       KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+       KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
        S=${WORKDIR}/xbmc-${MY_PV}
 fi
 
 LICENSE="GPL-2+"
+# vendored dependencies
+# apache-groovy, common-lang3 and commons-text
+LICENSE+=" Apache-2.0"
+# libdvdnav, libdvdread and libdvdcss.
+LICENSE+=" GPL-2+"
+# ffmpeg built as USE="gpl"
+LICENSE+=" !system-ffmpeg? ( GPL-2 )"
+
 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
@@ -79,7 +87,7 @@ SLOT="0"
 IUSE="airplay alsa bluetooth bluray caps cec +css dbus doc eventclients gbm 
gles lcms libusb lirc mariadb mysql nfs +optical pipewire pulseaudio samba soc 
+system-ffmpeg test udf udev upnp vaapi vdpau wayland webserver X +xslt 
zeroconf ${CPU_FLAGS}"
 REQUIRED_USE="
        ${PYTHON_REQUIRED_USE}
-       ^^ ( gbm wayland X )
+       || ( gbm wayland X )
        ?? ( mariadb mysql )
        bluray? ( udf )
        gbm? ( udev )
@@ -110,19 +118,19 @@ COMMON_TARGET_DEPEND="${PYTHON_DEPS}
        >=dev-libs/libcdio-2.1.0:=[cxx]
        >=dev-libs/libfmt-6.1.2:=
        dev-libs/libfstrcmp
-       dev-libs/libpcre[cxx]
+       dev-libs/libpcre2:=
        >=dev-libs/openssl-1.1.1k:0=
        >=dev-libs/spdlog-1.5.0:=
        dev-libs/tinyxml[stl]
        dev-libs/tinyxml2:=
        media-fonts/roboto
+       media-gfx/exiv2:=
        media-libs/libglvnd[X?]
        >=media-libs/freetype-2.10.1
        media-libs/harfbuzz:=
        >=media-libs/libass-0.15.0:=
        media-libs/mesa[egl(+),gbm(+)?,wayland?,X?]
        >=media-libs/taglib-1.9.0
-       =media-video/ffmpeg-6*:=[encode,soc(-)?,postproc,vaapi?,vdpau?,X?]
        virtual/libiconv
        virtual/ttf-fonts
        x11-libs/libdrm
@@ -193,6 +201,15 @@ COMMON_TARGET_DEPEND="${PYTHON_DEPS}
        samba? (
                >=net-fs/samba-3.4.6[smbclient(+)]
        )
+       system-ffmpeg? (
+               
=media-video/ffmpeg-6*:=[encode,soc(-)?,postproc,vaapi?,vdpau?,X?]
+       )
+       !system-ffmpeg? (
+               app-arch/bzip2
+               app-arch/xz-utils
+               media-libs/dav1d:=
+               net-libs/gnutls:=
+       )
        udf? (
                >=dev-libs/libudfread-1.0.0
        )
@@ -252,12 +269,17 @@ BDEPEND="
        dev-build/cmake
        dev-lang/swig
        virtual/pkgconfig
-       <=virtual/jre-17:*
+       <=virtual/jre-21:*
        doc? (
                app-text/doxygen
        )
 "
 
+PATCHES=(
+       "${FILESDIR}"/kodi-21-optional-ffmpeg-libx11.patch
+       "${FILESDIR}"/kodi-21.1-silence-libdvdread-git.patch
+)
+
 # bug #544020
 CONFIG_CHECK="~IP_MULTICAST"
 ERROR_IP_MULTICAST="
@@ -310,11 +332,17 @@ src_prepare() {
 }
 
 src_configure() {
+       local core_platform=(
+               $(usev gbm)
+               $(usev wayland)
+               $(usev X x11)
+       )
+
        local mycmakeargs=(
                -Wno-dev # less noise
 
                -DAPP_RENDER_SYSTEM=$(usex gles gles gl)
-               -DCORE_PLATFORM_NAME=$(usev gbm)$(usev wayland)$(usev X x11)
+               -DCORE_PLATFORM_NAME="${core_platform[*]}"
                -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
                -DENABLE_TESTING=$(usex test)
                -DVERBOSE=ON
@@ -345,7 +373,7 @@ src_configure() {
                -DENABLE_CEC=$(usex cec)
                -DENABLE_DBUS=$(usex dbus)
                -DENABLE_DVDCSS=$(usex css)
-               -DENABLE_EVENTCLIENTS=ON # alway enable to have 'kodi-send' and 
filter extra staff in 'src_install()'
+               -DENABLE_EVENTCLIENTS=ON # alway enable to have 'kodi-send' and 
filter extra stuff in 'src_install()'
                -DENABLE_ISO9660PP=$(usex optical)
                -DENABLE_LCMS2=$(usex lcms)
                -DENABLE_LIRCCLIENT=$(usex lirc)
@@ -372,15 +400,17 @@ src_configure() {
                -DWITH_FFMPEG=$(usex system-ffmpeg)
 
                #To bundle or not
-               -DENABLE_INTERNAL_CROSSGUID=OFF
+               -DENABLE_INTERNAL_CEC=OFF
                -DENABLE_INTERNAL_CURL=OFF
+               -DENABLE_INTERNAL_CROSSGUID=OFF
                -DENABLE_INTERNAL_DAV1D=OFF
+               -DENABLE_INTERNAL_EXIV2=OFF
                -DENABLE_INTERNAL_FFMPEG="$(usex !system-ffmpeg)"
                -DENABLE_INTERNAL_FLATBUFFERS=OFF
                -DENABLE_INTERNAL_FMT=OFF
                -DENABLE_INTERNAL_FSTRCMP=OFF
                -DENABLE_INTERNAL_GTEST=OFF
-               -DENABLE_INTERNAL_PCRE=OFF
+               -DENABLE_INTERNAL_PCRE2=OFF
                -DENABLE_INTERNAL_RapidJSON=OFF
                -DENABLE_INTERNAL_SPDLOG=OFF
                -DENABLE_INTERNAL_TAGLIB=OFF
@@ -449,13 +479,20 @@ src_test() {
                # Known failing, unreliable test
                # bug #743938
                TestCPUInfo.GetCPUFrequency
-               # bug #779184
-               # https://github.com/xbmc/xbmc/issues/18594
-               $(usev x86 TestDateTime.SetFromDBTime)
                # Tries to ping localhost, naturally breaking network-sandbox
                TestNetwork.PingHost
        )
 
+       if use arm || use x86; then
+               # bug #779184
+               # https://github.com/xbmc/xbmc/issues/18594
+               CMAKE_SKIP_TESTS+=(
+                       TestDateTime.Reset
+                       TestDateTime.SetDateTime
+                       TestDateTime.SetFromDBTime
+               )
+       fi
+
        # see https://github.com/xbmc/xbmc/issues/17860#issuecomment-630120213
        local -x KODI_HOME="${BUILD_DIR}"
 

Reply via email to